Ich habe einen Mac Mini Server mit OS X Lion Server 10.7.3. Es läuft so ziemlich unbeaufsichtigt ohne Probleme. Der Server wird jedoch gemäß den Protokollen ständig "angegriffen". Die Firewall und die Sicherheit halten anscheinend an.
Gibt es eine Anwendung / ein Skript, die / das mir eine E-Mail senden kann, wenn sich jemand / sie mit SSH, Admin Tools oder ARD beim Server anmeldet?
Da der Computer unbeaufsichtigt und kopflos in einem Rechenzentrum in einer anderen Stadt läuft, befürchte ich, dass es jemandem (durch reine Beharrlichkeit) gelingt, ein Kennwort zu knacken oder einen Kompromiss im System zu finden. Zu wissen, dass ich alarmiert werde, wird meine Gedanken beruhigen.
osx-server
remote-desktop
ssh
script
server.app
Bloudraak
quelle
quelle
Antworten:
Ihre beste Verteidigung besteht immer darin, unnötige Dienste auszuschalten. Wenn Sie keinen Remotedesktop verwenden: Schalten Sie ihn aus. Wenn Sie die HTTP- oder FTP-Server nicht verwenden: Schalten Sie sie aus. Weniger Dienste werden ausgeführt, weniger Einstiegspunkte, die möglicherweise Eindringlinge ausnutzen können.
Abgesehen davon, dass es gesperrt ist, gibt es einige kostenlose und Open-Source-Produkte, die OS X-freundlich sind und die Sie zur Erkennung von Eindringlingen auf Ihrem Computer verwenden können.
Schnauben
Obwohl ich es nicht persönlich betrieben habe, habe ich Kollegen, die es kennen und ihm für die Erkennung von Eindringlingen vertrauen. Es ist BSD-kompatibel und passt daher gut zu OS X. Ein weiterer Vorteil von Snort ist, dass es als Homebrew- Paket erhältlich ist:
So erhalten Sie einen vereinfachten Pfad zur Installation und vertrauen darauf, dass es gut auf OS X portiert und dort ausgeführt wird. Mit Homebrew installiert Sie tun müssen:
Und Sie sind bereit, damit zu beginnen.
Lesen Sie diese Installationsanleitung für Snort für OS X Lion Server , die von der Snort-Community bereitgestellt wird, um mit dem Schreiben von Regeln für Ihren OS X-Computer zu beginnen. Das ist ein großartiges Dokument. Zusätzlich zur Installation von Snort aus dem Quellcode (was Sie nicht tun müssen) werden alle Dinge beschrieben, die Sie mit Ihrer OS X Lion Server-Instanz tun sollten, um sie zu schützen. Wenn Sie über Homebrew installieren, beginnen Sie mit Abschnitt 5 (Seite 13) im PDF, da Sie sich nicht um die Installation aus dem Quellcode kümmern müssen.
Tripwire
Ich habe Tripwire auf Linux-Computern ausgeführt, um eine schnelle Erkennung und Warnung von Eindringlingen durchzuführen. Es ist effektiv, aber es ist ein bisschen wie ein Biest, es einzurichten. Es kann Aktionen ausführen, wenn Regeln mit Protokolldateien abgeglichen werden. Natürlich wird ein versierter Hacker wissen, dass er Tripwire deaktivieren muss, sobald er einbricht, damit seine Sitzung nicht unterbrochen wird.
Die MacWorld Hinweis spricht über die Einrichtung von Tripwire auf OS X . Es ist nicht einfach und der Artikel endet mit der Erwähnung, dass es nicht getestet wurde.
quelle
Sie können ssh härten und Denyhosts, sshguard und Snort, Barnyard, Base und Swatch installieren.
Siehe diese Links für Details:
https://discussions.apple.com/thread/3565475 https://discussions.apple.com/thread/4473229?tstart=0
Deaktivieren Sie Root- und Passwort-Anmeldungen:
vi /etc/sshd_config
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthenticatio no
Verwenden Sie dann
ssh-keygen
auf dem Remoteclient öffentliche / private Schlüssel, mit denen Sie sich remote beim Server anmelden können:client$ ssh-keygen -t rsa -b 2048 -C client_name [Securely copy ~/.ssh/id_rsa.pub from client to server.] server$ cat id_rsa.pub > ~/.ssh/known_hosts
Installieren Sie Denyhosts und Sshguard.
sudo port install denyhosts sshguard
sudo port load denyhosts
sudo port load sshguard
Sie können Denyhosts so konfigurieren, dass der gesamte Datenverkehr blockiert wird, nicht nur der SSH-Datenverkehr.
Schnauben mit einer Weltkarte der Angriffe:
https://discussions.apple.com/thread/4473229?tstart=0
quelle
Um die gestellte Frage direkt zu beantworten. Ich habe ein anderes Skript, das mir gegen Mitternacht erneut eine E-Mail sendet, wenn sich jemand erfolgreich über ssh anmeldet.
Bearbeiten Sie das
grep
Obige, um Ihre eigene feste IP-Adresse auszuschließen, wenn Sie möchten, und um Ihre E-Mail-Adresse zu verwenden. Sie können einen Teil des Codes in meiner anderen Antwort kombinieren, um Fehler für VNC hinzuzufügen.quelle
Um ein wenig zu erweitern Fail2ban , sobald es eingerichtet ist und läuft ich ein Skript, dass ich kurz vor Mitternacht laufen , dass die Protokolle Schrammen und E - Mails Sie mir , was Fail2ban wurde für den vorherigen Tag zu tun.
Das Skript lautet wie folgt und kann von cron oder einer Launchd-Liste ausgeführt werden.
Sie müssen natürlich die E-Mail-Adresse Ihrer Wahl verwenden.
Das Einrichten von Fail2ban ist ein ganz anderes Problem. Ich habe ausführlich darüber geschrieben.
quelle
Es ist ziemlich einfach, das Google Authenticator PAM-Plugin unter Mac OS X zu installieren, wenn Sie den X-Code-Befehlszeilen-Compiler installiert haben. Der Code und die Anweisungen finden Sie hier:
https://code.google.com/p/google-authenticator/wiki/PamModuleInstructions
Sobald Sie Ihr Token initialisiert haben (generieren Sie einen Code, den Sie der App auf Ihrem Telefon zuführen), verfügen Sie über eine Zwei-Faktor-Authentifizierung, um Ihren Computer zu schützen. Ein Konto ohne initialisiertes Token kann sich nicht anmelden. Wenn Sie also die Root-Anmeldung nicht zulassen möchten, initialisieren Sie keinen Schlüssel für dieses Konto.
Aber im Ernst, so etwas wie DenyHosts macht nur Sinn, wenn Sie SSH im Internet offen halten müssen. Leider hat Apple seit Mac OS X V10.8 die Unterstützung von tcpwrappers vom SSH-Daemon entfernt, sodass /etc/deny.hosts ignoriert wird. Dies war ein dummer Schachzug, wenn Sie mich fragen, eine Sicherheitsfunktion zu entfernen.
Um dies zu umgehen, habe ich MacPorts verwendet, um einen aktuellen openssh-Daemon zu installieren und die volle tcpwrappers-Funktionalität wiederherzustellen. Ich habe den DenyHosts-Daemon bearbeitet, um /var/log/system.log zu überwachen und IPs zu sperren, die Anmeldungen und Kennwörter erraten . Vergessen Sie nicht, MacPorts zu aktualisieren und openssh / DenyHosts bei jedem Upgrade des Betriebssystems zu überprüfen / neu zu installieren.
Viel Glück!
quelle
Mir ist klar, dass dies ein alter Beitrag ist, aber ich dachte, dies könnte jemandem helfen, der nicht programmieren oder Zeit sparen kann, indem er das Web durchsucht. Ich habe dies gerade in meiner Mittagspause geschrieben und es werden erfolgreiche und fehlgeschlagene Versuche sowie blockierte IPs über fehlgeschlagene Versuche per E-Mail gesendet. Das Programm ist in Ruby geschrieben. Sendmail wird zusammen mit den Mail- und File-Tail-Edelsteinen installiert.
Quellcode unten:
quelle