配置口令复杂度:
vi /etc/pam.d/system-auth
添加:
password requisite pam_cracklib.so difok=3 minien=8 ucredit=1
lcredit=-1 dcredit=1
#3种类型组合,最短8位
设置口令认证失败锁定次数:
添加:
auth required pam_tally.so onerr=fail deny=10 unlock_time=300
配置口令生存期:
是否有以下配置:root/root/, test/test
修改 /etc/login.defs
PASS_MAX_DAYS 90
PASS_MIN_DAYS 0
配置远程ssh访问:
service ssh status
service telnet status
可以通过堡垒机进行身份识别,传输信息要加密
配置历史口令使用策略:
ubuntu/debian:
vi /etc/pam.d/common-password
centos/red hat/fedora:
vi /etc/pam.d/system-auth
找到:password sufficient pam_unix.so user_authtok md5 shadow remember=5 #不能使用相同的5次口令
后面添加remember=10,而不是下一行
访问控制:
禁止共享账号:
cat /etc/passwd
cat /etc/shadow
cat /etc/group
着重看/bin/bash,因为可以远程登录
锁定无关账号:
passwd -l
passwd -d
后面加上用户名
清除uid为0的非root账号:
awk -F: '($3==0){print $1}' /etc/passwd
设置umask值:
查看:
more /etc/profile
more /etc/csh.login
more /etc/csh.cshrc
more /etc/bashrc
保证umask=207
配置重要的目录与文件权限:
着重看:
/etc/; /etc/rc.d/init.d/; /tmp; /etc/inetd.conf/; /etc/passwd/;
/etc/shadow/; /etc/group/;/etc/service/;
控制未授权的suid,sgid
控制异常或隐含文件:
find /-name "...*" -print -xdev
我这里是正常的
安全审计:
配置syslog.conf
more /etc/syslog.conf
查看:
kem.warning;*.err;authpriv.none\t@loghost
*.info;mail.none;authpriv.none;cron.none\t@loghost
*.emerg\t@loghost
local7.*\t@loghost
配置认证日志:
more /etc/syslog.conf
查看authpriv的值
配置使用ntp:
root登录:
vi /etc/ntp.conf
配置文件末尾
server 127.0.0.1 local clock
fudge 127.0.0.1 stratum 10
#可以添加ip
server x.x.x.x minpoll 4 maxpoll 4
保存退出,启动开机自启:
chkconfig xntpd on
配置远程日志服务器:
root登录
vi /etc/audisp/plugins.d/syslog.conf
增加:
*.*@logserver
保存退出,重启:
service syslog restart
查看syslog.conf中是否配置远程日志服务器:
cat /etc/audisp/plugins.d/syslog.conf
*.*@logserver
配置安全日志:
root登录
vi /etc/audisp/plugins.d/syslog.conf
配置类似语句:
*.err /var/log/errors
authpriv.info /var/authpriv_info
*.info /var/log/info
auth.none /var/log/auth_none
修改配置信息,记录用户登录:
vi /etc/login.defs
修改LASTLOG_ENAB属性:
LASTLOG_ENAB yes
开启系统记账功能:
设置日志文件对每一天用户输入的指令记录
/usr/lib/acct/accton /var/adm/pact
开启acct服务:
chkconfig acct on
执行读取命令:
lastcomm [user.name]
确认已配置设备安全日志
cat /etc/audisp/plugins.d/syslog.conf
确认已配置记录用户登录信息:
cat /etc/login.defs | grep LASTLOG_ENAB
确认开启系统记账功能:
chkconfig -list | grep acct
入侵防护:
关闭不需要的服务:
who -r 查看当前init级别
chkconfig --list<服务名> 查看当前服务
chkconfig --level <init 级别><服务名> on|off|reset
资源控制:
配置登录超时:
vi /etc/profile
TIMOUT=180#三分钟
配置增强被远程访问的安全性:
find /-name .netrc
find /-name .rhosts
如果存在建议删除
限制root账户远程登录:
cat /etc/ssh/sshd_config
PermitRootLogin 改为no
修改ssh使用的协议版本:
Protocol的版本
其他:
关闭系统core dump状态:
coredump包含了程序运行时的内存,寄存器状态,堆栈指针,内存管理等信息, 当系统或者应用出错,coredump信息有利于处理,快速定位。可能被攻击者利用
more /etc/security/limits.conf
*soft core 0
*hard core 0
core dump