SUSE 系统加固

旧时模样 提交于 2021-02-12 09:46:58

1.身份鉴别

1.1   检查是否设置口令复杂度             

#vi /etc/pam.d/common-password  改为如下两行:

password requisite pam_cracklib.so minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 
password required pam_unix2.so use_authtok nullok

密码要求: (minlen=8)最少8位,(ucredit=-1)至少包含1个大写字母,(lcredit=-1)至少包含一个小写字母,(dcredit=-1)至少包含一个数字个数,(ocredit=-1)至少包含一个特殊字符

 

1.2   检查是否设置口令生存期

#vi /etc/login.defs  中确保为如下值

        PASS_MAX_DAYS 90

 

1.3   检查是否删除无关账号   

锁定如下账号                 锁定后登陆页面不会显示该用户

#usermod -L games

#usermod -L nobody

 

2.访问控制

2.1   检查是否配置登陆超时时间设置

#vi /etc/profile  确保如下设置

export TMOUT=600

 

2.2   检查是否设置文件与目录缺省权限

#vi /etc/profile  确保如下设置

umask 027

 

2.3   普通用户不允许Root登录

vi /etc/pam.d/su

添加 auth suffcient pam_rootok.so

添加auth required pam_wheel.so group=wheel

cat /etc/group

查看是否存在wheel组,没有则添加组wheel

 

2.4   检查是否记录cron行为日志

#vi /etc/rsyslog.conf   确保开启如下设置

cron.*   /var/log/cron

 

如果/var/log/cron文件不存在:

#touch /var/log/cron

#chmod 775 /var/log/cron

 

重启生效

#systemctl restart rsyslog.service

 

SUSE11-SP4启动:

/etc/init.d/syslog restart

 

2.5   检查是否日志文件安全   rwx  rx rx

确保如下日志文件的权限为755,其他用户不可修改

/var/log/messages      rwx rwx rx

确保如下日志文件的权限为775,其他用户不可修改

 

/var/log/secure   

/var/log/spooler

/var/log/maillog

/var/log/mail

/var/log/boot.log

/var/log/cron

 

2.6   检查是否配置用户所需最小权限

检查如下文件的权限是否设置正确:

/etc/passwd    -   644

/etc/shadow    -   600

/etc/group     -    644

 

2.7   检查是否修改系统Banner

隐藏系统banner信息

#mv /etc/issue /etc/issue.bak

#mv /etc/issue.net /etc/issue.net.bak

 

2.8    

vi /etc/vsftpd.conf (或者/etc/vsftpd/vsftpd.conf)

修改ftpd_banner=”Authorized users only. All activity will be monitored and reported.”

重启:/ec/init.d/vsftpd restart(或者systemctl restart vsftpd.service)

 

3.安全审计

3.1   检查是否启用syslog日志审计

#vi /etc/rsyslog.conf   确保开启如下设置,

authpriv.*   /var/log/secure

没有文件则添加

touch /var/log/secure

chmod 775 /var/log/secure

如果更改了配置文件,需要重启生效

#systemctl restart rsyslog.service

4.入侵防范

4.1   检查是否关闭不必要的服务和端口

关闭服务的方法如下:

# systemctl stop service

#systemctl disable service

检查如下服务是否关闭:

检查方法:systemctl status service

daytime

time

echo

discard

chargen

sendmail

ntalk

ident

printer

bootps

tftp

kshell

klogin

lpd

nfs

nfs.lock

ypbind

ftp

5.资源控制

5.1   禁用telnet协议

#vi /etc/services  注释掉如下行

    #telnet             23/tcp       # Telnet  [Jon_Postel] [RFC854]

   #telnet             23/udp       # Telnet  [Jon_Postel] [RFC854]

重启服务:service xinetd restart

 

 

SUSE11-SP4:

区别:systemctl命令没有

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!