插件窝 干货文章 使用命令行工具提高Linux服务器的安全性

使用命令行工具提高Linux服务器的安全性

sudo install 安全 etc 646    来源:    2025-04-12

提高Linux服务器安全性的命令行工具指南

作为IT工程师,我为您整理了一套通过命令行工具增强Linux服务器安全性的综合方案,涵盖系统加固、监控和防护措施。

1. 系统更新与补丁管理

# 更新软件包列表并升级所有已安装软件包
sudo apt update && sudo apt upgrade -y  # Debian/Ubuntu
sudo yum update -y                      # CentOS/RHEL

# 自动安全更新配置 (Debian/Ubuntu)
sudo apt install unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades

2. 用户账户安全

# 检查空密码账户
sudo awk -F: '($2 == "") {print $1}' /etc/shadow

# 强制密码复杂性要求 (Debian/Ubuntu)
sudo apt install libpam-pwquality
sudo nano /etc/security/pwquality.conf
# 修改参数如: minlen=12, dcredit=-1, ucredit=-1, ocredit=-1, lcredit=-1

# 锁定不必要账户
sudo passwd -l username

# 设置密码过期策略
sudo chage -M 90 -m 7 -W 7 username

3. SSH安全加固

# 编辑SSH配置
sudo nano /etc/ssh/sshd_config

# 推荐修改项:
Port 2222                       # 更改默认端口
PermitRootLogin no               # 禁止root登录
PasswordAuthentication no        # 禁用密码认证,仅用密钥
MaxAuthTries 3                   # 最大尝试次数
ClientAliveInterval 300          # 超时设置
ClientAliveCountMax 2
AllowUsers user1 user2           # 仅允许特定用户

# 重启SSH服务
sudo systemctl restart sshd

# 生成SSH密钥对 (在客户端执行)
ssh-keygen -t ed25519 -a 100
ssh-copy-id user@server -p 2222

4. 防火墙配置

# UFW (简单防火墙)
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp  # 允许SSH
sudo ufw enable

# 或者使用iptables
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
sudo iptables -A INPUT -j DROP
sudo iptables-save > /etc/iptables/rules.v4

5. 入侵检测与日志监控

# 安装并配置fail2ban防暴力破解
sudo apt install fail2ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
# 修改参数如: bantime = 1h, findtime = 10m, maxretry = 3
sudo systemctl restart fail2ban

# 安装并配置rkhunter rootkit检测
sudo apt install rkhunter
sudo rkhunter --update
sudo rkhunter --propupd
sudo rkhunter --check --sk

# 日志监控工具
sudo apt install logwatch
sudo nano /etc/logwatch/conf/logwatch.conf

6. 文件系统安全

# 检查SUID/SGID文件
sudo find / -type f \( -perm -4000 -o -perm -2000 \) -exec ls -l {} \;

# 检查无属主文件
sudo find / -nouser -o -nogroup

# 设置文件权限
sudo chmod 700 /home/user/.ssh
sudo chmod 600 /home/user/.ssh/authorized_keys

7. 网络服务安全

# 查看监听端口
sudo netstat -tulnp
sudo ss -tulnp

# 禁用不必要的服务
sudo systemctl stop servicename
sudo systemctl disable servicename

# 检查异常进程
ps auxf
top
htop

8. 定期安全审计

# 使用Lynis进行安全审计
sudo apt install lynis
sudo lynis audit system

# 使用ClamAV进行病毒扫描
sudo apt install clamav clamav-daemon
sudo freshclam  # 更新病毒库
sudo clamscan -r / --exclude-dir=/sys/ --exclude-dir=/proc/

9. 备份与恢复

# 创建重要文件备份
sudo tar -czvf /backup/etc_backup_$(date +%F).tar.gz /etc

# 设置定时备份 (编辑crontab)
sudo crontab -e
# 添加: 0 3 * * * tar -czvf /backup/etc_backup_$(date +\%F).tar.gz /etc

10. 高级安全工具

# 安装SELinux (CentOS/RHEL)
sudo yum install selinux-policy selinux-policy-targeted
sudo setenforce 1

# 或AppArmor (Debian/Ubuntu)
sudo apt install apparmor apparmor-utils
sudo aa-enforce /etc/apparmor.d/*

# 安装AIDE文件完整性检查
sudo apt install aide
sudo aideinit
sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
sudo aide --check

通过实施这些命令行安全措施,您可以显著提高Linux服务器的安全性。建议定期执行安全审计,并根据具体业务需求调整安全策略。