• 服务器一直被暴力破解


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

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

     

    解释一下这些日志:

    1. 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进行身份验证失败。
    2. pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root" - 这是另一条关于身份验证失败的消息,表示用户root的UID不满足要求而导致SSH身份验证失败。
    3. Failed password for root from 183.213.26.65 port 41726 ssh2 - 这是一条关于密码验证失败的消息,表示来自IP地址为183.213.26.65的主机的用户root尝试使用密码进行身份验证失败。
    4. Received disconnect from 183.213.26.65 port 41726:11: Bye Bye [preauth] - 这是一条连接断开的消息,表示与IP地址为183.213.26.65的主机的连接已被断开。
    5. Disconnected from 183.213.26.65 port 41726 [preauth] - 这是另一条表示与IP地址为183.213.26.65的主机的连接已被断开的消息。
    6. 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

     

  • 相关阅读:
    使用 Core Tools 在本地开发 Azure Functions
    春招java面试:spring有哪些常见的配置文件
    python Flask 缓存的两种方式
    .NET 设计模式—适配器模式(Adapter Pattern)
    socket编程中服务器端常用函数以及简单实现
    自学SLAM(2)---保姆教程教你如何使用自己的视频运行ORB-SLAM2
    正则表达式 re模块
    【期权系列】基于偏度指数的择时分析
    理解Java中的死锁(Deadlock)及其示例
    Springboot+vue的应急救援物资管理系统,Javaee项目,springboot vue前后端分离项目。
  • 原文地址:https://blog.csdn.net/m0_63004677/article/details/136744634