centos7 系统 安全优化
- 修改ip地址、网关、主机名、DNS等
- 关闭selinux,清空iptables
- 添加普通用户并进行sudo授权管理
- 更新yum源及必要软件安装
- 定时自动更新服务器时间
- 精简开机自启动服务
- 定时自动清理/var/spool/clientmqueue/目录垃圾文件,放置inode节点被占满
- 变更默认的ssh服务端口,禁止root用户远程连接
- 锁定关键文件系统
- 调整文件描述符大小
- 调整字符集,使其支持中文
- 去除系统及内核版本登录前的屏幕显示
- 禁止ping
- 历史记录
- 内核参数优化
- 升级具有典型漏洞的软件版本
-
禁用或重命名超级管理员 (root)
修改这两个配置文件即可
[root@worker1 plugins]# vi /etc/shadow
强制保存: x!
[root@worker1 plugins]# vi /etc/passwd -
修改远程连接端口,默认为 22
修改次配置文件
[root@worker1 plugins]# vi /etc/ssh/sshd_config
重启 sshd服务
[root@worker1 plugins]# systemctl restart sshd -
Linux的三权分立配置
创建不同的用户并给不通的权限
系统管理员只有创建账号和分配权限的权限,安全管理员只有配置安全策略的权限,审计管理员只有审计日志的权限
systemuser 系统管理员
securityuser 安全管理员
audituser 审计管理员
for name in systemuser securityuser audituser
do
useradd $name -p password
done
for name in systemuser securityuser audituser
do
echo "p@ssword"|passwd $name --stdin
done
登录root用户
在visudo里面配置
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
#audituser只用查看文件的权限
audituser ALL = (root) NOPASSWD: /usr/bin/cat , /usr/bin/less , /usr/bin/more , /usr/bin/tail , /usr/bin/head
#systemuser只用创建用户和授权的权限
systemuser ALL= (root) NOPASSWD: /usr/sbin/useradd , /usr/sbin/visudo
审计管理员授权 可以查看/var/log/ 下的所有文件
usermod -a -G root audituser
cd /var/ && chmod -R 775 log
安全管理员配置可以读写 配置安全配置文件
usermod -a -G root securityuser
授予root用户组为可读写这些文件的权限
这样就形成 root用户组内的用户可以读写这些文件
chmod 660 /etc/ssh/sshd_config
chmod 660 /etc/login.defs
chmod 660 /etc/pam.d/system-auth
chmod 660 /etc/pam.d/login
授予securityuser 与root用户一个组,
将这些安全配置的文件授予 用户组内的可读写
/etc/login.defs 检查是否设置账户口令的生存期不长于90天。
/etc/pam.d/system-auth
/etc/pam.d/login 检查是否设置当用户连续认证失败次数超过5次,锁定该用户使用的账户。
/etc/rc.d/init.d
/etc/ssh/sshd_config ssh安全设置策略