服务器一直被暴力破解

通过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

相关推荐
i***51267 小时前
Failed to restart nginx.service Unit nginx.service not found
运维·nginx
neo_will_mvp8 小时前
IDC服务器故障排除思路
运维·服务器
白帽子黑客罗哥8 小时前
常见的 Web 攻击手段原理及核心防范思路
web安全·网络安全·渗透测试·漏洞挖掘·就业·护网行动
8***84828 小时前
Nginx代理到https地址忽略证书验证配置
运维·nginx·https
傲世(C/C++,Linux)8 小时前
Linux系统编程——TCP客户端
linux·运维·tcp/ip
Xの哲學8 小时前
C语言内存函数总结
linux·服务器·网络·架构·边缘计算
SelectDB8 小时前
Apache Doris 在小米统一 OLAP 和湖仓一体的实践
运维·数据库·程序员
23124_808 小时前
网络管理-1
运维·服务器·前端
YongCheng_Liang8 小时前
Python实现PDF 转 JPG 批量转换工具
运维·python·pdf