2024年3月5日发(作者:)
Suse11合规整改参考
1 SUSE主机bash漏洞检查项
加固建议:
升级Bash程序的版本到最新版本,卸载老的版本
补充说明:
各系统提供商的详细漏洞建议(参考)
/security/cve/
2-6602-检查是否删除或锁定无关账号
判断条件:
lp uucp nobody games rpm smmsp nfsnobody这些帐户不存在或者它们的密码字段为!!
命令:
egrep -w "lp|nobody|uucp|games|rpm|smmsp|nfsnobody" /etc/shadow |awk -F: '($2!~"!")
{print $1":"$2}'
echo "result="`egrep -w "lp|nobody|uucp|games|rpm|smmsp|nfsnobody" /etc/shadow |awk -F:
'($2!~"!") {print $1":"$2}'|wc -l`
方法:
有4个无用帐号未锁定
整改:
vi /etc/shadow
把这些无用帐号锁定
在帐号冒号“:”后加“!!*LK*”
整改后合规
3-6614-检查是否记录帐户操作日志
判断条件:
/var/adm目录下存在pacct文件
命令:
ls -l /var/adm|grep pacct
echo "result="`ls -l /var/adm|grep pacct|wc -l`
方法:1
touch /usr/sbin/accton #穿件文件 accton 文件位置 /usr/sbin/accton
chmod 755 /usr/sbin/accton #修改文件权限 以便后面可以修改其位置
/usr/sbin/accton /var/adm/pact #修改文件位置
方法2:
如不存在acct请安装
4-6603-检查是否限制root远程登录
判断条件:
/etc/ssh/sshd_config文件中PermitRootLogin值为no,并且/etc/security/user下值为pts
方法:
1修改/etc/ssh/sshd_config文件中PermitRootLogin值为no
2 重启ssh服务 service sshd restart
5-6604-检查是否按角色进行帐号管理
判断条件:
/etc/passwd文件中,GID大于系统设定的GID_MIN并且小于GID_MAX,帐号名中不存在oracle、sybase、postgres、daemon、nobody、noaccess的角色数量大于等于1
命令:
#boco##%6604#%
#!/bin/bash
UP_GIDMIN=`(grep -v ^# /etc/ |grep "^GID_MIN"|awk '($1="GID_MIN") {print $2}')`
UP_GIDMAX=`(grep -v ^# /etc/ |grep "^GID_MAX"|awk '($1="GID_MAX") {print $2}')`
egrep -v "oracle|sybase|postgres|daemon|nobody|noaccess" /etc/passwd|awk -F:
'($4>='$UP_GIDMIN' && $4<='$UP_GIDMAX') {print $1":"$3":"$4}'
echo $UP_GIDMIN $UP_GIDMAX
echo "result="`egrep -v "oracle|sybase|postgres|daemon|nobody|noaccess" /etc/passwd|awk
-F: '($4>='$UP_GIDMIN' && $4<='$UP_GIDMAX') {print $1":"$3":"$4}'|wc -l`
unset UP_GIDMIN UP_GIDMAX
#boco##%6604#%
方法:
再新增一个普通用户
useradd boco # 新增普通用户,为了防止使用敏感帐号root登录
passwd boco #设置密码
删除用户
userdel boco
groupadd –g GID groupname
6-6605-检查口令策略设置是否符合复杂度要求
判断标准:
/etc/pam.d/passwd文件中password required pam_配置minlen大于等于8,
lcredit=-1、ucredit=-1、dcredit=-1、ocredit=-1配置必须存在两类;
SUSE9:
#vi /etc/pam.d/passwd,增加如下内容
password required pam_ minlen=8 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1
合规平台:suse10
SUSE10
两个文件同时存在
SUSE10检查/etc/pam.d/common-password和/etc/pam.d/passwd文件中password required
pam_配置minlen大于等于8, lcredit=-1、ucredit=-1、dcredit=-1、
ocredit=-1配置必须存在两类
有的实际修改:suse10
(1)/etc/pam.d/common-password
(2)/etc/pam.d/system-auth
suse11:
#vi /etc/pam.d/common-password,增加如下内容
password required pam_ minlen=8 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1
7-6608-检查口令重复次数限制
判断标准:
/etc/pam.d/passwd文件中存在remember值大于等于5
SUSE9:
#vi /etc/pam.d/passwd,增加如下内容
password required pam_ remember=5
SUSE10、11:
#vi /etc/pam.d/common-password,增加如下内容
password required pam_ nullok #如存在则不加入
password required pam_ remember=5 #紧挨着上一行加入本行内容
8-6609-检查口令锁定策略
判断标准:
common-auth文件中存在deny的值小于等于6;
Suse11
vi /etc/pam.d/common-auth
添加:
auth required pam_ onerr=fail deny=6 unlock_time=300
vi /etc/pam.d/common-account
添加:
account required pam_ reset
9-6606-检查口令生存周期要求
判断标准:
/etc/文件中PASS_MAX_DAYS值不大于90
命令:
cat /etc/ |sed '/^#/d'|sed '/^$/d'
方法:
#vi /etc/,修改设置如下
PASS_MAX_DAYS 90 设置密码过期日期
PASS_MIN_DAYS 0 设置密码最少更改日期
PASS_MIN_LEN 8 设置密码最小长度
10-6610-检查帐号文件权限设置
判断标准:
/etc/passwd权限为644,/etc/shadow权限为400,/etc/group权限为644
使用如下命令设置:
chmod 644 /etc/passwd
chmod 400 /etc/shadow
chmod 644 /etc/group
11-6611-检查用户缺省UMASK
判断标准:
/etc/profile文件中umask值大于等于027
命令:
cat /etc/profile|grep -i umask|egrep -i "^umask"
方法:
#vi /etc/profile
设置umask值大于等于027
12-6616-检查是否配置远程日志保存
判断标准:
/etc/syslog-ng/,/etc/,/etc/中存在类似@ IP或者udp IP或者destination
方法:/etc/syslog-ng/
13-6625-检查是否非活动时断线
1、判定条件
用户登录后,配置时间内无任何操作,没有自动断开连接,则低于安全要求
判断标准:
#cat /etc/ssh/sshd_config
ClientAliveCountMax的值等于0,并且ClientAliveInterval 的值小于等于300
命令:
cat /etc/ssh/sshd_config|grep -v "^#"|grep -v '^$'
方法:
#vi /etc/ssh/sshd_config
设置ClientAliveCountMax 的值改为0
设置ClientAliveInterval 的值改为300(5分钟即断线)
3、重启sshd服务:
#service sshd restart
方法:
#service sshd restart
14-6626-检查是否禁止icmp重定向
判断标准:
/etc/文件配置了_redirects等于0
命令:
cat /etc/ | grep -v '^#'| grep -v '^$'
echo "accept_redirects="`(sysctl -n _redirects)`
echo "accept_source_route"=`(sysctl -n _source_route)`
方法:
vi /etc/添加
_redirects = 0
重启网卡
service network restart
有过重启服务也不生效,只能重启服务器reboot
问题:检查是否记录su日志
整改了这个文件后还是不合规:
/etc/syslog-ng/
原因:日志文件没有启用,在/etc/sysconfig/syslog 的SYSLOG_DAEMON的值是空的,把值配置成syslog-ng后即可
Suse10密码复杂度
Suse10修改的文件,版本不通修改的文件也不通。
顺序:
(1)/etc/pam.d/system-auth
(2)/etc/pam.d/common-password
(3)/etc/pam.d/passwd
目前的情况是:有第一个文件的修改第一个文件/etc/pam.d/system-auth;
没有第一个文件的修改第二个文件/etc/pam.d/common-password
GZGY-PS-MMSG2-SV01:~ # lsb_release -a
LSB Version:
core-2.0-noarch:core-3.0-noarch:core-2.0-x86_64:core-3.0-x86_64:desktop-3.1-amd64:desktop-3.1-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.1-amd64:graphics-3.1-noarch
Distributor ID: SUSE LINUX
Description: SUSE Linux Enterprise Server 10 (x86_64)
Release: 10
Codename: n/a
GZGY-PS-MMSG2-SV01:~ #
合规的结果为true
Suse10
GZGY-PS-WAP2-GW01:~ # lsb_release -a
LSB Version:
core-2.0-noarch:core-3.0-noarch:core-2.0-ia32:core-3.0-ia32:desktop-3.1-ia32:desktop-3.1-noarch:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: SUSE LINUX
Description: SUSE Linux Enterprise Server 10 (i586)
Release: 10
Codename: n/a
GZGY-PS-WAP2-GW01:~ #
///////////////////////////////////////////////////////////
整改:
/etc/pam.d/system-auth
password requisite pam_ dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1
minclass=2 minlen=8
suse10-用户
检查FTP配置-限制用户FTP登录
适用于Suse9、10、11
1、执行备份:
cp -p /etc/ftpusers /etc/ftpusers_20150811
2、修改文件/etc/ftpusers限制某些系统账户不准ftp登录:
vi /etc/ftpusers
在文件中增加以下用户,则该用户均不允许通过ftp登录:
root
daemon
bin
sys
adm
lp
uucp
nuucp
listen
noaccess
nobody4
补充说明:贵州这边的检查,是扫描/etc/ftpusers文件,有6个账号就通过
限制FTP登录的用户包括:root daemon bin sys adm lp uucp nuucp listen nobody noaccess
nobody4
检查是否记录帐户操作日志
1、启动服务:
/etc/init.d/acct start
2、日志目录:
默认为:/var/log/account/pacct,需先创建pacct文件,再使用/usr/sbin/accton file_path命令修改acct记录的位置,操作如下:
#touch /var/adm/pacct
#/usr/sbin/accton /var/adm/pacct
#/etc/init.d/acct restart
补充说明:
如不存在acct请安装。
检查用户缺省UMASK
1、执行备份:
cp -p /etc/profile /etc/profile_20150811
2、修改文件/etc/profile
vi /etc/profile
设置umask值大于等于027
检查口令重复次数限制 检查口令策略设置是否符合复杂度要求
1、执行备份:
cp -p /etc/pam.d/common-password /etc/pam.d/common-password_20150811
2、修改文件
vi /etc/pam.d/common-password
password required pam_ nullok #如存在则不加入
password required pam_ remember=5
password required pam_ minlen=8 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1
部分suse10:
1、执行备份:
#cp -p /etc/pam.d/common-password /etc/pam.d/common-password_bak
2、修改文件
#vi /etc/pam.d/system-auth,【WAP2的suse10设备】增加如下内容
password required pam_ minlen=8 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1
检查口令锁定策略
1、执行备份:
cp -p /etc/pam.d/common-auth /etc/pam.d/common-auth_20150811
2、修改文件
vi /etc/pam.d/common-auth
增加如下内容
auth required pam_ onerr=fail deny=6 unlock_time=300 #6次登陆失败,锁定账号5分钟
3、修改文件 #
vi /etc/pam.d/common-account
account required pam_ reset
检查是否使用ssh替代telnet服务
适用于Suse9、10、11
A、启动SSH
#/etc/init.d/sshd start来启动SSH
B、关闭网络服务端口telnet并且ssh开启服务
补充说明:
查看SSH、telnet服务状态:
# ps –elf|grep ssh
# ps –elf|grep telnet
SSH服务状态查看结果为:online
telnet服务状态查看结果为:disabled
检查帐号文件权限设置
chmod 644 /etc/passwd
chmod 400 /etc/shadow
chmod 644 /etc/group
检查是否配置日志选项
cp -p /etc/ /etc/_20150811
vi /etc/
filter f_cron { facility(cron); };
destination cron { file("/var/log/cronlog"); };
log { source(src); filter(f_cron); destination(cron); };
检查是否配置日志选项
1、执行备份:
#cp -p /etc/syslog-ng/ /etc/syslog-ng/_20150811
2、修改配置文件
#vi /etc/syslog-ng/
配置如下语句:
filter f_cron { facility(cron); };
destination cron { file("/var/log/cronlog"); };
log { source(src); filter(f_cron); destination(cron); };
3、修改日志文件权限
touch /var/log/cronlog
chmod 644 /var/log/cronlog
4、重新启动syslog服务
#service cron restart
部分suse10:
1、执行备份:
#cp -p /etc/ /etc/_bak
2、修改配置文件
#vi /etc/ 【彩铃suse10设备】
配置如下语句:
filter f_cron { facility(cron); };
destination cron { file("/var/log/cronlog"); };
log { source(src); filter(f_cron); destination(cron); };
检查是否非活动时断线
1、执行备份:
#cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_20150811
2、修改配置文件
#vi /etc/ssh/sshd_config
设置ClientAliveCountMax 的值改为0
设置ClientAliveInterval 的值改为300(5分钟即断线)
3、重启sshd服务:
#service sshd restart
检查是否禁止icmp重定向
1、备份文件:
#cp -p /etc/ /etc/_bak
2、执行:
#vi /etc/,加上_redirects=0
用户以下命令修改_redirects的值为0,修改内存
sysctl -w _redirects=0
步骤 1 查看哪些用户被锁定:
pam_tally
步骤 2 为用户解锁:
pam_tally --user oracle --reset=0


发布评论