【服务】Linux系统安全加固手册
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【关键字】服务
密级:商业秘密
LINUX评估加固手册
安氏领信科技发展有限公司
二〇二一年二月
目录
1、系统补丁的安装
RedHat使用RPM包实现系统安装的管理,系统没有单独补丁包(Patch)。如果出现新的漏洞,则发布一个新的RPM包,版本号(Version)不变,Release做相应的调整。因此检查RH Linux的补丁安装情况只能列出所有安装的软件,和RH 网站上发布的升级软件对照,检查其中的变化。
通过访问官方站点下载最新系统补丁,RedHat公司补丁地址如下:
rpm -qa 查看系统当前安装的rpm包
rpm -ivh package1 安装RPM包
rpm -Uvh package级RPM包
rpm -Fvh package级RPM包(如果原先没有安装,则不安装)
2、帐户、口令策略的加固
2.1、删除或禁用系统无用的用户
询问系统管理员,确认其需要使用的帐户
如果下面的用户及其所在的组经过确认不需要,可以删除。
lp, sync, shutdown, halt, news, uucp, operator, games, gopher
修改一些系统帐号的shell变量,例如uucp,ftp和news等,还有一些仅仅需要FTP功能的帐号,检查并取消/bin/bash或者/bin/sh等Shell变量。可以在/etc/passwd中将它们的shell变量设为/bin/false或者/dev/null等。也可以通过passwd groupdel 来锁定用户、删除组。
passwd -l user1锁定user1用户
passwd -u user1 解锁user1用户
groupdel lp 删除lp组。
2.2、口令策略的设置
RedHat Linux总体口令策略的设定分两处进行,第一部分是在/etc/login.defs文件中定义,其中有四项相关内容:
PASS_MAX_DAYS 密码最长时效(天)
PASS_MIN_DAYS 密码最短时效(天)
PASS_MIN_LEN 最短密码长度
PASS_WARN_AGE 密码过期前PASS_WARN_AGE天警告用户
编辑/etc/login.defs文件,设定:
PASS_MAX_DAYS=90
PASS_MIN_DAYS=0
PASS_MIN_LEN=8
PASS_WARN_AGE=30
另外可以在/etc/pam.d/system-auth文件中的cracklib项中定义口令强度:difok
minlen
dcredit
ucredit
lcredit
ocredit
使用vi编辑/etc/pam.d/system-auth文件,设置cracklib的属性
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required /lib/security/pam_env.so
auth sufficient /lib/security/pam_unix.so likeauth nullok
auth required /lib/security/pam_deny.so
account required /lib/security/pam_access.so
account required /lib/security/pam_unix.so
password required /lib/security/pam_cracklib.so retry=3 type= difok=4 minlen=12 dcredit=1 ucredit=2 lcredit=2 ocredit=1
password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shado
w
password required /lib/security/pam_deny.so
session required /lib/security/pam_limits.so
session required /lib/security/pam_unix.so
2.3、系统是否允许root远程登录
RedHat在文件/etc/securetty中定义root用户可以登录的端口;默认其中只包含
vc/1-11和tty1-11,即root用户只能从本地登录。
2.4、root的环境变量设置
系统的环境变量在下列文件中设置:
Bash:
/etc/profile
~/.bash_profile
~/.bash_login
~/.profile
~/.bashrc
/etc/bashrc
Tcsh/Csh:
/etc/csh.cshrc
/etc/csh.login
~/.tcshrc或~/.cshrc
~/.history
~/.login
~/.cshdirs
printenv 查看用户的环境变量
检查环境变量PATH,确保其中不包含本地目录(.)。
3、网络与服务加固
3.1、rc?.d中的服务的设置
RedHat的服务主要由/etc/inittab和/etc/rc?.d/S*文件启动,事实上,/etc/inittab的主要任务是为每一个runlevel指定启动文件,从而启动/etc/rc?.d/S*文件。例如,在默认的运行级别3中系统将运行/etc/rc3.d/目录中所有S打头的文件。