打造坚不可摧的CentOS服务器:全面安全配置指南

科技   2024-10-17 08:09   上海  
CentOS系统因其稳定性和安全性而广受欢迎。但即使是最好的系统,也需要正确的配置来确保其坚不可摧。本文将分享一系列全面的安全配置策略,帮助你打造一个安全的CentOS服务器。

禁用非必要的超级用户

首先,我们需要确保系统中只有必要的超级用户。通过查看/etc/passwd文件,我们可以检测到具有超级用户权限的账户(user_ID=0)。我们可以使用以下命令来备份并锁定或解锁这些账户:
cat /etc/passwd | awk -F ':' '{print$1,$3}' | grep ' 0$' # 检测命令
cp -p /etc/passwd /etc/passwd_bak  #  备份方法:
passwd -l <用户名> # 锁定账户
passwd -u <用户名> # 解锁账户

删除不必要的账户

为了减少系统受攻击的风险,我们应该删除所有不必要的默认账户,如adm, lp, sync等。使用以下命令可以删除这些账户:
userdel username
groupdel groupname

强化用户口令

用户口令是系统安全的基础。我们应该设置复杂的口令,包含大写字母、小写字母、数字和特殊字符,并且长度大于10位。我们可以通过修改/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

限制su命令

我们可以通过编辑/etc/pam.d/su文件,限制只有特定组的用户才能使用su命令切换为root:
usermod –G wheel username

限制普通用户的敏感操作

为了防止普通用户执行关机、重启等敏感操作,我们可以删除或修改/etc/security/console.apps下的相应程序的访问控制文件。
删除/etc/security/console.apps下的
haltrebootpoweroffshutdown等程序的访问控制文件

整体删除/etc/security/console.apps
rm –rf /etc/security/console.apps/*

禁用ctrl+alt+delete重启命令

通过修改/etc/inittab文件,我们可以禁用ctrl+alt+delete组合键重启机器的命令。
修改/etc/inittab文件,将"ca::ctrlaltdel:/sbin/shutdown-t3-rnow"一行注释掉。

设置开机启动服务权限

为了确保系统的启动服务安全,我们应该设置/etc/rc.d/init.d/目录下所有文件的权限,以确保只有root用户可以操作这些服务。

避免登录时显示系统信息

为了防止系统信息泄露,我们应该避免在登录时显示系统和版本信息。

限制NFS网络访问

对于使用NFS网络文件系统服务的系统,我们应该确保/etc/exports文件具有最严格的访问权限设置。

登录终端设置

通过编辑/etc/securetty文件,我们可以限制root用户只能在特定的tty设备上登录。

防止攻击

为了防止IP欺骗和DoS攻击,我们可以编辑host.conf文件和设置资源限制,如最大进程数和内存使用量。

    • order hosts, bind      # 指定名称解析顺序

    • multi on               # 允许主机拥有多个 IP 地址

    • nospoof on             # 禁止 IP 地址欺骗


阻止ping和抵御SYN攻击

通过调整系统的网络参数,如tcp_max_syn_backlog, tcp_syncookies, tcp_synack_retriestcp_syn_retries,我们可以增加系统的安全性。

释然IT杂谈
本公众号专注于分享网络工程(思科、华为),系统运维(Linux)、以及安全等方面学习资源,以及相关技术文章、学习视频和学习书籍等。期待您的加入~~~关注回复“724”可领取免费学习资料(含有书籍)。
 最新文章