作为IT工程师,确保Linux服务器的身份验证安全至关重要。以下是一套全面的命令行身份验证安全措施:
# 安装并配置密码复杂度要求
sudo apt install libpam-pwquality # Debian/Ubuntu
sudo yum install libpwquality # RHEL/CentOS
# 编辑密码策略配置文件
sudo nano /etc/security/pwquality.conf
配置示例:
minlen = 12
minclass = 3
maxrepeat = 3
maxsequence = 3
# 编辑SSH配置文件
sudo nano /etc/ssh/sshd_config
推荐配置:
Port 2222 # 更改默认端口
PermitRootLogin no # 禁止root直接登录
PasswordAuthentication no # 禁用密码认证,仅使用密钥
MaxAuthTries 3 # 限制尝试次数
ClientAliveInterval 300 # 设置超时断开
ClientAliveCountMax 0
AllowUsers user1 user2 # 只允许特定用户
# 安装Google Authenticator
sudo apt install libpam-google-authenticator # Debian/Ubuntu
sudo yum install google-authenticator # RHEL/CentOS
# 为用户配置
google-authenticator
# 安装Fail2Ban
sudo apt install fail2ban # Debian/Ubuntu
sudo yum install fail2ban # RHEL/CentOS
# 创建本地配置
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
# 检查空密码账户
sudo awk -F: '($2 == "") {print}' /etc/shadow
# 锁定不必要账户
sudo usermod -L username
# 设置账户过期
sudo chage -E $(date -d "+180 days" +%Y-%m-%d) username
# 查看最近登录
last
# 安装并配置auditd
sudo apt install auditd # Debian/Ubuntu
sudo yum install audit # RHEL/CentOS
# 添加审计规则
sudo auditctl -w /etc/passwd -p wa -k passwd_changes
sudo auditctl -w /etc/shadow -p wa -k shadow_changes
# 查看审计日志
sudo ausearch -k passwd_changes
# 检查SUID/SGID文件
sudo find / -perm -4000 -o -perm -2000 -type f -exec ls -la {} \;
# 检查未授权的世界可写文件
sudo find / -xdev -type d \( -perm -0002 -a ! -perm -1000 \) -print
# 检查隐藏进程
ps -ef | awk '{print $2}' | sort -n | uniq -c | awk '$1>1'
通过实施这些措施,您可以显著提高Linux服务器的身份验证安全性。记得在修改关键配置前备份相关文件,并在测试环境中验证变更。