服务器一直被暴力破解

通过journalctl -f 查看日志 出现很多ssh连接的信息 如下:

复制代码
pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=183.213.26.65 user=root -
pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"
Failed password for root from 183.213.26.65 port 41726 ssh2
Received disconnect from 183.213.26.65 port 41726:11: Bye Bye [preauth] -
Disconnected from 183.213.26.65 port 41726 [preauth]
dress 123.253.162.254 maps to undefined.hostname.localhost, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!

解释一下这些日志:

复制代码
pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=183.213.26.65 user=root - 这是一条关于身份验证失败的消息,表示来自IP地址为183.213.26.65的主机的用户root尝试通过SSH进行身份验证失败。 
             
pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root" - 这是另一条关于身份验证失败的消息,表示用户root的UID不满足要求而导致SSH身份验证失败。     
       
Failed password for root from 183.213.26.65 port 41726 ssh2 - 这是一条关于密码验证失败的消息,表示来自IP地址为183.213.26.65的主机的用户root尝试使用密码进行身份验证失败。

Received disconnect from 183.213.26.65 port 41726:11: Bye Bye [preauth] - 这是一条连接断开的消息,表示与IP地址为183.213.26.65的主机的连接已被断开。            
 
Disconnected from 183.213.26.65 port 41726 [preauth] - 这是另一条表示与IP地址为183.213.26.65的主机的连接已被断开的消息。      
                                                                        
dress 123.253.162.254 maps to undefined.hostname.localhost, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!这是一个反向 DNS 查询的结果,表示 IP 地址 123.253.162.254 映射到了一个未定义的主机名 undefined.hostname.localhost。                       but this does not map back to the address:这部分说明该主机名不能被反向映射回原始的 IP 地址。                                                                                                                                             OSSIBLE BREAK-IN ATTEMPT!:这是一个警告信息,暗示可能存在入侵尝试。

综上所述,这些日志表明系统收到了来自不同IP地址的用户root的SSH登录尝试,并且其中一些尝试由于身份验证失败而失败了。这可能是由于恶意用户试图破解系统密码或进行未经授权的访问所导致的。

解决方案:

限制特定IP地址登录到服务器:

我这边测试了两种,一种是直接设置ip访问黑白名单,一种是配置sshd,只允许指定的IP登录

第一种:

举例:若只允许192.168.1网段的主机或者别的外网ip登录

先在白名单中allow你的ip

vi /etc/hosts.allow

最后一行加入:

sshd:192.168.1.*:allow

sshd:21.24.19.96:allow

#如果还有别的可以继续加。

然后在黑名单中deny所有的ip

vi /etc/hosts.deny

最后一行加入:

sshd:ALL

这样就除了上面允许登录的IP,其它IP都拒绝登录。

第二种:

vim /etc/ssh/sshd_config

#最后一行加入:

AllowUsers root@192.168.1.18 root@192.168.1.12 root@21.24.19.96

/#多个用户名@IP之间使用空格分隔

这样就表示只允许root用户的21.24.19.96、192.168.1.18和192.168.1.12 登录,别的ip登录会一直提示密码错误

保存完需要重启sshd

service sshd restart

测试

再看日志就发现还在攻击,但是一直拒绝。

更多服务器安全的设置参考:http://t.csdnimg.cn/nLsYs

相关推荐
ALe要立志成为web糕手30 分钟前
TCP/IP
安全·web安全·网络安全·渗透测试
南玖yy43 分钟前
C++多态:面向对象编程的灵魂之
运维·开发语言·数据库·c++·后端·c·c语音
Channing Lewis1 小时前
zoho crm为什么xx是deal的关联对象但是调用函数时报错说不是关联对象
运维·服务器·windows
浅夏入秋^_^1 小时前
网络安全运维面试准备
运维·安全·web安全
段嘉许OvO1 小时前
Red靶机攻略
linux·运维·服务器
李小咖2 小时前
第2章 cmd命令基础:常用基础命令(1)
windows·网络安全·cmd·cmd命令·李小咖
凯子坚持 c2 小时前
基于 Claude Code 与 BrowserCat MCP 的浏览器自动化全链路构建实践
运维·自动化
老纪的技术唠嗑局2 小时前
走出三大困境,深耕五大场景 | 好未来AI业务探索OceanBase实现降本86%
运维·数据库·架构
仍然探索未知中2 小时前
Linux守护进程
linux·运维·服务器