E-Mail bei SSH-Login

Ein Skript benachrichtet per E-Mail sobald ein (vollständiger) Login über SSH erfolgt ist. Der Benutzer bekommt davon nichts mit. Leider erfolgt keine Benachrichtung wenn ein Programm wie WinSCP verwendet wird.

"finger" liefert dabei zusätzliche Informationen über den Benutzer, wie die IP-Adresse des SSH-Logins.

sudo apt-get install finger
sudo nano /opt/shell-login.sh

Ich bevorzuge sendmail und habe mir das folgende Skript geschrieben.

#!/bin/bash
MAILTO="root"
MAILFROM="ssh"

INFO=$(finger $USER)

sendmail $MAILTO <<EOF
From:$MAILFROM
To:$MAILTO
Subject:SSH Login on $(hostname) by $USER

$(date +%Y-%m-%d) at $(date +%H:%M)

SSH Login on $(hostname) by $USER

$INFO

EOF

Zuerst wird die Berechtigung des Skripts geändert und schließlich bei jedem Login ausgeführt:

sudo chmod 755 /opt/shell-login.sh
sudo nano /etc/profile

Dort am Ende die folgende Zeile einfügen:

/opt/shell-login.sh

Quellen

Thomas Krenn