操作系统 
首页 > 操作系统 > 浏览文章

Linux服务器上设置SSH登录后发送email提醒的方法

(编辑:jimmy 日期: 2025/12/20 浏览:3 次 )

虚拟私有服务器 (VPS)上启用 SSH 服务使得该服务器暴露到互联网中,为黑客攻击提供了机会,尤其是当 VPS 还允许root 直接访问时。VPS 应该为每次 SSH 登录成功尝试配置一个自动的 email 警告。 VPS 服务器的所有者会得到各种 SSH 服务器访问日志的通知,例如登录者、登录时间以及来源 IP 地址等信息。这是一个对于服务器拥有者来说,保护服务器避免未知登录尝试的重要安全关注点。这是因为如果黑客使用暴力破解方式通过 SSH 来登录到你的 VPS 的话,后果很严重。在本文中,我会解释如何在 CentOS 6、 CentOS 7、 RHEL 6 和 RHEL 7上为所有的 SSH 用户登录设置一个 email 警告。

    使用root用户登录到你的服务器;

    在全局源定义处配置警告(/etc/bashrc),这样就会对 root 用户以及普通用户都生效:

       
复制代码代码如下:[root@vps ~]# vi /etc/bashrc

    将下面的内容加入到上述文件的尾部。

       
复制代码代码如下:echo 'ALERT - Root Shell Access (vps.ehowstuff.com) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" recipient@gmail.com

    你也可以选择性地让警告只对 root 用户生效:

       
复制代码代码如下: [root@vps ~]# vi .bashrc

    将下面的内容添加到/root/.bashrc的尾部:

       
复制代码代码如下:echo 'ALERT - Root Shell Access (vps.ehowstuff.com) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" recipient@gmail.com

    整个配置文件样例:

       
复制代码代码如下: # .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
echo 'ALERT - Root Shell Access (vps.ehowstuff.com) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" recipient@gmail.com

    你也可以选择性地让警告只对特定的普通用户生效(例如 skytech):

       
复制代码代码如下: [root@vps ~]# vi /home/skytech/.bashrc

    将下面的内容加入到/home/skytech/.bashrc文件尾部:

       
复制代码代码如下:echo 'ALERT - Root Shell Access (vps.ehowstuff.com) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" recipient@gmail.com


上一篇:升级Linux内核的教程
下一篇:在Ubuntu上安装Budgie桌面的教程
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。