星星之火,可以燎原。|

janbar

园龄:4年8个月 粉丝:29 关注:10

📂Shell
2020-09-17 21:19 阅读 422 评论 0 推荐 0

ssh登录二次验证,让服务器更安全

码云地址

sshdTwoVerification

介绍

ssh登录二次验证
问题:现在很多人的Linux服务器可能会被攻击,只校验一次后台用户名密码登录变得不再保险。
当然大家首先要做的是修改ssh服务端口,不要用默认22,这样会增加攻击难度,但还是不保险。

方案1:使用ssh密钥文件登录,好处就是拿不到密钥文件休想登录成功,而且还能对密钥文件再次添加密码,
这样的方案确实比较保险。但也有弊端,就是需要将密钥文件存到网盘或别的地方,不然找不到密钥文件就GG了。

方案2:隆重推出本项目的方案,替换登录时使用的bash,让替换后的程序再次以自定义的方案验证一次,
这样就做到了登录的二次验证,无疑增加了安全性。注意此时服务器已经不能使用scp等一些工具,安全性极大的提高。

安装教程,janbar.sh

  1. echo '/bin/janbar' >> /etc/shells ,确保/etc/shells里面有一行/bin/janbar即可
  2. cp janbar.sh /bin/janbar && chmod 777 /bin/janbar
  3. echo 'admin:passwd' > /etc/janbar
  4. vim /etc/passwd , 将[root❌0:0:root:/root:/bin/bash]改为[root❌0:0:root:/root:/bin/janbar]
  5. 重新登录后台,需要输入/etc/janbar这个文件中的用户名和密码
    janbar.sh.gif
  6. 执行ps auxf,可以看到成功进入后台相关进程树
    janbar.sh.jpg

安装教程,janbar.c

  1. echo '/bin/janbar' >> /etc/shells ,确保/etc/shells里面有一行/bin/janbar即可
  2. gcc -s janbar.c -o /bin/janbar && chmod 777 /bin/janbar
  3. echo 'admin:passwd' > /etc/janbar
  4. vim /etc/passwd , 将[root❌0:0:root:/root:/bin/bash]改为[root❌0:0:root:/root:/bin/janbar]
  5. 重新登录后台,需要输入/etc/janbar这个文件中的用户名和密码,登录图片和janbar.sh的类似。
  6. 执行ps auxf,可以看到成功进入后台相关进程树
    janbar.c.jpg

结语

  1. 我的两种方案都有对输入做超时检测,如果超过时间没有输入后台也会自动退出,同样输入错误3次也会自动退出。
  2. 有些小伙伴后台不是root登录,可以找/etc/passwd里面对应用户名那行做同样的修改即可。
  3. 之所以我要做2中方案,是因为janbar.sh方便修改,而janbar.c逼格满满。
  4. 有兴趣可自定义验证方式,我就看到过用手机扫描控制台二维码,输入二维码内容的完成验证,逼格更加满满。
  5. 需要注意的一点,这样的后台是无法使用scp、sftp等直接连接,除非这些工具也能完成二次验证。
posted @   janbar  阅读(422)  评论(0)    收藏  举报
编辑推荐:
· 如何把ASP.NET Core WebApi打造成Mcp Server
· Linux系列:如何用perf跟踪.NET程序的mmap泄露
· 日常问题排查-空闲一段时间再请求就超时
· Java虚拟机代码是如何一步一步变复杂且难以理解的?
· 领域驱动的事实与谬误 一 DDD 与 MVC
阅读排行:
· C#/.NET/.NET Core优秀项目和框架2025年4月简报
· 如何把ASP.NET Core WebApi打造成Mcp Server
· 排行榜的5种实现方案!
· 在 .NET 中使用 Sqids 快速的为数字 ID 披上神秘短串,轻松隐藏敏感数字!
· 突破Excel百万数据导出瓶颈:全链路优化实战指南

FAVOURITE

点击右上角即可分享
微信分享提示
*✧⁺˚⁺ପ(๑・ω・)੭ु⁾⁾ 好好学习天天向上
进入亮色模式
进入亮色模式

FAVOURITE