服务器一直被暴力破解

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

相关推荐
微服务商城技术分享7 分钟前
通过Docker实现openGauss的快速容器化安装
运维·docker·容器
编程墨客1 小时前
第03章 文件编程
linux·运维·服务器
命里有定数1 小时前
windows工具 -- 使用rustdesk和云服务器自建远程桌面服务, 手机, PC, Mac, Linux远程桌面 (简洁明了)
linux·运维·服务器·windows·ubuntu·远程工作
cleveryuoyuo1 小时前
进程的程序替换exec*函数和shell实现
linux·服务器
运维佬1 小时前
nginx配置负载均衡详解
运维·nginx·负载均衡
微凉的衣柜1 小时前
使用 VS Code 远程连接时解决 OpenSSL 版本不匹配及权限问题
服务器·vscode·ubuntu
单音GG2 小时前
推荐一个基于协程的C++(lua)游戏服务器
服务器·c++·游戏·lua
nnloveswc2 小时前
PTE-中间件安全
安全
冰水°2 小时前
3.1_文件上传漏洞
安全·网络安全·文件上传·条件竞争·.htaccess·文件上传绕过
Shepherd06192 小时前
【Jenkins实战】Windows安装服务启动失败
运维·jenkins