Linux安全加固
优化一些Linux参数,可以提升安全。
1、umask设置
在文件/etc/csh.login中设置 umask 077或UMASK 077
在文件/etc/profile中设置umask 077或UMASK 077
在文件/etc/csh.cshrc中设置 umask 077或UMASK 077
检查文件/etc/bashrc(或/etc/bash.bashrc)中设置 umask 077或UMASK 077
2、ssh登录警告设置。
1. 执行如下命令创建ssh banner信息文件:
#touch /etc/ssh_banner
#chown bin:bin /etc/ssh_banner
#chmod 644 /etc/ssh_banner
#echo " Authorized only. All activity will be monitored and reported " > /etc/ssh_banner
可根据实际需要修改该文件的内容。
2. 修改/etc/ssh/sshd_config文件,添加如下行:
Banner /etc/ssh_banner
3.重启sshd服务:
#/etc/init.d/sshd restart
3、禁止root远程telnet登录。
编辑 /etc/pam.d/login文件,配置auth required pam_securetty.so
4、禁止root远程ssh登录。
修改/etc/ssh/sshd_config文件,配置PermitRootLogin no,重启服务/etc/init.d/sshd restart
5、禁止root登录ftp。
1.编辑/etc/ftpusers(或/etc/vsftpd/ftpusers)文件
2.添加root
6、检查口令长度。
在文件/etc/login.defs中设置 PASS_MIN_LEN 不小于标准值
7、设置命令界面超时时间。
以root账户执行,vi /etc/profile,增加 export TMOUT=180(单位:秒,可根据具体情况设定超时退出时间,要求不小于180秒),注销用户,再用该用户登录激活该功能。
8、检查是否配置用户最小权限。
chmod 644 /etc/group
chmod 600 /etc/shadow
chmod 644 /etc/passwd
9、限制用户上传ftp文件属性。
如果系统使用vsftp:
修改/etc/vsftpd.conf(或者为/etc/vsftpd/vsftpd.conf)
# vi /etc/vsftpd.conf
确保以下行未被注释掉,如果没有该行,请添加:
write_enable=YES //允许上传。如果不需要上传权限,此项可不进行更改。
ls_recurse_enable=YES
local_umask=022 //设置用户上传文件的属性为755
anon_umask=022 //匿名用户上传文件(包括目录)的 umask
重启网络服务
# /etc/init.d/vsftpd restart
10、用户登录失败次数限制。
Redhat:
编辑/etc/pam.d/system-auth文件
配置:
auth required pam_tally.so deny=5 unlock_time=600
account required pam_tally.so
Suse9:
编辑/etc/pam.d/passwd文件
配置:
auth required pam_tally.so deny=5 unlock_time=600
account required pam_tally.so
Suse10,Suse11:
编辑/etc/pam.d/common-auth文件
配置:auth required pam_tally.so deny=5 unlock_time=600 no_lock_time
编辑/etc/pam.d/common-account文件
配置:account required pam_tally.so
参数说明:
deny #连续认证失败次数超过的次数
unlock_time #锁定的时间,单位为秒