##前言:在这个post里,博主为大家列了一些系统加固的方法。请大家按需添加。
##参考文献:
https://www.cnblogs.com/chrisDuan/p/4476359.html
##1. 停用系统不需要的默认账号
### 如果这些系统默认帐号(lp, sync news, uucp, games, bin、man)不需要的话,建议在/etc/passwd中注释掉。
### 修改一些系统帐号的shell变量。可以在/etc/passwd中将它们的shell变量设 /bin/false或者/dev/null等,也可以使用usermod -s /dev/null
##2. 限制超级管理员远程登录
vi /etc/ssh/sshd_config //把PermitRootLogin yes,改为: PermitRootLogin no //重启sshd服务 service sshd restart
##3. 限制用户登陆错误次数
//第一步 vi /etc/ssh/sshd_config //添加:(deny=3意味着连续三次就锁住) auth required pam_tally2.so deny=3 unlock_time=5 even_deny_root root_unlock_time=10 //第二步 vi /etc/pam.d/login //同样添加:(unlock_time的单位是秒) auth required pam_tally2.so deny=3 unlock_time=5 even_deny_root root_unlock_time=10
##4. 修改ssh端口
//给予sshd_config文件写权限 sudo chmod u+w /etc/ssh/sshd_config vi /etc/ssh/sshd_config //修改 Port 22 为其他端口,迷惑非法试探者,如下 : Port 1314 //收回写权限 sudo chmod u-w /etc/ssh/sshd_config
##5. 设置关键目录的权限
// 通过chmod命令对目录的权限进行实际设置。 使用如下命令设置: chmod 644 /etc/passwd chmod 600 /etc/shadow chmod 644 /etc/group
** 补充操作说明:
/etc/passwd 必须所有用户都可读,root用户可写 –rw-r—r—
/etc/shadow 只有root可读 –r--------
/etc/group 必须所有用户都可读,root用户可写 –rw-r—r—
##6. 资源限制
//编辑limits.conf文件(vi /etc/security/limits.conf),加入或改变下面这些行: * soft core 0 * hard core 0 * hard rss 5000 * hard nproc 20 * soft nofile 10000 * hard nofile 10000 //如果限制limitu用户组对主机资源的使用,加入: @limitu soft core 0 @limitu hard nproc 30 @limitu - maxlogins 5
** 补充操作说明:
这些行的的意思是:“core 0”表示禁止创建core文件;“nproc 20” 把最多进程数限制到20;“rss 5000”表示除了root之外,其他用户都最多只能用5M内存。上面这些都只对登录到系统中的用户有效。通过上面这些限制,就能更好地控制系统中的用户对进程、core文件和内存的使用情况。星号“*”表示的是所有登录到系统中的用户。
##7. 使用PAM禁止任何人su为root
//编辑su文件(vi /etc/pam.d/su),在开头添加下面两行: auth sufficient /lib/security/pam_rootok.so auth required /lib/security/pam_wheel.so group=wheel
**补充操作说明:
这表明只有wheel组的成员可以使用su命令成为root用户。你可以把用户添加到wheel组,以使它可以使用su命令成为root用户。添加方法为:
chmod –G10 username
##8. 更改主机解析地址的顺序
//编辑“/etc/host.conf” 文件(vi /etc/host.conf),加入下面这些行: # Lookup names via DNS first then fall back to /etc/hosts. order bind,hosts multi on # Check for IP address spoofing nospoof on
**补充操作说明:
第一项设置首先通过DNS解析IP地址,然后通过hosts文件解析。第二项设置检测是否“/etc/hosts”文件中的主机是否拥有多个IP地址(比如有多个以太口网卡)。第三项设置说明要注意对本机未经许可的IP欺骗。
##9. 不响应ICMP请求
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all