1、AddressFamliy any;支持那IP协议;比如ipv4,ipv6,;默认 any;
2、Port 22 :SSH端口号配置,默认22;
3、Protocol 2 ; SSH协议的2版本,推荐2版本
4、LoginGraceTime 2m; 输入密码时的等待时长默认2分钟,超出则断开会话;
5、ListenAddress IP:监听哪个IP,默认监听所有IP;
6、PermitRootlogin Yes\No: 控制root账号以密码方式登录;
7、PermitEmptyPasswords No:控制空密码登录
8、PasswordAuthentication Yes:建议禁止密码登录,使用key验证登录
9、Gatewayports Yes\No:端口转发功能;
10、StrickHostKeyChecking Ask\No;登录询问;
11、MaxAuthTries 6 ;密码最多试错次数,是设置数值的一半次数;
12、MaxSessions 10;同一个会话的连接次数;默认10个;
13、PubkeyAuthentication yes ;公钥的身份验证开启;
14、Banner /path/file ;用户SSH登录前的提示信息;
15、ClientAliveInterval 30: 默认0永久连接,可自定义无操作等待时间;
16、ClientAliveCountMax 0:
表示服务器发出请求客户端没有响应的次数达到一定值, 就自动断开. 正常情
况下, 客户端不会不响应。 一般15和16两项同时配合设置,设置用户多久没有
操作服务器,则自动退出服务器会话;
17、UseDNS No : DNS解析;
18、GSSAPIAuthentication no;
SSh连接优化,建议配置17和18两项。
19、Maxstartup: 10:30:100:支持10个并发连接,超过10个,以30%概率拒绝,超过60%的并发则全部拒绝;
20、AllowUsers user1 user2 user3;允许用户登录,其他人拒绝;
21、DenyUsers user1 user2 :拒绝用户登录;
AllowUsers和DenyUsers 只能配置一个,若设置允许用户,其他用户都不
能登录,若设置拒绝用户,则其他用户都可以登录;
22、AllowGroups :允许组访问,如果没有可以添加;
23、DenyGroups :拒绝组访问,如果没有可以添加;
1、建议使用非默认端口
2、禁止使用protocol version 1
3、限制可登录用户
4、设定空闲会话超时时长
5、利用防火墙设置ssh访问策略
6、仅监听特定的IP地址
7、基于口令认证时,使用强密码策略
8、使用基于密钥的认证
9、禁止使用空密码
10、禁止root用户直接登录
11、限制ssh的访问频度和并发在线数
12、DNS和GSSAPIAuthentication no
提醒:关注系统分析日志
1、systemctl reload sshd
2、systemctl restart sshd
/var/log/secure
原文:https://blog.51cto.com/stalman/2380445