为了提高SSH远程访问安全需要重新配置/etc/ssh/sshd_config文件,需要修改如下几点。


    操作之前说明一下/etc/ssh目录下有 sshd_config 与 ssh_config 两个相似文件,两个文件区别:

    - sshd_config: 这是sshd服务器系统的配置文件

    - ssh_config: 这是ssh客户端系统的配置文件

    所以我们要修改的是带有 d 的sshd_config 服务器系统配置文件


    需修改的文件内容:

    1) #Port 22  // 远程访问端口

    2) #ListenAddress 0.0.0.0  // 监听,如设置为172.30.11.22那么远程端ssh只能与此IP联机ssh

         优点: 如设置为内网IP,那么外网的终端设备就无法使用SSH联机了,因为ssh监听的是内网IP.

    3) #PermitRootLogin yes  // root用户远程授权

    4) #PermitEmptyPasswords no // 空密码登录授权

    5) GSSAPIAuthentication yes //  如服务器ip地址没有配置PTR记录就会容易卡在这里推荐禁用.

    6) #UseDNS yes  // DNS反向解析,IP访问无需解析禁用可提高SSH访问速度

    参考图:

grep -iE "Port 22|listenaddress 0.0.0.0|permitrootlogin yes|permitemptypasswords|gssapiauthentication yes|usedns" sshd_config

wKioL1iYJ4Lwd9uEAAA55BAzDH4590.jpg


    修改文件:

    一. 修改前务必备份好一份配置文件sshd_config

    # cp sshd_config sshd_config.20170206  

     备份文件时在文件的后面添加备份日期以方便日后使用

     配置文件修改前备份的优点:

       1. 修改完成后可以使用diff或用vimdiff方便对比 

       2. 操作失误删除或修改有误可以方便还原.


    二. 修改sshd_config配置文件

      2.1 使用 sed 修改sshd_config配置文件

       # sed -i 's/#Port 22/Port 10010/g;s/#ListenAddress 0.0.0.0/ListenAddress 192.168.1.110/g;s/#PermitRootLogin yes/PermitRootLogin no/g;s/#PermitEmptyPasswords no/PermitEmptyPasswords no/g;s/GSSAPIAuthentication yes/GSSAPIAuthentication no/g;s/#UseDNS yes/UseDNS no/g' sshd_config

      2.2 使用 vim 修改sshd_config配置文件

       # vim sshd_config

   

    1) Port 10010

    2) ListenAddress 192.168.1.110

    3) PermitRootLogin no

    4) PermitEmptyPasswords no

    5) GSSAPIAuthentication no

    6) UseDNS no


    参考图:

grep -Ei "Port 10010|ListenAddress 172.30.11.22|PermitRootLogin no|PermitEmptyPasswords no|GSSAPIAuthentication no|UseDNS no" sshd_config

wKiom1iYKBeBlGCvAAA_OVY96m4843.jpg


    修改后对比:

    1) diff 使用文本对比

    #diff ssh_config.20170206 sshd_config

wKioL1iYKv7BldheAABQ8xFxWVk199.jpg

    2) vimdiff 使用彩色对比

    #vimdiff ssh_config.20170206 sshd_config

wKioL1iYK7-C9HSXAAEBZ7xITio912.jpg


    重启服务:

    # /etc/init.d/sshd restart

     restart 直接重新启动服务

    或者

    # /etc/init.d/sshd reload

     reload 重新加载配置文件


    验证:

    # netstat -alntup | grep 10010

   wKioL1iYMmKxDUUVAAA0CaeqFIg013.jpg