美文网首页Linux相关我爱编程
centos7服务器基本安全设置

centos7服务器基本安全设置

作者: 幽思片羽 | 来源:发表于2018-04-13 23:07 被阅读630次

    一. 关闭Ping 扫描

    • 先切换到root
    echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
    1代表关闭,0代表开启
    
    • 用iptables
    iptables -I INPUT -p icmp -j DROP
    

    二. 创建普通用户,禁止root用户登录,只允许普通用户使用su命令切换到root
    这样做的好处是双重密码保护,黑客就算知道了普通用户的密码,如果没有root密码,对服务器上攻击也比较有限。

    1. 在root下添加普通账户
    useradd lidi    // 添加一个普通账户lidi,并设置密码
    passwd lidi
    
    1. 禁止root登录
    vi /etc/ssh/sshd_config
    PermitRootLogin no    // 设为no
    Systemctl restart sshd  // 重启sshd
    

    这样就完成了第一步,之后root就无法登录服务器只能通过普通用户su切换

    三、 修改ssh的默认端口22,因为ssh的端口是22,我们如果修改了该端口,他们就需要花费一点时间来扫描,稍微增加了点难度

    以下将端口改为20903可以根据需要自己更改,大家修改端口时候最好挑10000~65535之间的端口号,10000以下容易被系统或一些特殊软件占用,或是以后新应用准备占用该端口的时候,却被你先占用了,导致软件无法运行

    1. 修改/etc/ssh/sshd_config
    vi /etc/ssh/sshd_config
    #Port 22         //这行去掉#号
    Port 51866      //下面添加这一行
    

    为什么不先删除22,以防其他端口没配置成功,而又把22的删除了,无法再次进入服务器

    1. 修改SeLinux,关闭可忽略
    2. 如果你关闭了防火墙,可以忽略第三步,话说防火墙不开启太危险了,建议开启
    • 首先查看防火墙是否监听20903端口
    firewall-cmd --permanent --query-port=20903/tcp 
    no // 显示no  未监听
    firewall-cmd --permanent --add-port=20903/tcp   // 添加端口
    success
    
    • 重新加载防火墙策略
    firewall-cmd --reload 
    
    • 执行成功后,查看20903端口是否被开启:
    firewall-cmd --permanent --query-port=20903/tcp
    
    • 重启SSH服务和防火墙,最好也重启下服务器
    systemctl restart sshd  
    systemctl restart firewalld.service  
    shutdown -r now  
    
    • 然后测试试试,能不能通过20903登录,若能登录进来,说明成功,接着删除ssh 22端口,同时关闭防火墙22端口
    firewall-cmd --permanent --zone=public --remove-port=22/tcp
    

    四、使用一些类似DenyHosts预防SSH暴力破解的软件(不详细介绍)
    其实就是一个python脚本,查看非法的登录,次数超过设置的次数自动将ip加入黑名单。
    五、使用云锁(不详细介绍)

    相关文章

      网友评论

      • 太多的是非:你大爷的 害人啊 你创建完账户以后不给账户su root权限直接去禁止root远程登录,让小白怎么搞?不会的别乱发啊 误人子弟
        天涯热土:谢谢提醒,正准备参考

      本文标题:centos7服务器基本安全设置

      本文链接:https://www.haomeiwen.com/subject/ilihkftx.html