Was sind die grundlegenden Schritte zum Sichern einer VPS-Installation, auf der ich Webmin installieren möchte, um meine Blogs und persönlichen Projekte zu hosten?
Das Sichern eines Servers ist mehr als nur eine einmalige Aufgabe.
Zu den anfänglichen einmaligen Aufgaben gehören:
Hardening SSHd (es gibt eine Reihe von Tipps und Tutorials, dies war das erste gut aussehende, das aus einer Suche hervorgegangen ist.
Stellen Sie sicher, dass nicht benötigte Dienste deaktiviert (oder besser deinstalliert) sind.
Stellen Sie sicher, dass Dienste, die nicht öffentlich verfügbar sein müssen, nicht verfügbar sind. Konfigurieren Sie Ihren Datenbankserver beispielsweise so, dass er nur lokale Schnittstellen überwacht und / oder fügen Sie Firewall-Regeln hinzu, um externe Verbindungsversuche zu blockieren.
Stellen Sie sicher, dass alle Benutzer, die auf Ihren Webserver-Prozessen (und anderen Diensten) ausgeführt werden, keinen Lesezugriff auf Dateien / Verzeichnisse haben, die für sie nicht relevant sind, und keine Schreibzugriffsrechte für andere Benutzer haben, es sei denn, sie benötigen Schreibzugriff auf ausgewählte Dateien / Verzeichnisse (um beispielsweise hochgeladene Bilder zu akzeptieren).
Richten Sie eine gute automatisierte Sicherungsroutine ein, um Online-Sicherungen (vorzugsweise auf einem anderen Server oder zu Hause) zu führen, damit Ihre Inhalte an eine andere Stelle kopiert werden und Sie sie wiederherstellen können, falls der Server im schlimmsten Fall ausfällt (vollständiger nicht behebbarer Absturz oder gehackt).
Erfahren Sie mehr über alle Tools, die Sie auf Ihrem Server installiert haben (lesen Sie die Dokumentation, installieren Sie sie möglicherweise in einer Testumgebung, sagen Sie eine lokale VM unter virtualbox, probieren Sie verschiedene Konfigurationen aus und lösen Sie sie), damit Sie die Chance haben, in der Lage zu sein Beheben von Problemen, wenn sie auftreten (oder diagnostizieren Sie solche Probleme zumindest ordnungsgemäß, damit Sie einer anderen Person bei der Behebung des Problems helfen können). Sie werden sich dafür bedanken, dass Sie sich irgendwann in der Zukunft damit beschäftigt haben!
Laufende Aufgaben umfassen:
Stellen Sie sicher, dass Sicherheitsupdates für Ihr Basisbetriebssystem rechtzeitig angewendet werden. Mit Tools wie apticron können Sie über Updates informiert werden, die angewendet werden müssen. Ich würde Setups vermeiden, die automatisch Updates anwenden - Sie möchten überprüfen, was sich ändern wird, bevor Sie es ausführen (im Fall von debian / ubuntu) aptitude safe-upgrade, damit Sie wissen, was mit Ihrem Server geschehen wird.
Stellen Sie sicher, dass Aktualisierungen von manuell installierten Bibliotheken / Apps / Skripten (dh nicht von den Standard-Repositorys Ihrer Distributionen mithilfe der integrierten Paketverwaltung) ebenfalls rechtzeitig installiert werden. Solche Bibliotheken / Apps / Skripte haben möglicherweise ihre eigenen Mailinglisten für die Ankündigung von Updates, oder Sie müssen ihre Websites regelmäßig überwachen, um sich auf dem Laufenden zu halten.
Informieren Sie sich über Sicherheitsprobleme, die durch Konfigurationsänderungen und nicht durch Patches behoben oder behoben werden müssen, bis ein Patch-Paket erstellt, getestet und freigegeben wurde. Abonnieren Sie sicherheitsrelevante Mailinglisten der Personen, die Ihre Distribution verwalten, und behalten Sie die Technologie-Websites im Auge, auf denen möglicherweise auch solche Probleme gemeldet werden.
Verwalten einer Form von Offlinesicherung für zusätzliche Paranoia. Wenn Sie Ihren Server auf einem Heimcomputer sichern, schreiben Sie regelmäßig eine Kopie auf CD / DVD / USB-Stick.
Testen Sie Ihre Backups gelegentlich, damit Sie wissen, dass sie ordnungsgemäß funktionieren. Eine nicht getestete Sicherung ist keine gute Sicherung. Sie möchten nicht, dass Ihr Server abstirbt, und stellen dann fest, dass Ihre Daten seit einigen Monaten nicht mehr ordnungsgemäß gesichert wurden.
Alle guten Linux-Distributionen werden sofort in einem relativ sicheren Zustand installiert (zumindest nach den ersten Updates, wenn Sie die Sicherheitspatches herunterladen, die seit dem Drücken / Veröffentlichen der Installations-CD / des Installations-Images veröffentlicht wurden) Arbeit ist nicht schwierig, aber es wird mehr Zeit in Anspruch nehmen, als Sie vielleicht erwarten.
Das Tolle an einem Linux-VPS ist, dass es ziemlich sicher ist. Meine erste Empfehlung ist es, mit Ihrem Gastgeber zu sprechen und zu sehen, ob er die Sicherheit für Sie verbessert oder verbessert. Die meisten VPS mit einem Control Panel (Webmin, Cpanel usw.) werden "verwaltet" und sie werden viel für Sie tun. Vor allem, wenn Sie nicht ganz sicher sind, was Sie tun, ist dies meiner Meinung nach die beste Wahl.
Wenn Sie alleine sind, schauen Sie sich zunächst eine Firewall wie APF (Advanced Policy Firewall?) Oder CSF (ConfigServer Firewall) an. CSF bietet die Möglichkeit, Anmeldefehler zu erkennen. Wenn Sie versuchen, sich anzumelden und ein Mal zu oft fehlschlagen, wird Ihre IP-Adresse automatisch gesperrt. Ich bin mir nicht sicher, ob dies "notwendig" ist, da Linux nicht auf Ports reagiert, die ohnehin nicht auf Datenverkehr überwacht werden, aber sie bieten sicherlich ein gewisses Maß an Verstand. Und wenn Sie viele Ports für eine Vielzahl von Datenverkehr offen haben, dann möchten Sie vielleicht eine Firewall.
Wahrscheinlich wichtiger ist es, sicherzustellen, dass die von Ihnen installierten Anwendungen auf dem neuesten Stand sind. Mehr Websites werden (zum Beispiel) durch einen Wordpress-Exploit gehackt als durch einen Exploit im Serverbetriebssystem. Wenn Sie benutzerdefinierte Codierungsskripte verwenden, achten Sie auch auf die Sicherheit, da Sie nicht versehentlich durch etwas Dummes wie Ihr Kontaktformular eine offene Tür hinterlassen möchten.
Das Sichern eines Computers, einschließlich VPS, ist kein genaues Rezept, aber Sie können mit den Tutorials von zwei großen VPS-Anbietern beginnen: Linode Library und Slicehost Articles
Entfernen Sie unerwünschte Dienste ( netstat ist Ihr Freund)
Deaktivieren Sie die Dienstwerbung (das Anzeigen Ihrer Versionsnummern ist ideal für Scriptkiddies ).
Ändern Sie die administrativen (nicht öffentlichen) Portnummern in etwas Unklares (SSH auf 22 wird nur fortlaufend gescannt).
Berechnen Sie Ihre Quoten und Grenzen: cgroups , limits.conf , qos usw. - und überwachen Sie sie aktiv - Wenn ein Webentwicklercode oder ein DDoS-Angriff Ihre Website zum Erliegen bringt und Ihre Box unerreichbar macht, ist es zu spät, dies zu beheben
Einige Distributionen verfügen über SELinux / AppArmor / etc-Profile für netzwerkbasierte Apps. Verwenden Sie diese
Die ersten drei können (in gewisser Weise) über WebMin ausgeführt werden. Möglicherweise möchten Sie dies jedoch in ServerFault nachlesen .
Ich sehe, dass Sie Webmin erwähnen, also wird eine Linux-Box sein. Bitte überprüfen Sie die Dokumentation der jeweiligen Linux-Distribution, die Sie auf diesem Server installieren werden.
Nur ein paar Punkte. - Ändern Sie Ihren SSH-Port. - Deaktivieren Sie die Verzeichnisliste der Dateien. - Server Signatur, Token entfernen. - Installieren Sie eine Firewall
Es gibt noch viele andere Dinge. Ich habe nur Dinge erzählt, die mir jetzt einfielen.
Antworten:
Die Antwort von danlefree auf diese ähnliche Frage ist hier ziemlich relevant: Wie schwierig ist ein nicht verwaltetes VPS?
Das Sichern eines Servers ist mehr als nur eine einmalige Aufgabe.
Zu den anfänglichen einmaligen Aufgaben gehören:
Laufende Aufgaben umfassen:
aptitude safe-upgrade
, damit Sie wissen, was mit Ihrem Server geschehen wird.Alle guten Linux-Distributionen werden sofort in einem relativ sicheren Zustand installiert (zumindest nach den ersten Updates, wenn Sie die Sicherheitspatches herunterladen, die seit dem Drücken / Veröffentlichen der Installations-CD / des Installations-Images veröffentlicht wurden) Arbeit ist nicht schwierig, aber es wird mehr Zeit in Anspruch nehmen, als Sie vielleicht erwarten.
quelle
Das Tolle an einem Linux-VPS ist, dass es ziemlich sicher ist. Meine erste Empfehlung ist es, mit Ihrem Gastgeber zu sprechen und zu sehen, ob er die Sicherheit für Sie verbessert oder verbessert. Die meisten VPS mit einem Control Panel (Webmin, Cpanel usw.) werden "verwaltet" und sie werden viel für Sie tun. Vor allem, wenn Sie nicht ganz sicher sind, was Sie tun, ist dies meiner Meinung nach die beste Wahl.
Wenn Sie alleine sind, schauen Sie sich zunächst eine Firewall wie APF (Advanced Policy Firewall?) Oder CSF (ConfigServer Firewall) an. CSF bietet die Möglichkeit, Anmeldefehler zu erkennen. Wenn Sie versuchen, sich anzumelden und ein Mal zu oft fehlschlagen, wird Ihre IP-Adresse automatisch gesperrt. Ich bin mir nicht sicher, ob dies "notwendig" ist, da Linux nicht auf Ports reagiert, die ohnehin nicht auf Datenverkehr überwacht werden, aber sie bieten sicherlich ein gewisses Maß an Verstand. Und wenn Sie viele Ports für eine Vielzahl von Datenverkehr offen haben, dann möchten Sie vielleicht eine Firewall.
Wahrscheinlich wichtiger ist es, sicherzustellen, dass die von Ihnen installierten Anwendungen auf dem neuesten Stand sind. Mehr Websites werden (zum Beispiel) durch einen Wordpress-Exploit gehackt als durch einen Exploit im Serverbetriebssystem. Wenn Sie benutzerdefinierte Codierungsskripte verwenden, achten Sie auch auf die Sicherheit, da Sie nicht versehentlich durch etwas Dummes wie Ihr Kontaktformular eine offene Tür hinterlassen möchten.
quelle
Das Sichern eines Computers, einschließlich VPS, ist kein genaues Rezept, aber Sie können mit den Tutorials von zwei großen VPS-Anbietern beginnen: Linode Library und Slicehost Articles
quelle
Entfernen Sie unerwünschte Dienste ( netstat ist Ihr Freund)
Deaktivieren Sie die Dienstwerbung (das Anzeigen Ihrer Versionsnummern ist ideal für Scriptkiddies ).
Ändern Sie die administrativen (nicht öffentlichen) Portnummern in etwas Unklares (SSH auf 22 wird nur fortlaufend gescannt).
Berechnen Sie Ihre Quoten und Grenzen: cgroups , limits.conf , qos usw. - und überwachen Sie sie aktiv - Wenn ein Webentwicklercode oder ein DDoS-Angriff Ihre Website zum Erliegen bringt und Ihre Box unerreichbar macht, ist es zu spät, dies zu beheben
Einige Distributionen verfügen über SELinux / AppArmor / etc-Profile für netzwerkbasierte Apps. Verwenden Sie diese
Die ersten drei können (in gewisser Weise) über WebMin ausgeführt werden. Möglicherweise möchten Sie dies jedoch in ServerFault nachlesen .
quelle
Ich sehe, dass Sie Webmin erwähnen, also wird eine Linux-Box sein. Bitte überprüfen Sie die Dokumentation der jeweiligen Linux-Distribution, die Sie auf diesem Server installieren werden.
Informationen zu CentOS finden Sie unter http://wiki.centos.org/HowTos/OS_Protection
quelle
Nur ein paar Punkte. - Ändern Sie Ihren SSH-Port. - Deaktivieren Sie die Verzeichnisliste der Dateien. - Server Signatur, Token entfernen. - Installieren Sie eine Firewall
Es gibt noch viele andere Dinge. Ich habe nur Dinge erzählt, die mir jetzt einfielen.
quelle