1、Linux系统安全配置标准V10服务器系统安全加固技术要求Linux服务器中国电信股份有限公司广州研究院2009年3月目 录1 补丁1.1 系统补丁要求及时安装系统补丁。更新补丁前,要求先在测试系统上对补丁进行可用性和兼容性验证。系统补丁安装方法为(以下示例若无特别说明,均以RedHat Linux为例):使用up2date命令自动升级或在下载对应版本补丁手工单独安装。对于企业版5及之后的版本,可以直接使用yum工具进行系统补丁升级:yum update1.2 其他应用补丁除Linux开发商官方提供的系统补丁之外,基于Linux系统开发的服务和应用(如APACHE、PHP、OPENSSL、MY
2、SQL等)也必须安装最新的安全补丁。以RedHat Linux为例,具体安装方法为:首先确认机器上安装了gcc及必要的库文件。然后再应用官方网站下载对应的源代码包,如 *.tar.gz,并解压:tar zxfv *.tar.gz根据使用情况对编译配置进行修改,或直接采用默认配置。cd *./configure进行编译和安装:makemake install注意:补丁更新要慎重,可能出现硬件不兼容、或者影响当前应用系统的情况。安装补丁前,应该在测试机上进行测试。2 账号和口令安全配置基线2.1 账号安全控制要求系统中的临时测试账号、过期无用账号等必须被删除或锁定。以RedHat Linux为例,
3、设置方法如下:锁定账号:/usr/sbin/usermod -L -s /dev/null $name删除账号:/usr/sbin/user $name2.2 口令策略配置要求要求设置口令策略以提高系统的安全性。例如要将口令策略设置为:非root用户强制在90天内更该口令、之后的7天之内禁止更改口令、用户在口令过期的28天前接受到系统的提示、口令的最小长度为6位。以RedHat Linux为例,可在/etc/login.def文件中进行如下设置:vi /etc/login.defPASS_MAX_DAYS 90PASS_MIN_DAYS 7PASS_MIN_LEN 6PASS_WARN_AGE
4、 282.3 root登录策略的配置要求禁止直接使用root登陆,必须先以普通用户登录,然后再su成root。禁止root账号远程登录,以RedHat Linux为例,设置方法为: touch /etc/securettyecho “console” /etc/securetty2.4 root的环境变量基线root环境变量基线设置要求如表2-1所示:表 21 root环境变量基线设置修改文件安全设置操作说明/etc/profilePATH设置中不含本地目录(.)1.查看root账号的环境变量,env2.如果root的PATH变量包含本地目录,则去掉本地目录”.”。3 网络与服务安全配置标准3
5、.1 最小化启动服务1、 Xinetd服务如果xinetd服务中的服务,都不需要开放,则可以直接关闭xinetd服务。chkconfig -level 12345 xinetd off2、 关闭邮件服务1) 如果系统不需要作为邮件服务器,并不需要向外面发邮件,可以直接关闭邮件服务。chkconfig -level 12345 sendmail off2) 如果不需要作为邮件服务器,但是允许用户发送邮件,可以设置Sendmail不运行在daemon模式。编辑/etc/sysconfig/senmail文件,增添以下行:DAEMON=noQUEUE=1h设置配置文件访问权限:cd /etc/sys
6、config/bin/chown root:root sendmail/bin/chmod 644 sendmail3、 关闭图形登录服务(X Windows)在不需要图形环境进行登录和操作的情况下,要求关闭X Windows。编辑/etc/inittab文件,修改id:5:initdefault:行为id:3:initdefault:设置配置文件访问权限:chown root:root /etc/inittabchmod 0600 /etc/inittab4、 关闭X font服务器服务如果关闭了X Windows服务,则X font服务器服务也应该进行关闭。chkconfig xfs of
7、f5、 关闭其他默认启动服务系统默认会启动很多不必要的服务,有可能造成安全隐患。建议关闭以下不必要的服务:apmd canna FreeWnn gpm hpoj innd irda isdn kdcrotate lvs mars-nwe oki4daemon privoxy rstatd rusersd rwalld rwhod spamassassin wine nfs nfslock autofs ypbind ypserv yppasswdd portmap smb netfs lpd apache httpd tux snmpd named postgresql mysqld webm
8、in kudzu squid cupschkconfig -level 12345 服务名 off在关闭上述服务后,应同时对这些服务在系统中的使用的账号(如rpc、rpcuser、lp、apache、http、httpd、named、dns、mysql、postgres、squid等)予以锁定或删除。usermod -L 要锁定的用户3.2 最小化xinetd网络服务1、 停止默认服务要求禁止以下Xinetd默认服务:chargen chargen-udp cups-lpd daytime daytime-udp echo echo-udp eklogin finger gssftp imap
9、 imaps ipop2 ipop3 krb5-telnet klogin kshell ktalk ntalk pop3s rexec rlogin rsh rsync servers serviceschkconfig 服务名 off2、 其他对于xinet必须开放的服务,应该注意服务软件的升级和安全配置,并推荐使用SSH和SSL对原明文的服务进行替换。如果条件允许,可以使用系统自带的iptables或tcp-wrapper功能对访问IP地址进行限制。4 文件与目录安全配置4.1 临时目录权限配置标准临时目录/tmp、/var/tmp必须包含粘置位,以避免普通用户随意删除由其他用户创建的文
10、件。chmod +t /tmp 为/tmp增加粘置位。4.2 重要文件和目录权限配置标准在Linux系统中,/usr/bin、/bin、/sbin目录为可执行文件目录,/etc目录为系统配置目录,包括账号文件、系统配置、网络配置文件等,这些目录和文件相对重要。重要文件及目录的权限配置标准必须按照表4-1进行配置。表 41 重要文件和目录权限配置标准列表文件或目录属主属组权限/etc/passwdrootRoot-rw-r-r-/etc/grouprootRoot-rw-r-r-/etc/hostsrootRoot-rw-rw-r-/etc/inittabrootRoot-rw-4.3 umas
11、k配置标准umask命令用于设置新创建文件的权限掩码。要求编辑/etc/profile文件,设置umask为027;在系统转成信任模式后,可设置umask为077。4.4 SUID/SGID配置标准SUID/SGID的程序在运行时,将有效用户ID改变为该程序的所有者(组)ID,使得进程拥有了该程序的所有者(组)的特权,因而可能存在一定的安全隐患。对于这些程序,必须在全部检查后形成基准,并定期对照基准进行检查。查找此类程序的命令为:# find / -perm -4000 -user 0 ls 查找SUID可执行程序# find / -perm -2000 -user 0 ls 查找SGID可执
12、行程序 5 信任主机的设置1. 原则上关闭所有R系列服务:rlogin、rsh、rexec2. 对于需要以信任主机方式访问的业务系统,按照表5-1所示方式设置:表 51 信任主机的设置方法修改文件安全设置操作说明1. /etc/hosts.equiv(全局配置文件)2. /.rhosts(单独用户的配置文件)限定信任的主机、账号不能有单行的+或+ +的配置信息1. 编辑/etc/host.equiv文件或者/.rhosts文件,不能只采用主机信任的方式,而必须采用账号和主机的方式,删除不必要的信任主机设置。2. 更改/etc/hosts.equiv文件的属性,只允许root可读写。6 系统Ba
13、nner的配置要求修改系统banner,以避免泄漏操作系统名称、版本号、主机名称等,并且给出登陆告警信息。1. 修改/etc/issue文件,加入:ATTENTION:You have logged onto a secured server.ONLY Authorized users can access.2. 修改/etc/文件,加入:ATTENTION:You have logged onto a secured server.ONLY Authorized users can access.3. 修改/etc/inetd.conf文件,在telnet一行的最后,更改telnetd为te
14、lnetd b /etc/issue,增加读取banner参数。4. 重启inetd进程。Kill HUP “inetd进程pid”7 内核参数要求调整以下内核参数,以提高系统安全性: 设置tcp_max_syn_backlog,以限定SYN队列的长度 设置rp_filter为1,打开反向路径过滤功能,防止ip地址欺骗 设置accept_source_route为0, 禁止包含源路由的ip包 设置accept_redirects为0, 禁止接收路由重定向报文,防止路由表被恶意更改 设置secure_redirects为1,只接受来自网关的“重定向”icmp报文配置方法为:编辑/etc/sysc
15、tl.conf,增加以下行:net.ipv4.tcp_max_syn_backlog = 4096net.ipv4.conf.all.rp_filter = 1net.ipv4.conf.all.accept_source_route = 0net.ipv4.conf.all.accept_redirects = 0net.ipv4.conf.all.secure_redirects = 0net.ipv4.conf.default.rp_filter = 1net.ipv4.conf.default.accept_source_route = 0net.ipv4.conf.default.a
16、ccept_redirects = 0net.ipv4.conf.default.secure_redirects = 0设置配置文件权限:/bin/chown root:root /etc/sysctl.conf/bin/chmod 0600 /etc/sysctl.conf在系统不作为不同网络之间的防火墙或网关时,要求进行如下设置。 设置ip_forward为0, 禁止ip转发功能 设置send_redirects为0, 禁止转发重定向报文配置方法如下:编辑/etc/sysctl.conf,增加:net.ipv4.ip_forward = 0net.ipv4.conf.all.send_r
17、edirects = 0net.ipv4.conf.default.send_redirects = 08 syslog日志的配置1. syslog的基线配置要求如表8-1所示:表 81 syslog日志安全配置列表修改文件安全设置操作说明/etc/syslog.conf配置文件中包含以下日志记录:*.err /var/adm/errorlog*.alert /var/adm/alertlog*.cri /var/adm/critlogauth,authpriv.info /var/adm/authlogSyslog的配置文件/etc/rc.config.d/syslogdSYSLOGD_OP
18、TS = “-DN”Syslogd不接收远程主机的日志2. 要求将日志输出至专用日志服务器,或者至少输出至本地文件中。附件:选装安全工具工具名称TCP Wrapper工具用途该软件为大多数网络服务提供访问控制与日志记录的功能。相关信息工具名称Tripwire工具用途该工具为关键文件创建检验值数据库,当这些关键文件发生变化时,给root以提示信息。相关信息工具名称Lsof工具用途该工具报告进程打开的文件、进程侦听的端口等信息。相关信息工具名称SSH工具用途该工具为主机间远程通讯提供加密通道。用来代替rsh、rlogin、telnet等远程登录工具。相关信息 工具名称Logwatch工具用途该工具为一款系统日志分析工具,比如用户登录失败信息、SSH 登录信息、磁盘空间使用等.相关信息工具名称Chkrootkit工具用途该工具为一款rootkit检测工具 ,定期在主机上运行可检测出流行的rootkit。相关信息
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1