首页主机资讯CentOS环境下的安全策略有哪些

CentOS环境下的安全策略有哪些

时间2025-10-13 20:29:03发布访客分类主机资讯浏览1092
导读:CentOS环境下的安全策略 1. 账户与权限管理 禁用非必要超级用户:通过cat /etc/passwd | awk -F: '{print $1, $3}' | grep ' 0$'检测UID=0的非root用户,使用passwd -...

CentOS环境下的安全策略

1. 账户与权限管理

  • 禁用非必要超级用户:通过cat /etc/passwd | awk -F: '{ print $1, $3} ' | grep ' 0$'检测UID=0的非root用户,使用passwd -l < 用户名> 锁定或修改shell为/sbin/nologin禁止登录。
  • 删除不必要账号:移除默认闲置账号(如admlpsync等),使用userdel < 用户名> groupdel < 组名> 清理,降低攻击面。
  • 强化口令策略:修改/etc/login.defs设置PASS_MIN_LEN 10(密码最小长度),要求包含大小写字母、数字和特殊字符;检查空口令账户awk -F: '($2 == "") { print $1} ' /etc/shadow并强制设置密码。
  • 保护口令文件:使用chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow设置不可更改属性,防止未授权修改。
  • 限制su命令:编辑/etc/pam.d/su添加auth required pam_wheel.so use_uid,仅允许wheel组成员使用su切换root,降低权限滥用风险。

2. 防火墙配置

  • 启用firewalld:CentOS 7+默认使用firewalld,通过systemctl start firewalld & & systemctl enable firewalld启动并设为开机自启。
  • 设置默认区域策略:将默认区域改为drop(拒绝所有未明确允许的流量),使用firewall-cmd --set-default-zone=drop,仅开放必要端口(如SSH 22、HTTP 80)。
  • 最小化开放端口:仅允许业务必需的服务端口,如firewall-cmd --zone=public --add-port=22/tcp --permanent(SSH),--reload生效;避免开放高危端口(如3389、135)。
  • 使用rich规则精细化控制:通过firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.1.100' port port=22 protocol='tcp' accept"限制特定IP访问关键服务,提升安全性。
  • 配置日志记录:启用防火墙日志firewall-cmd --set-log-denied=xml,通过journalctl -u firewalld/var/log/messages监控异常流量,及时发现攻击行为。

3. SELinux安全增强

  • 启用SELinux:通过sestatus检查状态(需显示enforcing),修改/etc/selinux/configSELINUX=enforcing并重启,确保强制访问控制生效。
  • 配置正确上下文:使用ls -Z查看文件/进程上下文,semanage fcontext -a -t httpd_sys_content_t "/var/www/html(/.*)?"定义持久化规则,restorecon -Rv /var/www/html应用,确保服务进程仅能访问授权资源。
  • 处理AVC拒绝:通过ausearch -m avc -ts today查看SELinux拒绝日志,使用audit2allow -M mypolicy生成自定义策略(最小化权限),semodule -i mypolicy.pp加载,解决服务运行时的权限问题。
  • 遵循最小权限原则:将服务运行在专有域(如httpd_t而非unconfined_t),避免过度授权;定期审查SELinux策略,禁用不必要的布尔值(如setsebool -P httpd_can_network_connect=0)。

4. SSH服务安全

  • 禁用root远程登录:编辑/etc/ssh/sshd_config,设置PermitRootLogin no,防止root账户被暴力破解。
  • 使用密钥认证:生成SSH密钥对(ssh-keygen -t rsa),将公钥复制到服务器ssh-copy-id user@ip,修改/etc/ssh/sshd_config设置PasswordAuthentication no,替代密码认证,提升登录安全性。
  • 限制登录用户:在/etc/ssh/sshd_config中添加AllowUsers < username1> < username2> ,仅允许指定用户通过SSH登录,减少攻击入口。
  • 修改SSH端口:将默认22端口改为高位端口(如Port 2222),降低自动化扫描攻击概率;需同步修改防火墙规则允许新端口。

5. 系统更新与补丁管理

  • 定期更新系统:使用yum update -ydnf update -y定期更新操作系统及软件包,修复已知安全漏洞(如内核、OpenSSL漏洞)。
  • 订阅安全公告:关注CentOS官方安全公告(如centos-announce邮件列表),及时获取高危漏洞补丁,避免延迟修复导致系统暴露。

6. 日志与监控

  • 启用auditd审计:安装auditdyum install auditd -y),启动并设为开机自启(systemctl start auditd & & systemctl enable auditd),记录用户操作(如sudo使用)、文件修改等关键事件。
  • 监控关键日志:定期检查/var/log/secure(认证日志)、/var/log/messages(系统日志)、/var/log/audit/audit.log(审计日志),使用grep "Failed password" /var/log/secure查找暴力破解尝试,及时响应异常。
  • 使用监控工具:部署ELK Stack(Elasticsearch+Logstash+Kibana)或Prometheus+Grafana集中收集、分析日志,设置告警规则(如频繁登录失败),提升监控效率。

7. 其他安全措施

  • 禁用ctrl+alt+delete重启:编辑/etc/inittab,注释ca::ctrlaltdel:/sbin/shutdown -t3 -r now行,防止物理接触或误操作导致系统意外重启。
  • 设置登录超时:修改/etc/profile,添加TMOUT=300(300秒无操作自动注销),减少未授权访问风险;需执行source /etc/profile激活。
  • 备份关键数据:定期备份系统配置(/etc)、数据库(如MySQL的/var/lib/mysql)、用户数据(/home)到异地或云存储,使用rsynctar工具,确保数据可恢复。
  • 使用安全工具:部署Fail2Ban(yum install fail2ban -y)防止SSH暴力破解,通过clamavyum install clamav -y)扫描恶意软件,提升系统整体安全性。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS环境下的安全策略有哪些
本文地址: https://pptw.com/jishu/725082.html
centos如何优化定时器 centos如何删除定时器

游客 回复需填写必要信息