sshd配置
配置文件:/etc/ssh/sshd_config
Note: 更改ssh相关配置后需要重启sshd服务 systemctl restart sshd
ssh访问控制
AllowUsers
AllowGroups
DenyUsers
DenyGroups
配置加密算法
Ciphers aes256-ctr,aes192-ctr,aes128-ctr # 使用已批准的加密类型
MACs hmac-sha2-512,hmac-sha2-256 # 使用已批准的Mac算法
密码验证
PermitEmptyPasswords no # 禁止无密码访问服务器
PermitRootLogin yes # 是否禁止使用root登录(为方便管理,暂未收回权限)
如果禁用root需要创建一个超级管理员。
openssh主机认证
HostbasedAuthentication no
限制用户认证次数
MaxAuthTries 4 # 等保三要求该值小于等于 4
ssh空闲超时
ClientAliveInterval 300 # 小于等于300s
ClientAliveCountMax 3 # 存活用户数小于等于3
用户认证及密码强度管理(pam)
pam 简介
Linux-PAM(linux可插入认证模块)是一套共享库,使本地系统管理员可以随意选择程序的认证方式.。换句话说,不用(重新编写)重新编译一个包含PAM功能的应用程序,就可以改变它使用的认证机制。这种方式下,就算升级本地认证机制,也不用修改程序。
PAM使用配置 /etc/pam.d/ 下的文件,来管理对程序的认证方式。应用程序调用相应的配置文件,从而调用本地的认证模块。模块放置在 /lib/security 下,以加载动态库的形式进,像我们使用su命令时,系统会提示你输入root用户的密码,这就是su命令通过调用PAM模块实现的。
pam 配置文件介绍
PAM配置文件有两种写法:
一种是写在 /etc/pam.conf 文件中,但centos6之后的系统中,这个文件就没有了。
另一种写法是,将PAM配置文件放到 /etc/pam.d/ 目录下,其规则内容都是不包含 service 部分的,即不包含服务名称,而 /etc/pam.d 目录下文件的名字就是服务名称。如: vsftpd,login等。
配置文件示例:
由上图可以将配置文件内容划分为四列:
第一列:代表模块类型
第二列:代表控制标记
第三列:代表模块路径
第四列:代表模块参数
pam 模块类型
Linux-PAM有四种模块类型,分别代表四种不同的任务,它们是:
认证管理(auth)
账号管理(account)