作为IT工程师,以下是六个关键命令及其用法,可有效提升Linux服务器安全性:
# 查看特权用户
awk -F: '($3 == "0") {print}' /etc/passwd
# 修改用户密码策略
sudo chage -M 90 -W 7 <username> # 密码90天过期,提前7天警告
# 修改SSH配置
sudo sed -i 's/#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl restart sshd
# 查看当前SSH连接
sudo netstat -tnpa | grep 'ESTABLISHED.*sshd'
# UFW防火墙基本配置
sudo ufw enable
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp # 只允许SSH端口
sudo ufw status verbose
# 更新系统
sudo apt update && sudo apt upgrade -y # Debian/Ubuntu
sudo yum update -y # RHEL/CentOS
# 检查需要安全更新的软件包
apt list --upgradable | grep security # Debian/Ubuntu
yum updateinfo list security # RHEL/CentOS
# 查找全局可写文件
sudo find / -xdev -type f -perm -0002 -exec ls -l {} \;
# 查找无主文件
sudo find / -xdev -nouser -o -nogroup
# 检查SUID/SGID文件
sudo find / -xdev -type f \( -perm -4000 -o -perm -2000 \) -exec ls -l {} \;
# 查看失败登录尝试
sudo grep "Failed password" /var/log/auth.log # Debian/Ubuntu
sudo grep "Failed password" /var/log/secure # RHEL/CentOS
# 实时监控安全日志
sudo tail -f /var/log/auth.log | grep -E 'invalid|failure' # Debian/Ubuntu
sudo tail -f /var/log/secure | grep -E 'invalid|failure' # RHEL/CentOS
sudo lynis audit system
sudo rkhunter --check
sudo apt install unattended-upgrades # Debian/Ubuntu
sudo yum install yum-cron # RHEL/CentOS
这些命令提供了Linux服务器安全加固的基础框架,应根据具体环境调整配置。建议在变更生产环境前先在测试环境验证。