制定CentOS SSH安全策略可以从多个方面入手,包括配置口令策略、限制登录尝试次数、使用密钥认证、配置SELinux等。以下是详细的步骤:
设置口令策略:
/etc/login.defs
文件,设置口令的最长使用天数、更改最小间隔天数、最小长度、过期提醒天数等。例如:PASS_MAX_DAYS 900
PASS_MIN_DAYS 20
PASS_MIN_LEN 8
PASS_WARN_AGE 7
chage
命令管理 root 用户的密码过期时间,例如:chage -M 90 root
限制登录尝试次数:
/etc/pam.d/sshd
文件,配置账户认证失败次数限制,例如:auth required pam_tally2.so deny=5 unlock_time=300 even_deny_root root_unlock_time=60
/etc/pam.d/system-auth
文件中添加类似的配置:使用密钥认证:
ssh-keygen -t rsa -b 2048
/etc/ssh/sshd_config
文件,启用公钥认证并禁用密码认证:PubkeyAuthentication yes
PasswordAuthentication no
AuthorizedKeysFile .ssh/authorized_keys
.ssh
目录和 authorized_keys
文件的权限设置正确:chmod 700 .ssh
chmod 600 authorized_keys
配置SELinux:
enforcing
或 permissive
模式:getenforce
sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
reboot
其他安全配置:
/etc/pam.d/su
文件,配置 su
命令的安全设置。umask
值,防止默认权限过于宽松。/etc/shadow
、/etc/group
等,防止未授权修改。通过这些步骤,可以显著提高CentOS系统的SSH安全性。