Linux开启SSH登录email通知

Linux服务器通常需要远程登录访问,尤其是当服务器或VPS还允许root直接登录时,应该为SSH登录成功配置一个自动的email提醒。

sendmail直接发送的话很可能会发送到垃圾邮箱里,需要把地址加入到白名单。

把下面的admin@hackhp.com更改为你要接收登录通知的电子邮件地址。

CentOS

vim ~/.bash_profile
IP="$(echo $SSH_CONNECTION | cut -d " " -f 1)"
HOSTNAME=$(hostname)
NOW=$(date +"%e %b %Y, %a %r")

echo 'Someone from '$IP' logged into '$HOSTNAME' on '$NOW'.' | mail -s 'SSH Login Notification' admin@hackhp.com

1.jpg

2.jpg

Ubuntu/Debian

vim ~/.bashrc
IP="$(echo $SSH_CONNECTION | cut -d " " -f 1)"
HOSTNAME=$(hostname)
NOW=$(date +"%e %b %Y, %a %r")

echo 'Someone from '$IP' logged into '$HOSTNAME' on '$NOW'.' | mail -s 'SSH Login Notification' admin@hackhp.com

如果不想接收到邮箱,只想重定向到一个文件的话。


IP="$(echo $SSH_CONNECTION | cut -d " " -f 1)"
HOSTNAME=$(hostname)
NOW=$(date +"%e %b %Y, %a %r")
echo 'Someone from '$IP' logged into '$HOSTNAME' on '$NOW'.' >>/root/login.txt

Leave a Reply