Linux服务器基本安全防范

每次登录服务器的时候总有提示说有人通过ssh尝试n次登录失败。
Linux安全防范
查一查/var/log/secure日志文件

 grep "Failed password for invalid user" /var/log/secure | awk '{print $13}' | uniq -c | sort -nr | more

日志文件
卧槽,简直就是国内外云集啊,什么乌克兰、保加利亚、俄罗斯、巴西、阿根廷…..,我听过的没听过的国家都齐了,这尼玛都可以举办个奥运会了。
虽然我自认我密码设置的已经相当复杂了,而且服务器上也没什么重要的东西,但是心里还是疙得慌。怎么说还是得有个防范好,害人之心不可有,防人之心不可无啊。

另外还有一个文件用来保存登录错误的记录:/var/log/btmp
不过这个文件是以二进制的形式存储的,需要使用lastb命令查看;
可以使用以下命令查看可以ip试图登录的次数:
lastb | awk '{print $3}' | sort | uniq -c | sort -nr

修改SSH端口并禁止root登录

ssh的配置文件全路径是:/etc/ssh/sshd_config
SSH配置

Port 2222   #这个端口默认是22,改成不容易猜的
PermitRootLogin no

如果使用的是云服务器,修改端口后还需要配置安全组

然后我们需要重启ssh服务

systemctl restart sshd

限制root用户登录,攻击者就没办法尝试root密码了,我们可以用普通用户登录,然后用sudo命令来执行权限操作,当然登录普通用户后,也可以通过su命令来切换到root用户。
修改端口,个人觉得作用并不明显,人家一个端口扫描立马能找到你服务器开启了哪些端口,我们还需要做更多的限制。

安装denyhosts

看看百度百科怎么说的

DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重 复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏蔽IP的功能。

这方法确实省时省力,废话不多说先把软件装上

 yum install denyhosts

基本上默认的配置就可以使用了,如果想要更多的配置信息,可以查看/etc/denyhosts.conf文件。

注意:denyhosts这个毕竟是软件分析/var/log/secure文件,你某次不小心输错了密码,它可能把你也给墙了(自己有亲身经验,自己挖坑自己填::>_<::),所以还需要配置白名单,白名单文件全路径为/var/lib/denyhosts/allowed-hosts。在里面写上自己的公网地址就行了。

配置完成后,我们就可以启动该服务了

systemctl start denyhosts

命令总结

grep: globally search a regular expression and print, 正则表达式匹配,类似于Windows上的findstr命令。命令参考文章
awk: 该命令是AWK语言创始人的缩写,AWK是文本文件处理语言,也是一个强大的文本分析工具。命令参考文章
sort: 对文件中的行进行排序
uniq unique,去除文件重复行
sort,uniq,cut,wc命令参考文章
systemctl: system control ,Systemd进程的系统全局控制面板。参考文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值