Senden Sie eine E-Mail, wenn sich jemand anmeldet

10

Mein CentOS / RHEL-System wurde möglicherweise gehackt, ich bin mir nicht sicher. Aber ich gehe auf Nummer sicher, indem ich ein neues Stück von Grund auf neu erstelle.

Ich habe tripwire installiert, möchte aber auch per E-Mail benachrichtigt werden, wenn sich jemand anmeldet. Ich möchte nicht auf den täglichen Logwatch-Bericht warten, sondern sofort eine E-Mail, wenn sich jemand anmeldet. Am besten auch mit seiner IP-Adresse.

Vorschläge?

Ähnlich wie E-Mail-Benachrichtigung bei Protokolldateieintrag senden? aber vielleicht hat jemand eine Technik für dieses spezielle Problem.

Vielen Dank,

Larry

Hinzugefügt: http://forums11.itrc.hp.com/service/forums/questionanswer.do?admit=109447626+1249534744623+28353475&threadId=698232 hat einige Ideen

LarryK
quelle
1
Bitte nuklear aus dem Orbit. i.stack.imgur.com/cFSC5.png
Jacob

Antworten:

9

Sie sollten eine Lösung für die Protokollüberwachung wie OSSEC verwenden . Sie sucht in Ihren Protokollen nach Sicherheitsinformationen (einschließlich Login, Sudo usw.) und sendet Ihnen eine E-Mail, wenn die Warnung wichtig ist.

Es ist einfach zu konfigurieren und Sie können die Warnstufe für E-Mails erhöhen oder eine alert-by-emailWarnmeldung in die spezifische Warnmeldung aufnehmen.

Es kann auch konfigurierbare aktive Antworten ausführen, IPs blockieren und den Zugriff standardmäßig für einen bestimmten Zeitraum verweigern.

chmeee
quelle
4

Leichte Änderung der Adams-Lösung, die nicht funktioniert, wenn root an mehr als einem Terminal angemeldet ist:

login_info="$(who | head -n1 | cut -d'(' -f2 | cut -d')' -f1)"
message="$(
printf "ALERT - Root Shell Access (%s) on:\n" "$(hostname)"
date
echo
who
)"
mail -s "Alert: Root Access from ${login_info}" admin <<< "${message}"
alexh
quelle
4

Sie könnten dies in Ihre .bashrc setzen

echo 'ALERT - Root Shell Access to' $(hostname) 'on:' `date` `who` \
| mail -s "Alert: Root Access from `who | cut -d"(" -f2 | cut -d")" -f1`" YOUREMAIL
Adam
quelle
2

Sie können den entsprechenden Befehl zu / etc / profile hinzufügen oder ein Skript von / etc / profile aus aufrufen.

John Gardeniers
quelle
2

Beachten Sie jedoch, dass es für den Hacker eine triviale Aufgabe sein kann, die E-Mail-Benachrichtigungsfunktion zu deaktivieren, wenn Ihr Computer gehackt wurde - vorausgesetzt, es handelt sich nicht um ein Skript-Kind, über das wir dort sprechen.

Maximus Minimus
quelle
4
Ja, deshalb möchte ich eine E-Mail senden, sobald sich jemand anmeldet. - Der Server erhält nicht so viele Anmeldungen. Ich gehe davon aus, dass dies die Wahrscheinlichkeit verringert, dass jemand verhindern kann, dass die E-Mail über ihren ersten Einbruch verschickt wird (wenn dies über eine Login-Shell erfolgt).
LarryK
2

Ich habe ein Bash-Skript auf Github Gist veröffentlicht, das genau das tut, wonach Sie suchen. Der Systemadministrator wird jedes Mal per E-Mail benachrichtigt, wenn sich ein Benutzer von einer neuen IP-Adresse aus anmeldet. Ich verwende das Skript, um Anmeldungen auf unseren streng kontrollierten Produktionssystemen zu überprüfen. Wenn ein Login kompromittiert wird, werden wir über den ungewöhnlichen Login-Speicherort benachrichtigt und haben die Möglichkeit, sie aus dem System zu sperren, bevor sie ernsthafte Schäden verursachen.

Um das Skript zu installieren, aktualisieren Sie es einfach mit Ihrer Sysadmin-E-Mail und kopieren Sie es in /etc/profile.d/.

Elliot B.
quelle
Bitte versuchen Sie nicht, Ihre eigenen Antworten zu kopieren und einzufügen . Wenn Sie der Meinung sind, dass Fragen im Wesentlichen gleich sind und die gleiche Lösung für beide gilt, besteht die bevorzugte Methode darin, eine Frage als Duplikat der anderen zu markieren .
HBruijn
@HBruijn Ich habe diesen Ansatz in Betracht gezogen. In diesem Fall sind die beiden Fragen jedoch ähnlich, aber nicht doppelt - dennoch gilt für beide die gleiche Antwort.
Elliot B.