Essential Linux System Security Configurations You Must Know
This guide details fourteen essential Linux security hardening steps—including shared account checks, account lock policies, root remote‑login restrictions, password complexity and aging, critical directory permissions, logging, SSH hardening, unnecessary service removal, Ctrl‑Alt‑Del disabling, and patch installation—targeted at Red Hat AS 3/4 systems.
1. Shared Account Check
配置名称:用户账号分配检查,避免共享账号存在
配置要求:1、系统需按照实际用户分配账号;
2、避免不同用户间共享账号,避免用户账号和服务器间通信使用的账号共享。
操作指南:cat /etc/passwd 查看当前所有用户的情况;
检查方法:cat /etc/passwd 查看当前所有用户的信息,与管理员确认是否有共享账号情况存在。
配置方法:#useradd username #创建账号
#passwd username #设置密码
适用版本:Linux Redhat AS 3、Linux Redhat AS 42. Unnecessary Account Lock Policy
配置名称:多余账户锁定策略
配置要求:应锁定与设备运行、维护等工作无关的账号。
操作指南:查看锁定用户:# cat /etc/password,查看哪些账户的shell域中为 nologin;
检查方法:# cat /etc/password 后查看多余账户的 shell 域为 nologin 为符合;
BVS 基线检查:多余账户处于锁定状态为符合。
配置方法:修改 /etc/password,将需要锁定的用户的 shell 域设为 nologin;
或使用 #passwd -l username 锁定账户;
#passwd -d username 解锁后原有密码失效,登录需输入新密码。
一般情况下,需要锁定的用户:lp, nuucp, hpdb, www, demon
适用版本:Linux Redhat AS 3、Linux Redhat AS 43. Root Remote‑Login Restriction
配置名称:root账户远程登录账户限制
配置要求:1、限制具备超级管理员权限的用户远程登录。
2、远程执行管理员权限操作,应先以普通权限用户登录后,再切换到超级管理员账号。
检查方法:1、root 远程登录不成功,提示 "Not on system console";
2、普通用户可以登录成功,而且可以切换到 root 用户。
配置方法:修改 /etc/ssh/sshd_config,将 PermitRootLogin yes 改为 PermitRootLogin no,重启 sshd 服务。
适用版本:Linux Redhat AS 3、Linux Redhat AS 44. Password Complexity Policy
配置名称:操作系统口令复杂度策略
配置要求:口令长度至少 12 位,并包括数字、小写字母、大写字母和特殊符号。
操作指南:# cat /etc/pam.d/system-auth,找到 password 模块配置行,例如:password requisite /lib/security/$ISA/pam_cracklib.so minlen=6
参数说明:retry=N(重试次数),minlen=N(最小长度,实际为 N‑1),dcredit=N(数字字符最少数量),ucredit=N(大写字符最少数量),lcredit=N(小写字符最少数量),ocredit=N(特殊字符最少数量)。
检查方法:# cat /etc/pam.d/system-auth,确认上述参数满足要求。
配置方法:编辑 /etc/pam.d/system-auth,修改对应属性。
适用版本:Linux Redhat AS 45. Maximum Password Lifetime
配置名称:口令最长生存期策略
配置要求:口令最长生存期不长于 90 天。
操作指南:# cat /etc/login.defs,检查 PASS_MAX_DAYS(最长使用期限)、PASS_MIN_DAYS(最短使用期限)和 PASS_WARN_AGE(到期提醒时间)。
检查方法:PASS_MAX_DAYS 值 ≤ 90 为符合。
配置方法:vi /etc/login.defs,修改 PASS_MAX_DAYS 为 ≤ 90。
适用版本:Linux Redhat AS 3、Linux Redhat AS 46. Critical Directory Permission Control
配置名称:关键目录权限控制
配置要求:根据安全需要,配置关键目录的最小权限,重点是 /etc/passwd、/etc/shadow、/etc/group。
操作指南:ls -l /etc/passwd
ls -l /etc/shadow
ls -l /etc/group
检查方法:与管理员确认已有权限为最小权限。
配置方法:chmod 644 /etc/passwd
chmod 600 /etc/shadow
chmod 644 /etc/group
如有写权限,执行 #chmod -R go-w,o-r /etc
适用版本:Linux Redhat AS 3、Linux Redhat AS 47. Default User Permission (umask) Control
配置名称:用户缺省权限控制
配置要求:创建新文件或目录时应屏蔽不应有的访问权限,防止同组或其他组用户修改。
操作指南:# cat /etc/bashrc 查看全局默认 umask 值;
查看用户 home 目录下 .bash_profile 中的 umask。
检查方法:全局 umask 为 027 或更小;用户 umask 亦遵循最小权限原则。
配置方法:在用户的 .bash_profile 中添加 "umask 027"(更严格场景建议 077);
全局修改 /etc/bashrc 中的 umask 值。
适用版本:Linux Redhat AS 3、Linux Redhat AS 48. Security Log Completeness
配置名称:安全日志完备性要求
配置要求:系统应记录所有安全相关事件。
操作指南:# cat /etc/syslog.conf 查看是否有相应配置;
# cat /var/log/secure 查看日志文件。
检查方法:/etc/syslog.conf 中应包含类似 "authpriv.* /var/log/secure" 的行;
/var/log/secure 中应记录所需的安全事件。
配置方法:编辑 /etc/syslog.conf,加入 "authpriv.* /var/log/secure"。
适用版本:Linux Redhat AS 3、Linux Redhat AS 49. Centralized Remote Log Server
配置名称:统一远程日志服务器配置
配置要求:将关键日志发送到远程日志服务器备份。
操作指南:# cat /etc/syslog.conf 查看当前配置。
检查方法:配置了远程日志服务器即为符合。
配置方法:编辑 /etc/syslog.conf,加入一行 "*.* @192.168.0.1"(*.* 可替换为实际需要的日志类别),
重启 syslog 服务:services syslogd restart。
适用版本:Linux Redhat AS 3、Linux Redhat AS 410. History Timestamp Setting
配置名称:设置history时间戳
配置要求:为审计目的在 bash history 中记录时间戳。
操作指南:# cat /etc/bashrc 查看是否已有 "export HISTTIMEFORMAT=\"%F %T\""。
配置方法:在 /etc/bashrc 中添加行:export HISTTIMEFORMAT="%F %T"
适用版本:Linux Redhat AS 411. SSH Login Configuration
配置名称:SSH登录配置
配置要求:使用 SSH(而非 Telnet)进行远程登录,并安全配置 sshd。
操作指南:# ps -elf|grep ssh 查看 SSH 服务状态;
# ps -elf|grep telnet 查看 Telnet 状态。
检查方法:1、禁止 Telnet;2、使用 SSH;3、SSH 配置必须满足:
Protocol 2
X11Forwarding yes
IgnoreRhosts yes
RhostsAuthentication no
RhostsRSAAuthentication no
HostbasedAuthentication no
PermitRootLogin no
PermitEmptyPasswords no
Banner /etc/motd
配置方法:编辑 /etc/ssh/sshd_config,加入上述选项并重启 sshd。
适用版本:Linux Redhat AS 412. Disable Unnecessary System Services
配置名称:关闭不必要的系统服务
配置要求:根据服务器角色关闭不需要的服务,如 sendmail、telnet、bind 等。
操作指南:# chkconfig --list 查看已启用的服务。
检查方法:与管理员确认无用服务已关闭。
配置方法:# service <服务名> stop
# chkconfig --level 35 off <服务名>
建议禁用的服务包括:lpd、telnet、routed、sendmail、Bluetooth、identd、xfs、rlogin、rwho、rsh、rexec、以及基于 inetd/xinetd 的 daytime、chargen、echo 等。
适用版本:Linux Redhat AS 3、Linux Redhat AS 413. Disable Ctrl‑Alt‑Delete Reboot
配置名称:禁止Control-Alt-Delete键盘关闭命令
配置要求:防止误操作导致服务器重启。
操作指南:cat /etc/inittab 查看配置。
检查方法:/etc/inittab 中应有 "#ca::ctrlaltdel:/sbin/shutdown -t3 -r now"(已注释)为符合。
配置方法:在 /etc/inittab 中注释掉对应行(在行首加 #),然后执行 # /sbin/init q 使改动生效。
适用版本:Linux Redhat AS 414. Install OS Update Patches
配置名称:安装操作系统更新补丁
配置要求:安装最新的安全补丁以修复系统漏洞。
操作指南:1、查看当前系统补丁版本;
2、访问 Red Hat 官方 errata 页面下载对应的 rpm 包。
检查方法:系统版本应保持为最新。
配置方法:下载 rpm 包后使用 rpm -ivh xxx.rpm 安装,随后重启系统并验证服务正常。
适用版本:Linux Redhat AS 3、Linux Redhat AS 4Reference link: https://www.cnblogs.com/sun-sunshine123/p/7119472.html
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Linux Tech Enthusiast
Focused on sharing practical Linux technology content, covering Linux fundamentals, applications, tools, as well as databases, operating systems, network security, and other technical knowledge.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
