# 定期更新系统
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 apt list --installed # Debian/Ubuntu
sudo yum list installed # CentOS/RHEL
# 移除不需要的软件
sudo apt purge <package> # Debian/Ubuntu
sudo yum remove <package> # CentOS/RHEL
# 创建新用户并设置密码
sudo adduser <username>
sudo passwd <username>
# 禁用root SSH登录
sudo sed -i 's/^PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo systemctl restart sshd
# 设置密码策略
sudo apt install libpam-pwquality # Debian/Ubuntu
sudo yum install pam_pwquality # CentOS/RHEL
# 编辑/etc/pam.d/common-password或/etc/pam.d/system-auth配置密码复杂度要求
# 使用visudo安全编辑sudoers文件
sudo visudo
# 示例:允许用户执行特定命令
username ALL=(ALL) /usr/bin/apt update, /usr/bin/apt upgrade
# UFW (Ubuntu)
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
# Firewalld (CentOS/RHEL)
sudo systemctl enable firewalld
sudo systemctl start firewalld
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
# 编辑/etc/ssh/sshd_config
Port 2222 # 更改默认端口
PermitRootLogin no # 禁用root登录
PubkeyAuthentication yes # 启用密钥认证
PasswordAuthentication no # 禁用密码认证
MaxAuthTries 3 # 最大尝试次数
ClientAliveInterval 300 # 超时设置
ClientAliveCountMax 2
AllowUsers user1 user2 # 只允许特定用户
# 重启SSH服务
sudo systemctl restart sshd
# 关键目录权限设置
sudo chmod 700 /root
sudo chmod 600 /etc/shadow
sudo chmod 644 /etc/passwd
# 查找全局可写文件
find / -xdev -type d \( -perm -0002 -a ! -perm -1000 \) -print
find / -xdev -type f -perm -0002 -print
# 安装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 crontab -e
# 添加: 0 5 * * * /usr/bin/aide --check
# 配置rsyslog
sudo vim /etc/rsyslog.conf
# 安装和配置logwatch
sudo apt install logwatch # Debian/Ubuntu
sudo yum install logwatch # CentOS/RHEL
sudo vim /etc/logwatch/conf/logwatch.conf
# 安装OSSEC
sudo apt install ossec-hids-server # Debian/Ubuntu
sudo yum install ossec-hids # CentOS/RHEL
# 或安装Fail2Ban
sudo apt install fail2ban # Debian/Ubuntu
sudo yum install fail2ban # CentOS/RHEL
# 配置Fail2Ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo vim /etc/fail2ban/jail.local
# SELinux (CentOS/RHEL)
sudo setenforce 1 # 强制模式
sudo getenforce # 检查状态
sudo semanage port -a -t ssh_port_t -p tcp 2222 # 自定义端口
# AppArmor (Ubuntu)
sudo aa-enforce /etc/apparmor.d/*
sudo apparmor_status
# 编辑/etc/sysctl.conf
net.ipv4.conf.all.rp_filter=1
net.ipv4.conf.default.rp_filter=1
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.conf.all.accept_redirects=0
net.ipv6.conf.all.accept_redirects=0
net.ipv4.tcp_syncookies=1
kernel.exec-shield=1
kernel.randomize_va_space=2
# 应用配置
sudo sysctl -p
安全审计:定期使用工具如Lynis进行安全审计
sudo apt install lynis # Debian/Ubuntu
sudo yum install lynis # CentOS/RHEL
sudo lynis audit system
备份策略:实施3-2-1备份策略(3份备份,2种介质,1份离线)
漏洞扫描:定期使用OpenVAS或Nessus进行漏洞扫描
安全培训:确保管理员了解最新安全威胁和最佳实践
通过实施这些安全措施,您可以显著提高Linux服务器的安全性,降低被攻击的风险。请记住,安全是一个持续的过程,需要定期审查和更新安全策略。