温馨提示×

centos dopra如何进行安全配置

小樊
37
2025-12-19 18:40:56
栏目: 智能运维

CentOS 安全配置实操清单

一 基线加固

  • 保持系统与安全组件为最新:执行yum updatednf update定期更新补丁。
  • 启用并正确配置防火墙:使用firewalld仅放行业务所需端口与服务。
  • 强化身份鉴别:禁用root远程登录,使用SSH 公钥认证,限制可登录用户与来源网段。
  • 账户与登录安全:配置PAM失败锁定策略(如pam_tally2)与SSH 空闲超时(ClientAlive)。
  • 强制访问控制:保持SELinuxenforcing,必要时用setenforce 1临时启用并调整策略。
  • 入侵防护:部署Fail2Ban自动封禁暴力破解来源。
  • 日志与审计:集中监控**/var/log/secure**、/var/log/messages,并启用auditd对关键文件与命令进行审计。
  • 备份与演练:定期备份关键数据与配置,并进行恢复演练。

二 防火墙与端口最小化

  • 启动与开机自启:
    • 启动:sudo systemctl start firewalld
    • 自启:sudo systemctl enable firewalld
  • 查看状态与当前规则:sudo firewall-cmd --statesudo firewall-cmd --list-all
  • 放行仅需要的服务或端口(示例为TCP 80):
    • 按服务:sudo firewall-cmd --permanent --zone=public --add-service=http
    • 按端口:sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
  • 使配置生效:sudo firewall-cmd --reload
  • 变更与回滚:使用--permanent添加规则后--reload;删除规则用--remove-port--remove-service后重载。

三 SSH 与账户安全

  • SSH 安全基线(编辑**/etc/ssh/sshd_config**):
    • 禁用 root 远程登录:PermitRootLogin no
    • 仅启用公钥认证:PubkeyAuthentication yes,并禁用密码认证:PasswordAuthentication no
    • 限制登录用户:AllowUsers your_username
    • 可选:仅监听内网地址:ListenAddress 内网IP
    • 重启生效:sudo systemctl restart sshd
  • 登录超时与会话保持:
    • 会话空闲超时:在/etc/ssh/sshd_config设置ClientAliveInterval 60ClientAliveCountMax 10(约10 分钟无响应断开)。
    • 控制台/终端超时:在/etc/profile设置TMOUT=1803 分钟无操作自动退出)。
  • 防暴力破解:
    • /etc/pam.d/sshd顶部加入(示例):auth required pam_tally2.so deny=3 unlock_time=300 even_deny_root root_unlock_time=10
    • 查看失败次数:pam_tally2 --user 用户名;解锁:pam_tally2 -r -u 用户名
  • 精细化 sudo 授权:使用visudo编辑**/etc/sudoers**,仅授予必要命令的sudo权限(如:username ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart nginx)。

四 权限与 SELinux 控制

  • 最小权限原则:
    • 文件/目录权限:chmod 755 /usr/local/appchown appuser:appgrp /usr/local/app
    • 细粒度 ACL:setfacl -m u:alice:rwx /data/app
  • 用户与组管理:
    • 新建用户:sudo adduser appuser
    • 加入附加组:sudo usermod -aG appgrp appuser
  • SELinux:
    • 查看状态:sestatus
    • 临时切换:sudo setenforce 1(Enforcing)/ sudo setenforce 0(Permissive)
    • 永久配置:编辑**/etc/selinux/config**的SELINUX=enforcing(不建议直接改为disabled
  • 审计关键文件与命令:
    • 启动审计:sudo systemctl start auditd && sudo systemctl enable auditd
    • 添加规则(示例):sudo auditctl -w /etc/passwd -p rwxa -k passwd_access(或写入/etc/audit/rules.d/audit.rules
    • 日志路径:/var/log/audit/audit.log

五 日志监控与备份恢复

  • 实时日志巡检:
    • SSH 登录与认证:sudo tail -f /var/log/secure
    • 系统消息:sudo tail -f /var/log/messages
  • 入侵防护增强:部署Fail2Ban并启用服务:sudo systemctl start fail2ban && sudo systemctl enable fail2ban
  • 备份与恢复:
    • 制定周期性备份(如每日全量/增量),覆盖配置文件、证书、数据库与应用数据;
    • 定期在隔离环境验证恢复流程,确保RPO/RTO满足业务要求。

名词澄清

  • 若你指的是微服务框架Dapr(常被误写为“dopra”),其安全要点包括:在Kubernetes中使用NetworkPolicyPod Security限制南北向/东西向流量;为Dapr Sidecar与业务容器配置最小权限的 ServiceAccount、只读文件系统(除必要卷)、非 root运行;开启mTLS令牌认证;对外仅暴露Dapr API所需端口,并启用审计日志指标告警

0