openssh的服务端配置文件

一、因为部分配置长时间不使用就忘了,为了方便查阅,我在这里检点写一些比较有用的ssh配置选项。

Port
ListenAddress ip       #监听自己的哪个端口,默认是都监听的,如果指定了IP那么未指定的IP将不能被ssh连接
LoginGraceTime 2m   #连接成功等待超时时间
PermitRootLogin yes  #是否允许root用户登录
StrictModes yes           #检查.ssh/文件的所有者,权限等,这项默认不要更改
MaxAuthTries 6          #验证最大尝试次数,写6就是3次
MaxSessions 10          #clone的最大会话数
PubkeyAuthentication yes   #是否使用秘钥登录
PermitEmptyPasswords no  #是否允许空口令登录
PasswordAuthentication yes  #是否使用密码验证登录
GatewayPorts no
ClientAliveInterval:单位:秒
ClientAliveCountMax:默认3
UseDNS yes                 #优化该项目为no
GSSAPIAuthentication yes    #有坏该项目为no,提高速度
MaxStartups 未认证连接最大值,默认值10
Banner /path/file
限制可登录用户的办法:

AllowUsers user1 user2 user3
DenyUsers
AllowGroups
DenyGroups

二、配置ssh时的一些建议

建议使用非默认端口
禁止使用protocol version 1
限制可登录用户
设定空闲会话超时时长
利用防火墙设置ssh访问策略
仅监听特定的IP地址
基于口令认证时,使用强密码策略
tr -dc A-Za-z0-9_ < /dev/urandom | head -c 30| xargs
使用基于密钥的认证
禁止使用空密码
禁止root用户直接登录
限制ssh的访问频度和并发在线数
经常分析日志

原文地址:https://www.cnblogs.com/momenglin/p/8486087.html