云网牛站
所在位置:首页 > Linux安全 > 在Linux上为SSH root及所有用户登录设置启用电子邮件警报

在Linux上为SSH root及所有用户登录设置启用电子邮件警报

2020-02-23 10:56:25作者:符天稿源:云网牛站

为了增强安全,您可以在Linux操作系统上为SSH root及所有用户登录设置启用电子邮件警报,本文介绍实现该设置的方法。这是我们在环境中考虑的一项强制性调整,以接收有关对root用户的未经授权或非法登录访问的警报。另外,我建议您设置一个强密码并经常更改该密码,以实现最佳安全性,参考在Linux系统终端中生成随机强密码的方法。缺省情况下,ssh工具配置附带安全性参数,您可以根据需要和环境修改许多参数,以使Linux系统更安全,可以通过在根用户“.bashrc”文件中添加bash脚本来完成,由于“.bashrc”文件在本文中起着重要作用,因此我将对其进行详细描述。

在Linux上为SSH root及所有用户登录设置启用电子邮件警报

 

.bashrc文件简介

“.bashrc”文件是一个脚本,每当以交互方式启动新的终端会话时,便会执行该脚本。它包含用于终端会话的一组配置,包括设置或启用:colouring、completion、shell历史记录、命令别名等。

可以在用户的​​主文件夹中找到,这是一个隐藏文件,您应将ls命令与“-a”选项一起使用,以在计算机上显示隐藏文件。

参考:什么是bashrc配置文件,如何对其进行编辑

 

如何为root用户启用电子邮件警报

以root用户身份登录,然后将以下一行脚本添加到root用户“.bashrc”文件中以实现此目的。

# vi .bashrc

echo 'ALERT - SSH root shell access found on '$HOSTNAME' on:' `date` `who` | mail -s "Alert: SSH root shell access"  249562751@qq.com

注:请注意替换成自己的电子邮箱。

运行以下命令以重新加载“.bashrc”文件:

# source .bashrc

或者,您可以运行以下命令,它用给定的命令替换Shell,而无需创建新进程:

# exec bash

完成后,以root用户身份登录新会话,登录后,您将收到类似以下内容的邮件警报:

在Linux上为SSH root及所有用户登录设置启用电子邮件警报

如果要在脚本中添加多个电子邮件ID,请在电子邮件ID之间添加一个空格,如下所示:

# vi .bashrc

echo 'ALERT - SSH root shell access found on '$HOSTNAME' on:' `date` `who` | mail -s "Alert: SSH root shell access"  249562751@qq.com 371716194@qq.com

 

如何为特定用户启用电子邮件警报

这类似于上面的脚本,但是您需要将以下脚本添加到关联用户的“.bashrc”文件中,并更改警报的内容,请注意替换ywnz用户:

# vi /home/ywnz/.bashrc

echo 'ALERT - '$USER' shell access found on '$HOSTNAME' on:' `date` `who` | mail -s "Alert: User shell access"  249562751@qq.com

 

如何为所有用户启用电子邮件警报

这类似于上面的脚本,但是您需要将以下脚本添加到全局“/etc/bashrc”文件中:

# vi /etc/bashrc

echo 'ALERT - '$USER' shell access found on '$HOSTNAME' on:' `date` `who` | mail -s "Alert: User shell access"  249562751@qq.com

运行以下命令以重新加载“/etc/bashrc”文件:

# source /etc/bashrc

至此,在Linux系统上为SSH所有用户登录设置启用电子邮件警报操作完成。

 

相关主题

在Ubuntu 18.04服务器上设置SSH双因素身份验证的方法

精选文章
热门文章