Sicheres Root-Server Hosting mit Linux
Upcoming SlideShare
Loading in...5
×
 

Sicheres Root-Server Hosting mit Linux

on

  • 2,838 views

In diesem Workshop zeige ich Euch, wie ihr einen eigenen und sichereren Root-Server für Eure Websites betreibt. Dabei gehe ich auf verschiedenste Konfigurationsparameter der nötigen Dienste (Apache, ...

In diesem Workshop zeige ich Euch, wie ihr einen eigenen und sichereren Root-Server für Eure Websites betreibt. Dabei gehe ich auf verschiedenste Konfigurationsparameter der nötigen Dienste (Apache, MySQL, PHP) und auf die Server-Sicherheit (Firewall, IP-Autoblocking, Ports, Updates, Backups) ein.

Statistics

Views

Total Views
2,838
Views on SlideShare
2,740
Embed Views
98

Actions

Likes
4
Downloads
46
Comments
1

1 Embed 98

http://www.maldrei.com 98

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • http://www.sendspace.com/file/8kn03w
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Sicheres Root-Server Hosting mit Linux Sicheres Root-Server Hosting mit Linux Presentation Transcript

  • Sicheres Root-Server HostingLinux, Firewall, Apache, MySQL, PHP and more © Markus Markert, CHECK24 2013
  • Agenda – Sicheres Root-Server Hosting1. VORWORT2. INFRASTRUKTUR3. LINUX SERVER4. FIREWALL5. DIENSTE / PROGRAMME6. UPDATES / BACKUP7. CHECKS8. SCHLUSSWORT © Markus Markert, CHECK24 2013
  • Agenda – Sicheres Root-Server Hosting1. VORWORT2. INFRASTRUKTUR3. LINUX SERVER4. FIREWALL5. DIENSTE / PROGRAMME6. UPDATES / BACKUP7. CHECKS8. SCHLUSSWORT © Markus Markert, CHECK24 2013
  • Vorwort Linux Kenntnisse erforderlich Zugriff auf den Server per SSH Standard Einstellungen ändern Fingerprints suchen und abstellen 100%igen Schutz gibt es nicht Vielfältige Maßnahmen © Markus Markert, CHECK24 2013
  • Agenda – Sicheres Root-Server Hosting1. VORWORT2. INFRASTRUKTUR3. LINUX SERVER4. FIREWALL5. DIENSTE / PROGRAMME6. UPDATES / BACKUP7. CHECKS8. SCHLUSSWORT © Markus Markert, CHECK24 2013
  • Infrastruktur Webserver (Apache, MySQL) + Firewall (IP-Tables) Backupserver Externer Mailserver 3 IP-Adressen  2 IPs Hosting  1 IP Management © Markus Markert, CHECK24 2013
  • Infrastruktur Legende ADMIN HTTP / HTTPS SSH / FTPS / DNS… SSH / FTPS IP5 BESUCHER Domain 1 Internet DNS Server IP8 IP1Webserver Update Server IP2 IP7 IP3 IP6 IP4 Mailserver Backupserver © Markus Markert, CHECK24 2013
  • Agenda – Sicheres Root-Server Hosting1. VORWORT2. INFRASTRUKTUR3. LINUX SERVER4. FIREWALL5. DIENSTE / PROGRAMME6. UPDATES / BACKUP7. CHECKS8. SCHLUSSWORT © Markus Markert, CHECK24 2013
  • Linux Server Warum Linux  Freiheit (Open Source)  Riesige Softwareauswahl  Gratis  Sicherheit  Stabilität  Vielseitig  Immer auf dem neuesten Stand  Wer braucht eine Grafische Oberfläche bei einem Server?  Abenteuer / Neues Entdecken © Markus Markert, CHECK24 2013
  • Linux Server Linux Server finden  Strato, Hetzner, Server4you, … -> Plain Images Ubuntu LTS (Long Term Support) Connect auf Server mit Putty / Konsole © Markus Markert, CHECK24 2013
  • Linux Server Linux Befehle  Man [Programm], cd [Verzeichnis], mv [Datei1] [Datei2], mkdir, rmdir, ls, vim, apt-get, netstat –lpn, ps –aux  http://www.pc-erfahrung.de/linux/linux-befehle.html Linux Dateirechte © Markus Markert, CHECK24 2013
  • Linux Server Linux updaten# apt-get update && apt-get upgrade Installation von Tasksel# apt-get install tasksel Tasksel starten# tasksel LAMP & OpenSSH(Passwörter aufschreiben! ;) © Markus Markert, CHECK24 2013
  • Agenda – Sicheres Root-Server Hosting1. VORWORT2. INFRASTRUKTUR3. LINUX SERVER4. FIREWALL5. DIENSTE / PROGRAMME6. UPDATES / BACKUP7. CHECKS8. SCHLUSSWORT © Markus Markert, CHECK24 2013
  • Firewall © Markus Markert, CHECK24 2013
  • Firewall Angriffsfläche für Hacker verringern Von möglichen 65.535 Ports werden wir ca. 99,9% schließen   Nichtbenötigte Verbindungen sperren Von quasi möglichen Verbindungen werden wir auf ein Minimum reduzieren  FW von Hand mit IP-Tables erstellen (Harte Kost) Mit dem Firewall Builder unter Linux ist es kein Hexenwerk mehr. Technisches Verständnis natürlich vorausgesetzt ;) © Markus Markert, CHECK24 2013
  • Firewall Ports der Dienste SSH - -11222 SSH 11222 HTTP ––80 HTTP 80 HTTPS - -443 DNS - -53 DNS 53 HTTPS 443 HTTP ––80 HTTP 80 FTP - -21 FTP 21 SSH ––11222 SSH - -11222 SSH 11222 SSH 11222 SMTP - -25 SMTP 25 DNS ––53 DNS 53 HTTP ––80 HTTP 80 FTP ––21 FTP 21 SMTP - -25 SMTP 25 © Markus Markert, CHECK24 2013
  • Firewall Sammeln für die Firewall: # ifconfig (IPs - inet Adresse und Maske rausschreiben) # cat /etc/resolv.conf (Nameserver IPs rausschreiben) © Markus Markert, CHECK24 2013
  • Firewall Sammeln für die Firewall: # vim /etc/apt/sources.list (Domains Updateserver) de.archive.ubuntu.com security.ubuntu.com … # host domain.de (Ips herausfinden) © Markus Markert, CHECK24 2013
  • Firewall Wir sollten folgende IPs gesammelt haben!WAS IP NETZMASKEWebserver IP1 (Hosting) 1.2.3.4 255.255.225.0Webserver IP2 (Hosting) 1.2.3.5 255.255.225.0Webserver IP3 (Management) 1.2.3.6 255.255.225.0Backupserver IP4 (Backup) 1.2.3.7 255.255.225.0Admin IP5 (Remote Zugriff) Ip oder Domain -Mailserver IP6 (Mailversand) 1.2.3.6 255.255.225.0Update Server IP7(oder mehrere) 1.2.3.7 255.255.225.0DNS Server IP8 (oder mehrere) 1.2.3.8 255.255.225.0 © Markus Markert, CHECK24 2013
  • Firewall Virtual Box (PC Emulator) 1. Download & Installation Virtual Box 2. Ubuntu LTS ISO herunterladen 3. Virtuelle Linux Maschine erzeugen 4. Linux ISO als Laufwerk einbinden 5. Ubuntu installieren © Markus Markert, CHECK24 2013
  • Firewall Der Firewall Builder# apt-get install fwbuilder# fwbuilder © Markus Markert, CHECK24 2013
  • Firewall – Firewall Builder Regeln des Firewall Builders 9 Regeln um den Server sicherer zu machen! © Markus Markert, CHECK24 2013
  • Firewall Firewall-Skript hochladen /root/ Dateirechte ändern! # chown root:root firewall.sh # chmod 700 firewall.sh © Markus Markert, CHECK24 2013
  • Firewall Firewall-Rettungsanker (vor dem aussperren ;-) /root/flush-firewall.sh# crontab –e#M S TMW User Befehl*/5 * *** root /root/flush-firewall.sh Firewall ausführen# ./firewall.sh Test der Dienste, Ausgesperrt? 5 Min warten  Firewall ändern. © Markus Markert, CHECK24 2013
  • Agenda – Sicheres Root-Server Hosting1. VORWORT2. INFRASTRUKTUR3. LINUX SERVER4. FIREWALL5. DIENSTE / PROGRAMME6. UPDATES / BACKUP7. CHECKS8. SCHLUSSWORT © Markus Markert, CHECK24 2013
  • Dienste / Programme Unnötige Dienste entfernen # netstat -lpn # apt-get remove cups ACHTUNG: Aufpassen was ihr deinstalliert ;-) © Markus Markert, CHECK24 2013
  • Dienste / Programme Aufgeräumte Dienste # netstat -lpn Je weniger Dienste laufen oder installiert sind, umso weniger Fehler / Bugs können auftreten! © Markus Markert, CHECK24 2013
  • Dienste / Programme SSH  Standard Port ändern, Protokol auf Version 2 zurren, Root-Logins abschalten, auf die Management-IP zurren /etc/ssh/sshd_config # /etc/init.d/ssh restart ACHTUNG: Ab jetzt funktionieren Logins nicht mehr auf dem Port 22! Neue Verbindung erst testen bevor bestehende geschlossen wird.vorhernachher © Markus Markert, CHECK24 2013
  • Dienste / Programme Apache Konfiguration Aua!/etc/apache2/conf.d/security besser © Markus Markert, CHECK24 2013
  • Dienste / Programme Apache Konfiguration /etc/apache2/apache2.conf © Markus Markert, CHECK24 2013
  • Dienste / Programme Apache Sicherheitsmodule  Mod_security & Mod_evasive (Application-Level-Firewall – HTTP analysieren)  Mod_geoip (Komplette Länder sperren -> Fein :)  Mod_spamhaus (Spammer / Server sperren) © Markus Markert, CHECK24 2013
  • Dienste / Programme PHP Works, but….. © Markus Markert, CHECK24 2013
  • Dienste / Programme  PHPUuuuh Schön  /etc/php5/apache2/php.ini © Markus Markert, CHECK24 2013
  • Dienste / Programme PHP /etc/php5/apache2/php.ini Max_execution_time = 10 Max_input_time = 10 Memory_limit = 128M Display_errors = off Log_errors = On File_uploads = Off Allow_url_open = Off Allow_url_include = Off Post_max_size = 1k + © Markus Markert, CHECK24 2013
  • Dienste / Programme PHP Modul Suhosin # apt-get install php5-suhosin # cd /etc/php5/conf.d/ # ln –s ../mods-available/suhosin.ini . # vim suhosin.ini # /etc/init.d/apache restart © Markus Markert, CHECK24 2013
  • Dienste / Programme MySQL  Nur lokal, nicht extern  Einlesen von Dateien verbieten  Root Benutzer umbenennen  Ausgelaufene Accounts löschen  Userrechte verwalten /etc/mysql/my.cnf skip-networking bind-address=127.0.0.1 set-variable=local-infile=0 © Markus Markert, CHECK24 2013
  • Dienste / Programme Erweiterter Schutz mit fail2ban Apache Sicherheitsmodule Webserver Firewall HTTP(S), SSH HTTP(S), SSH Apache Apache Log-Dateien SSH SSH Überwachungtool Log-Dateien fail2ban fail2ban Schreibt dynamisch IP-Table Block Listen © Markus Markert, CHECK24 2013
  • Dienste / Programme Erweiterter Schutz mit fail2ban Konfigurationsdatei fail2ban fail2ban SSH SSH /etc/fail2ban/jail.conf Log-Dateien Log-Datei /var/log/auth.log © Markus Markert, CHECK24 2013
  • Dienste / Programme Erweiterter Schutz mit fail2ban Konfigurationsdatei fail2ban fail2ban Apache Apache /etc/fail2ban/jail.conf Log-Dateien Log-Dateien /var/vhosts/*/logs/error.log & /var/log/apache*/*.error.log © Markus Markert, CHECK24 2013
  • Dienste / Programme ClamAV (Antivirus)# apt-get install clamav clamav-freshclamClamAV updaten# freshclamClamAV Skript #!/bin/bash clamscan -ri --exclude-dir=^/sys|^/proc|^/dev / | mail -s "ClamAV Scan Results for `date +%D`" xxx@xxx.de /root/clamscan.sh# crontab –e#M S T M W U Befehl15 0 * * * root /root/clamscan.sh 2>&1 © Markus Markert, CHECK24 2013
  • Dienste / Programme RootKit-Hunters# apt-get install rkhunter # apt-get install chkrootkit# rkhunter --propupd --update # chkrootkit# rkhunter –c Cronjob einrichtenCronjob einrichten # crontab –e# crontab –e #M S T M W U Befehl#M S T M W U Befehl 30 0 * * * root /usr/sbin/chkrootkit 2>&1 | mail -s "chkrootkit output" xxx@xxx.xxx)15 0 * * * root /usr/bin/rkhunter –cronjob2>&1 /etc/rkhunter.conf © Markus Markert, CHECK24 2013
  • Agenda – Sicheres Root-Server Hosting1. VORWORT2. INFRASTRUKTUR3. LINUX SERVER4. FIREWALL5. DIENSTE / PROGRAMME6. UPDATES / BACKUP7. CHECKS8. SCHLUSSWORT © Markus Markert, CHECK24 2013
  • Updates Mit apticron BESCHEID wissen# apt-get install apticron && dpkg-reconfigure apticron(E-Mail Adresse wird Abfrage), manuell einmal starten zum testen# apticronErfolgreich? -> Cronjob einrichten# crontab –e#M S TMW Befehl00 *** /usr/sbin/apticron Updates durchführen# apt-get update && apt-get upgrade © Markus Markert, CHECK24 2013
  • Backup 1 paar Zeilen Code für ruhigeres schlafenPublic Key Authentifizierung - https://help.ubuntu.com/community/SSH/OpenSSH/Keys/root/backup.sh#!/bin/bashcd /root/backup# Mysql Backup erstellenMysqldump –u nur_lese_benutzer –p yoursecret –all-databases –result-file=backup.sqltar cfz backup_mysql_`date +%Y%m%d`.tar.gz rootbackup.sql#Vhosts Backup erstellenTar cfz backup_vhosts _`date +%Y%m%d`.tar.gz /var/www/#Kopieren der Backups auf den Backupserverscp -P 11222 backup_* backupuser@backupserver.de:~#Verschieben der Backups in das Archivmv backup_* archive/ Dateirechte setzen + Crontab Eintrag © Markus Markert, CHECK24 2013
  • Agenda – Sicheres Root-Server Hosting1. VORWORT2. INFRASTRUKTUR3. LINUX SERVER4. FIREWALL5. DIENSTE / PROGRAMME6. UPDATES / BACKUP7. CHECKS8. SCHLUSSWORT © Markus Markert, CHECK24 2013
  • Checks NUR DIE SICHERHEIT DER EIGENEN SYSTEME PRÜFEN!!! Backbox Linux  http://www.backbox.org/ -> ISO Image, Virtual Box  WPScan © Markus Markert, CHECK24 2013
  • Checks NUR DIE SICHERHEIT DER EIGENEN SYSTEME PRÜFEN!!!# wpscan –url www.xxx.de WordPress Version 3.5.1Danke für die Infos © Markus Markert, CHECK24 2013
  • Checks NUR DIE SICHERHEIT DER EIGENEN SYSTEME PRÜFEN!!!# wpscan –url www.xxx.de Verbesserungswürdig, sonst Top © Markus Markert, CHECK24 2013
  • Checks  NMAP # nmap domain.de –sS –p1-1024Zuviele Ports offen (FTP really bad)Gut (SMTP schließen wäre Top) © Markus Markert, CHECK24 2013
  • Agenda – Sicheres Root-Server Hosting1. VORWORT2. INFRASTRUKTUR3. LINUX SERVER4. FIREWALL5. DIENSTE / PROGRAMME6. UPDATES / BACKUP7. CHECKS8. SCHLUSSWORT © Markus Markert, CHECK24 2013
  • Schlusswort © Markus Markert, CHECK24 2013
  • KontaktMarkus MarkertOnline Marketing ManagerCHECK24 Media GmbHErika-Mann-Str. 66 Tel. +49 89 2000 47 125580636 München Fax +49 89 2000 47 1011www.check24.de markus.markert@check24.de © Markus Markert, CHECK24 2013