linux系统加固
常规安全配置
重要目录和文件权限:合理配置重要目录和文件权限,增强安全性
检查方法:使用ls -l命令查看目录和文件的权限设置情况
加固方法:对于重要目录,建议执行类似操作 chmod -R 750 /etc/rc.d/init.d/* 这样除了root可读,写,执行这个目录下的脚本
umask值
操作目的:设置默认的umask值,增强安全性
检查方法:使用umask查看umask值是否为027
加固方法:使用命令 vim /etc/profile 添加umask 027 即新创建的文件属主读写执行权限,同组用户读和执行权限,其他用户无权限。使用命令umask 027应用设置
bash历史命令
操作目的:设置bash保留历史命令的条数
检查方法:使用 cat /etc/profile|查看HISTSIZE 和 HISTFILESIZE 查看保留历史命令的条数
加固方法:vim /etc/profile 修改配置文件
HISTSIZE=5 即保留5条命令
登陆超时
操作目的:设置系统登陆后,连接超时时间,增强安全性
检查方法:使用命令 cat /etc/profile | grep TMOUT 查看tmout是否被设置
加固方法:vim /etc/profile 修改配置文件,把TMOUT设置为180 即超时时间为3分钟
root路径
操作目的:检查系统root用户环境变量path设置中是否包含 “ . ”
检查方法:root用户环境变量path中不应包含当前目录 “ . ”,以root身份执行命令:#echo $PATH /usr/local:/sbin:/bin:/usr/bin:/root/bin:.
加固方法:vim /etc/profile 修改echo $PATH后面的路径
禁用无用账号
操作目的:减少无用账号,降低风险
检查方法:使用 cat /etc/passwd 查看口令文件,确认不必要的账号。不必要的账号,shell应该sbin/nologin
加固方法:使用passwd -l user 锁定不必要的账号
账号策略
操作目的:防止口令暴力破解,降低风险
检查方法:使用命令 cat /etc/pam.d/system-auth 查看配置文件
加固方法:设置连续输错3次密码账号锁定2小时,vim /etc/pam.d/system-auth 修改配置文件
auth required pam_tally.so onerr=fail deny=3 unlock_time=7200
检查特殊账号
操作目的:查看空口令和root权限的账号
检查方法:使用命令 awk -F:'($3==0)'/etc/passwd 查看uid为0的账号
awk -F:'($2=="")'/etc/shadow 查看空口令账号
加固方法:使用命令 passwd user 为空口令账号设定密码,uid为0的账号应该只有root 使用usermod -u uid user
口令周期策略
操作目的:加强口令的复杂度,降低被猜解的可能性
检查方法:使用命令 cat /etc/login.defs | grep PASS 和 cat /etc/pam.d/system-auth 查看密码策略
加固方法:vim /etc/login.defs 修改配置文件
PASS_MAX_DAYS 60 新建用户的密码最长使用天数
PASS_MIN_DAYS 0 新建用户的密码最短使用天数
PASS_WARN_AGE 7 新建用户的密码到期提前提醒天数
或 chage -m 0 -M 30 -E 2020-01-01- -W user(将user用户的密码长度设为30天,最短提醒天数为0 账号2020年1月1号过期,过期前7天警告用户)
口令复杂度策略
操作目的:加强口令的复杂程度,降低被猜解的可能性
检查方法:使用命令 cat /etc/pam.d/system-auth | grep pam_cracklib.so 查看密码复杂度策略设置
加固方法:建议在/etc/pam.d/system-auth文件中配置:password requisite pam_cracklib.so difok=3 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 至少八位。包含一位大写字母,一位小写字母和一位数字
限制root远程登陆
操作目的:限制root远程telnet登陆
检查方法:检查方法 cat /etc/ssh/sshd_config 查看PermitRootLogin是否为no
加固方法:编辑文件 vim /etc/ssh/sshd_config
PermitRootLogin no不允许root登陆
Protocol 2 修改ssh使用的协议版本
MaxAuthTries 3 修改允许密码错误次数
或echo "tty1" > /etc/securetty
chmod 700 /root
限制能够su为root的用户
操作目的:检查是否使用pam认证模块禁止wheel组之外的用户su为root
检查方法:cat /etc/pam.d/su,查看是否有auth required /lib/security/pam_wheel.so这样的配置条目
加固方法:vim /etc/pam.d/su
在头部添加 a
uth required
/lib/security/pam_wheel
.so group=wheel
检查Grub/Lilo密码
操作目的:查看系统引导管理器是否设置密码
检查方法: cat /etc/grub.conf|grep password 查看grub是否设置密码
cat /etc/lilo.conf|grep password 查看lilo是否设置密码
加固方法:为grub或lilo设置密码(风险:etc/grub.conf通常会链接到/boot/grub/grub.conf)
vim /etc/grub.conf 添加一行 password --md5 密码
vim /etc/lilo.conf password=密码
弱口令审计
操作目的:检查系统弱口令
检查方法:john /etc/shadow --single john /etc/shadow --wordlist=pass.dic
加固方法:使用passwd 用户 命令为用户设置复杂的密码
NFS共享
使用exportfs查看NFS输出的共享目录。使用vim /etc/exports编辑配置文件,删除不必要的共享
限制crtl+alt+del命令
操作目的:防止使用crtl+alt+del重启系统
检查方法:cat /etc/init/control-alt-delete.conf
加固方法:vim /etc/init/control-alt-delete.conf 注释两行代码
禁ping
echo 0 > /proc/sys/net/ipv4/icmp_echo_igore_all
后门检测工具
Rootkit Hunter(http://rkhunter.sourceforge.net/)
解压后安装 ./installer.sh --layout default --install
rkhunter --check 检测命令(自动检测)
友情链接 http://www.cnblogs.com/klionsec
http://www.cnblogs.com/l0cm
http://www.cnblogs.com/Anonyaptxxx
http://www.feiyusafe.cn