# 更新软件包列表并升级所有已安装的软件
sudo apt update && sudo apt upgrade -y # Debian/Ubuntu
sudo yum update -y # CentOS/RHEL
sudo dnf upgrade -y # Fedora
# 设置自动安全更新
sudo apt install unattended-upgrades # Debian/Ubuntu
sudo dpkg-reconfigure unattended-upgrades
# 创建新用户并设置密码
sudo useradd -m -s /bin/bash username
sudo passwd username
# 禁用root远程登录
sudo sed -i 's/^PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
sudo systemctl restart sshd
# 查看特权用户
awk -F: '($3 == "0") {print}' /etc/passwd
# 设置密码策略
sudo apt install libpam-pwquality # Debian/Ubuntu
sudo yum install cracklib # CentOS/RHEL
# 安装并启用UFW
sudo apt install ufw
sudo ufw enable
# 基本规则配置
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow ssh
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# 查看状态
sudo ufw status verbose
# 基本规则示例
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -j DROP
# 保存规则
sudo iptables-save > /etc/iptables/rules.v4 # Debian/Ubuntu
sudo service iptables save # CentOS/RHEL
# 查看认证日志
sudo tail -f /var/log/auth.log # Debian/Ubuntu
sudo tail -f /var/log/secure # CentOS/RHEL
# 使用grep搜索可疑登录
sudo grep "Failed password" /var/log/auth.log
# 安装并配置logwatch
sudo apt install logwatch # Debian/Ubuntu
sudo yum install logwatch # CentOS/RHEL
# 安装并运行rkhunter
sudo apt install rkhunter # Debian/Ubuntu
sudo yum install rkhunter # CentOS/RHEL
sudo rkhunter --update
sudo rkhunter --propupd
sudo rkhunter --check
# 使用chkrootkit
sudo apt install chkrootkit # Debian/Ubuntu
sudo chkrootkit
# 修改SSH配置
sudo nano /etc/ssh/sshd_config
# 推荐配置
Port 2222 # 更改默认端口
PermitRootLogin no
PasswordAuthentication no # 使用密钥认证
MaxAuthTries 3
ClientAliveInterval 300
ClientAliveCountMax 2
# 重启SSH服务
sudo systemctl restart sshd
# 查看运行中的服务
sudo systemctl list-units --type=service --state=running
# 禁用不必要的服务示例
sudo systemctl stop telnet
sudo systemctl disable telnet
sudo systemctl stop vsftpd
sudo systemctl disable vsftpd
# 查找全局可写文件
find / -xdev -type f -perm -0002 -exec ls -l {} \;
# 查找没有属主的文件
find / -xdev -nouser -o -nogroup
# 检查SUID/SGID文件
find / -xdev -type f \( -perm -4000 -o -perm -2000 \) -exec ls -l {} \;
# 安装aide进行文件完整性检查
sudo apt install aide # Debian/Ubuntu
sudo yum install aide # CentOS/RHEL
# 初始化数据库
sudo aideinit
sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
# 运行检查
sudo aide --check
# 安装Lynis
sudo apt install lynis # Debian/Ubuntu
sudo yum install lynis # CentOS/RHEL
# 运行审计
sudo lynis audit system
# 安装Fail2Ban
sudo apt install fail2ban # Debian/Ubuntu
sudo yum install fail2ban # CentOS/RHEL
# 基本配置
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
# 启动服务
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
# 查看网络连接
sudo netstat -tulnp
sudo ss -tulnp
# 查看可疑进程
ps auxf
top -c
# 检查计划任务
crontab -l
ls -la /etc/cron*
# 使用ClamAV扫描病毒
sudo apt install clamav # Debian/Ubuntu
sudo freshclam # 更新病毒库
sudo clamscan -r /home
通过以上命令行工具和技术的组合使用,您可以显著提高Linux服务器的安全性。定期执行这些检查并保持系统更新是维护服务器安全的关键。