总结sshd服务常用参数

志不强者智不达,言不信者行不果。这篇文章主要讲述总结sshd服务常用参数相关的知识,希望能为你提供帮助。
    上篇ssh中我们提到了/etc/ssh目录下有两个配置文件,ssh_config是ssh客户端的,另一个sshd_config的就是ssh服务器端的,也就是本篇sshd服务要用到的。关于sshd服务的相关说明,执行 ?man 5 sshd_config? 命令可以查看??(如下图)??。

    此篇重点看一下sshd_config配置文件,生产过程中,我们还需结合配置文件中的相关参数来进行修改,以保证服务器的安全性。

  1. ?修改端口号?
    上一篇说到ssh客户端通过指定端口远程登录主机提到了这一点,如果企业使用的是内网,端口号改不改无所谓,如果走的是外网,最好将端口号改为其他的,并且最好做到不定期更改,以防止遭受到攻*击。



  1. ?密*码确认?
    密*码确认部分默认的选项是yes,即客户端可以通过服务器ip和密*码来进行登录。上一篇说到了基于key验证的方法,这种方法设置好后,可以跳过密*码验证环节,企业也可在完成基于key验证后,将此部分改为no,即不可通过密*码来登录主机。
【总结sshd服务常用参数】


  1. ?ssh连接加速?
    sshd_config文件中有两项可能会导致ssh连接比较缓慢,如果“UseDNS”和“GSSAPIAuthentication”默认的是yes,可以都改成no。




  1. ?无操作自动断开连接?
    有时我们远程到远程主机后会忘了退出来,长时间的登录远程主机会产生安全隐患,这时我们在配置文件中设置超时自动断开。这一项在“ClientAliveInterval”部分修改,默认的是0,我们可以改为30,即每30秒发送一次信号;“ClientAliveCountMax”表示发送信号次数统计,系统默认的为3,笔者这边改成了2,即每30秒向服务器发送一次信号,如果累计2次也就是60秒还无操作,将自动断开连接。



  1. ?Ubuntu开启root远程登录功能?
    Ubuntu默认是不允许root用户进行远程登录的,我们可以将/etc/ssh/sshd_config文件中的“PermitRootLogin prohibit-password”注释掉,另起一行添加“PermitRootLogin yes”,这样我们就可通过root来远程登录了。

    以上主要为常用的一些修改设置,结合实际生产需要,sshd服务还可修改其他参数来完善性能,笔者在此就不一一列举了,在修改配置文件后,记得执行  ?systemctl restart sshd? 命令重启sshd服务,否则无法生效。
    以下主要为ssh服务在生产环境中的最佳实验,部分笔者有提到,没提到的,各位也可根据自己的需求来进行变动:
    ①建议使用非默认端口;
    ②禁止使用protocol version 1;
    ③限制可登录用户;
    ④设定空闲会话超时时长;
    ⑤利用防火墙设置ssh访问策略;
    ⑥仅监听特定的IP地址;
    ⑦基于口令认证时,使用强密*码策略,比如:tr -dc A-Za-z0-9_ < /dev/urandom | head -c 12| xargs;
    ⑧使用基于密钥的认证;
    ⑨禁止使用空密*码;
    ⑩禁止root用户直接登录;
      ?限制ssh的访问频度和并发在线数;
      ?经常分析日志。

    推荐阅读