前一篇:Linux中级实用–运维常用命令
目的:培养基本的安全意识,避免在小事上栽大跟头。
服务器曾因发包攻击整个网络瘫痪,也曾因数据库密码简单导致数据库被删,也曾一天收到X万个SSH的暴力破解,也因磁盘被垃圾邮件撑满,说起来都是泪……。
本文将系统安全、账号安全、应用安全三个角度来讲述安全意识,防止以上简单粗暴的恶意攻击。
系统安全
1.1 安装杀毒软件clamav,并做定期扫描,当前设置为每周扫描一次。
1.2 禁止root远程登录sed -i 's@#PermitRootLogin yes@PermitRootLogin no@g' /etc/ssh/sshd_config
1.3 修改SSH的默认端口22sed -i 's@#Port 22@Port 4322@g' /etc/ssh/sshd_config
1.4 禁止ping服务器/etc/sysctl.conf 中增加一行 net.ipv4.icmp_echo_ignore_all=1
1.5 分区/,/var,/home,/data 独立分区账号安全
2.1 不使用简单密码,如123456。(密码长度在8位以上,有大写、小写、数字、特殊字符)
2.2 定期修改密码(没有破解不了的密码)
/etc/login.defs文件中PASS_MAX_DAYS 99999,改成30
2.3 账号只能从指定IP登陆才有效
2.4 删除不用的用户组和用户
2.5 监控/var/log/secure日志,防止暴力破解-使用DenyHost应用安全
3.1 禁止应用目录可被浏览
3.2 不同的应用使用不同的账号隔离
3.3 数据库服务器配置允许访问的IP段
3.4 应用的文件上传漏洞预防
3.5 禁止密钥或帐号的口令以明文形式存储在数据库或者文件中
3.6 应用服务器中需要有操作日志(如登陆、修改账号、修改权限、删除等功能)
产品求新、研发求快、测试求质、运维求稳,作为一个运维人员最基本的诉求就是不被攻击、不报故障,第二层能力是防御得了攻击、处理得了故障。
下一篇:Linux运维实用–网络部署图