Linux系统的安全设置是确保系统免受各种威胁的重要步骤。以下是详细的Linux安全设置步骤和最佳实践,涵盖账户管理、权限控制、系统更新、防火墙配置、日志监控等方面。
1. 账户和权限管理
1.1 禁止使用Root账户直接登录修改/etc/ssh/sshd_config文件:
PermitRootLogin no
重启SSH服务:
1.2 创建普通用户并提升为管理员将用户添加到sudoers文件: usermod -aG sudo username
1.3 使用sudo命令执行管理任务配置/etc/sudoers文件,确保普通用户可以使用sudo:
1.4 设置强密码策略编辑/etc/login.defs文件: PASS_MAX_DAYS 90PASS_MIN_DAYS 10PASS_MIN_LEN 12PASS_WARN_AGE 7 使用chage命令修改用户密码策略: chage -M 90 -m 10 -W 7 username
2. 文件和目录权限2.1 设置适当的文件权限修改文件权限: chmod 644 /path/to/file # 文件chmod 755 /path/to/directory # 目录
2.2 使用umask设置默认权限编辑/etc/profile或~/.bashrc文件:
2.3 限制重要文件的访问更改文件所有权: chown root:root /path/to/file
3. 系统更新和补丁管理3.1 定期更新系统软件包Debian/Ubuntu: apt update && apt upgrade -y
3.2 配置自动更新Debian/Ubuntu: apt install unattended-upgradesdpkg-reconfigure --priority=low unattended-upgrades
4. 防火墙配置4.1 使用iptables配置防火墙添加规则: iptables -A INPUT -p tcp --dport 22 -j ACCEPTiptables -A INPUT -p tcp --dport 80 -j ACCEPTiptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPTiptables -P INPUT DROPiptables -P FORWARD DROPiptables -P OUTPUT ACCEPT
4.2 使用ufw简化防火墙管理(Debian/Ubuntu)允许SSH和HTTP流量: ufw allow 22/tcpufw allow 80/tcp
5. 服务和进程管理5.1 禁用不必要的服务查看所有服务: systemctl list-unit-files --type=service 禁用不需要的服务: systemctl disable service_name
5.2 限制进程权限使用systemd单元文件配置服务的安全选项:编辑/etc/systemd/system/service_name.service: [Service]User=nobodyGroup=nogroupPrivateTmp=true
6. 日志和审计6.1 配置系统日志重启日志服务: systemctl restart rsyslog
6.2 使用auditd进行安全审计安装auditd: apt install auditd # Debian/Ubuntuyum install audit # Red Hat/CentOS 配置审计规则:编辑/etc/audit/audit.rules: -w /etc/passwd -p wa -k passwd_changes-w /var/log/ -p wa -k log_modifications
7. 远程访问和加密7.1 配置SSH禁用不安全的SSH协议:编辑/etc/ssh/sshd_config: 启用SSH密钥认证: PasswordAuthentication noPubkeyAuthentication yes
7.2 使用Fail2ban防止暴力破解安装Fail2ban: apt install fail2ban # Debian/Ubuntuyum install fail2ban # Red Hat/CentOS 配置Fail2ban:编辑/etc/fail2ban/jail.local: [sshd]enabled = trueport = sshlogpath = /var/log/auth.logmaxretry = 5 启动Fail2ban: systemctl enable fail2bansystemctl start fail2ban
通过实施上述步骤,您可以显著提高Linux系统的安全性,减少潜在的安全威胁和漏洞风险。这些最佳实践涵盖了从账户管理、权限控制到系统更新、防火墙配置和日志监控的各个方面,为Linux系统提供了全方位的安全保障。
|