linux查看ssh失败记录,在Linux中查找所有失败的SSH登录尝试

每次尝试登录到SSH服务器都会被Linux中的rsyslog守护进程跟踪并记录到日志文件中。 在Linux中列出所有失败的SSH登录尝试的最基本的机制是在cat命令或grep命令的帮助下显示和过滤日志文件的组合。

为了在Linux中显示失败的SSH登录列表,请发布本指南中提供的一些命令。 确保这些命令是以root权限执行的。

列出所有失败的SSH登录名的最简单命令如下所示。

# grep "Failed password" /var/log/auth.log

e6011248696cdf38f654d90eb680615e.png

列出所有失败的SSH登录尝试

发出cat命令也可以达到同样的效果。

# cat /var/log/auth.log | grep "Failed password"

为了显示有关失败的SSH登录的额外信息,请按照下面的示例所示发出命令。

# egrep "Failed|Failure" /var/log/auth.log

a3b9949eee6ce767731d1d16cf77e427.png

在CentOS或RHEL中 ,失败的SSH会话记录在/ var / log / secure文件中。 针对此日志文件发出上述命令以标识失败的SSH登录名。

# egrep "Failed|Failure" /var/log/secure

94024c1fdb874dec85e703f817056fe6.png

在CentOS中查找失败的SSH登录

上述命令的稍微修改版本显示在CentOS或RHEL中失败的SSH登录如下。

# grep "Failed" /var/log/secure

# grep "authentication failure" /var/log/secure

0abec7add2ef5a01061ed40e5f1513c3.png

要显示尝试失败登录到SSH服务器的所有IP地址列表以及每个IP地址尝试失败的次数,请发出以下命令。

# grep "Failed password" /var/log/auth.log | awk ‘{print $11}’ | uniq -c | sort -nr

a9502b0007a561ab692c5cd453400b46.png

在较新的Linux发行版中,可以通过journalctl命令查询Systemd守护进程维护的运行时日志文件。 为了显示所有失败的SSH登录尝试,您应该通过grep过滤器来输出结果,如以下命令示例所示。

# journalctl _SYSTEMD_UNIT=ssh.service | egrep "Failed|Failure"

# journalctl _SYSTEMD_UNIT=sshd.service | egrep "Failed|Failure"  #In RHEL, CentOS

3d59b80d229f3b633575b189c28fb6d1.png

在CentOS或RHEL中 ,使用sshd.service替换SSH守护程序单元,如下面的命令示例所示。

# journalctl _SYSTEMD_UNIT=sshd.service | grep "failure"

# journalctl _SYSTEMD_UNIT=sshd.service | grep "Failed"

在确定了频繁出现在你的SSH服务器上的IP地址,以便用可疑的用户帐号或无效的用户帐号登录系统后,你应该更新系统防火墙规则来阻止失败的SSH尝试 IP地址或者使用专门的软件,比如fail2ban来管理这些攻击。

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值