| 关键词: 公钥 于是 关进 端口 服务器 journalctl SSH 烦人 可是 登录 |
0 - 前言处于公网的服务器,好比在海上游泳,水底下大白鲨虎视眈眈, 伺机上攻,一口吞下。 一般我们都要使用远程登录。 1 - 文件传输不害怕,就来明文, FTP,用着还行。虽然速度没那么理想。 也可以使用 SCP,RSYNC 加密传输。 可是,都用 SSL 了,为什么不用 SSH 登录操作呢? 于是,SSH 服务也就打开了。 2 - SSH默认root 是不允许访问的。可是系统管理员太懒了,sudo 敲来敲去, 文件权限翻来覆去,烦人不烦人。于是
好了,每次登录服务器都要输
还要输入密码,太凌乱了。 3 - 公钥、私钥于是,个人电脑上
创建公钥私钥,使用
把公钥拷贝到远程主机。 这下方便多了,再次使用
登录,不用输!密!码! 瞬间清洁了不少。 4 - 端口!端口!服务器上好多旧系统的任务, 不能全部重写吧。 万一改错哪个地方, 不是得卷铺盖滚回寨子里去? 所以,端口 22 坚决不改。 5 - 来自世界各地的问候有时候,登到服务器,
看到服务无间断运行了128天,心里无比高兴。 可是列出来的几行红色字体, 总是那么烦人,不过应该没事儿,应该没事儿。 6 - 日志里的端倪学习了一些 systemd 的知识, 知道这老兄有个二进制日志工具 journalctl。 尝试着打印一下日志:
这筛选条件,是不是高端多了, 特别是那个 “-1 day”, 有没有一种敲代码的感觉。 乌泱泱一大片,间隔 1-2 秒, 就有一条类似
红色字体,分外扎眼。 好像我的服务被攻击了。 7 - 找出元凶于是拼命在网上搜索关键词找答案, 有了下面这样的筛选项, 让我看到攻击源来自哪里。
接着管道符,筛选字段。 注意,journalctl 不提供 grep 相似的正则选项, 非不能也,不为也。
倒数第三个字段就是那个试图攻击服务器的IP。 接着管道符,排序,筛选统计。
注意,一定是先排序,后统计去重, 不能反过来,无效的哦。 接着管道符,筛选出来明显输错次数多的IP记录。
于是,我们通过上述几条命令, 成功筛选出了,在过去30分钟内, 至少输错过3次密码的 IP 列表。 此处应有掌声。bravo! 把 IP 关进小黑屋找到不正常 IP 之后, 该把这些不法分子关进小黑屋了。 直接生效的,iptables 把丫的封了。
连骨头渣都没留, 甭管什么请求,你这儿来的,我一概不收。 当时加,当时就生效了, 那孙子再没来烦过我。 还有一个不是当时生效的法子, 写入 /etc/hosts.deny, 可是得
麻烦,不能起到即时防护的作用。 有闲工夫的,可以试试。 简单加一条
就搞定了。 ![]() 写在最后够了吗? 上面的是最好的解决方案吗? 显然不是。 那什么才是更好的:
结尾附上一首四言:
我是@程序员小助手 ,持续为你分享编程与程序员成长相关的内容,欢迎关注~~ |
| 本文出处: https://www.toutiao.com/a6782892672848757259/ |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|