在CentOS上配置Golang应用程序时,确保系统安全是非常重要的。以下是一些关键的安全配置步骤和最佳实践:
禁用非必要的超级用户:
/etc/passwd
文件,检测并锁定不必要的超级账户。cp -p /etc/passwd /etc/passwd_bak
passwd -l <用户名> # 锁定账户
passwd -u <用户名> # 解锁账户
adm
, lp
, sync
等:userdel username
groupdel groupname
强化用户口令:
/etc/login.defs
文件来强制执行这些要求:PASS_MIN_LEN 10
awk -F ":" '$2 == "" {print $1}' /etc/shadow
强制设置符合规格的口令。保护口令文件:
chattr
命令给 /etc/passwd
, /etc/shadow
, /etc/group
, 和 /etc/gshadow
文件加上不可更改属性:chattr +i /etc/passwd
chattr +i /etc/shadow
chattr +i /etc/group
chattr +i /etc/gshadow
设置root账户自动注销时限:
/etc/profile
文件中的 TMOUT
参数,设置root账户的自动注销时限:vi /etc/profile
TMOUT=300
.bashrc
文件中添加该值。限制su命令:
/etc/pam.d/su
文件,限制只有特定组的用户才能使用 su
命令切换为root:usermod –G wheel username
防火墙配置:
firewalld
或 iptables
配置防火墙规则,限制对服务器的访问,只允许必要的端口对外开放。软件更新:
yum update
使用SSH密钥验证:
监控日志文件:
rsyslog
或 systemd-journald
收集和存储日志。通过实施上述措施,可以显著提高CentOS系统的安全性,减少受到网络攻击的风险。