摘要:操作系统安全加固就是使操作系统安全稳定的各种技术方案。安全加固可从操作系统内外来看,对内就是是操作系统配置以及内核参数的调整,加强内部管理。对外,操作系统可以通过建立防火墙,关闭不必要开放的端口等等,建立安全的网络屏障。
本文将对CentOS操作系统的从账号密码策略、远程登录等方面优化系统的安全性。详细内容请参考下文。
一、查看系统登录日志
1、执行指令# lastlog查看登录用户、端口和登录时间等信息
2、执行指令# last -x查看系统关闭、用户登录和退出的信息
3、执行指令# lastb查看尝试登录的失败信息
二、设置口令复杂度
说明:设置新建用户时输入的口令复杂度。
执行指令# vim /etc/pam.d/system-auth 修改文件。
password required pam_cracklib.so try_first_pass retry=3 dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 minlen=8
备注:在口令文件中添加如上一行配置,其含义是至少包含一个数字、一个小写字母、一个大写字母、一个特殊字符、且密码长度>=8,增强口令的复杂度。
三、限制root用户登录
说明:首先创建一个普通用户gzprg,然后配置好su授权,需要时使用su授权执行命令,限制root用户直接登录服务器。
1、执行指令# useradd gzprg创建普通用户gzprg
2、为普通用户gzprg添加su授权
执行指令# vim /etc/sudoers
gzprg ALL=(ALL) ALL
3、修改root用户禁止ssh登录系统
执行指令# vim /etc/ssh/sshd_config
4、执行指令# systemctl restart sshd重启ssh服务
四、限制tty尝试次数
说明:通过配置tty登录次数,可以有效的防止爆破登录情况的发生,其配置文件在/etc/pam.d/login中添加如下配置。
执行指令# vim /etc/pam.d/login添加以下一行。
auth required pam_tally2.so deny=3 lock_time=300 even_deny_root root_unlock_time=10
备注:上述添加信息注解
deny=n #失败登录次数超过n次后拒绝访问
lock_time=n #失败登录后锁定的时间(秒数)
even_deny_root #root用户失败登录次数超过deny=n次后拒绝访问
root_unlock_time=n #与even_deny_root相对应的选项,如果配置该选项,则root用户在登录失败次数超出限制后被锁定指定时间。
五、限制IP访问
说明:通过设置,使得SSH只允许特定用户从特定的IP登录,其它未经允许的用户和IP都不能登录。
1、执行指令# vim /etc/hosts.allow修改配置文件
添加允许ssh登录ip地址段
2、执行指令# vim /etc/hosts.deny修改配置文件
添加sshd:ALL限制所有ip地址访问
备注:要确定客户端计算机是否允许连接到服务,TCP包装器将引用以下两个文件,这两个文件通常称为主机访问文件:
/etc/hosts.allow
/etc/hosts.deny
当TCP包裹服务接收到客户端请求时,需要执行以下基本步骤:
步骤一:TCP包服务依次解析/etc/hosts.allow文件并应用为该服务指定的第一个规则。如果它找到一个匹配的规则,它允许连接。如果没有,则转到下一步骤。
步骤二:TCP包裹的服务依次解析/etc/hosts.deny文件。如果发现匹配的规则是拒绝连接。如果没有,则授予对服务的访问权限。
六、日常巡检
说明:定期对操作系统基础运行情况进行巡检,有助于了解设备的运行情况以及发现故障,方便及时排除隐患,确保系统正常有序的运行。
1、检查cpu、内存、swap利用率
执行指令# top
2、检查磁盘空间的利用率
执行指令# df -Th
3、系统运行时长及负载情况
执行指令# uptime
4、检查异常账号
执行指令# cat /etc/passwd和#cat /etc/shadow检查账号情况
5、检查账号登陆情况
执行指令# last
6、查看系统日志
执行指令# more /var/log/messages