生产环境提升ssh安全的10种方式

有一个朋友是做游戏的,他告诉我他们公司关于ssh安全方面就有五层验证!好吧,可能对于一些不是很注重安全的运维小伙伴来说,弄那么复杂干嘛?甚至有的公司直接root登陆,甚至有的ssh默认端口都不改。我个人认为不一定安全做的那么多,(当然要根据公司业务具体环境具体来定)但起码一些基本的安全方面要做到位!

下面是我个人的一些总结,分享给大家!


常见的安全方面的措施:

1、硬防火墙。

通过硬件防火墙acl策略也决定是否可以访问某台主机

2、软防火墙

比如iptables,tcpwrappers,防护软件等,内部对主机进一步进行限制

3、修改默认的ssh端口

默认是22,建议改成五位。

4、密码要符合复杂性要求,防止暴力破解

避免ssh暴力破解,建议密码稍微复杂一些,符合四分之三原则!

5、禁止root登陆

禁止root远程ssh登录

在/etc/ssh/sshd_config设置:PermitRootLogin no:

禁止root本机登录(根据具体环境,这个不是很必要)

将 auth required pam_succeed_if.so user != root quiet

添加到/etc/pam.d/login 文件第一行

6、禁止密码登陆

删除不必要的账号,并禁止用户密码登陆

7、公钥私钥认证

通过公钥私钥rsa2048,并设置复杂性密码

8、LDAP等方式统一认证登陆

通过对ssh账号集中化管理,进一步提升安全

9、对secure日志进行日志切割,通过脚本,对于不安全的访问ip进行过滤并报警

secure日志记录着用户远程登陆的信息,可通过查看此日志排查不安全因素。

10、搭建日志服务器,对secure日志进行监控。排查不安全因素

一个好的日志服务器,可大大减轻管理员的工作,并方便管理。

.....


总结:

上面只是个人在生产环境碰到的一些问题和个人总结,当然还有很多种方式可以提高其安全性,根据自己的架构环境,选择适合自己的安全措施才是王道!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。