ssh登录二次验证,让服务器更安全。
码云地址
sshdTwoVerification
介绍
ssh登录二次验证
问题:现在很多人的Linux服务器可能会被攻击,只校验一次后台用户名密码登录变得不再保险。
当然大家首先要做的是修改ssh服务端口,不要用默认22,这样会增加攻击难度,但还是不保险。
方案1:使用ssh密钥文件登录,好处就是拿不到密钥文件休想登录成功,而且还能对密钥文件再次添加密码,
这样的方案确实比较保险。但也有弊端,就是需要将密钥文件存到网盘或别的地方,不然找不到密钥文件就GG了。
方案2:隆重推出本项目的方案,替换登录时使用的bash,让替换后的程序再次以自定义的方案验证一次,
这样就做到了登录的二次验证,无疑增加了安全性。注意此时服务器已经不能使用scp等一些工具,安全性极大的提高。
安装教程,janbar.sh
- echo ‘/bin/janbar’ >> /etc/shells ,确保/etc/shells里面有一行/bin/janbar即可
- cp janbar.sh /bin/janbar && chmod 777 /bin/janbar
- echo ‘admin:passwd’ > /etc/janbar
- vim /etc/passwd , 将[root0:0:root:/root:/bin/bash]改为[root0:0:root:/root:/bin/janbar]
- 重新登录后台,需要输入/etc/janbar这个文件中的用户名和密码
- 执行ps auxf,可以看到成功进入后台相关进程树
安装教程,janbar.c
- echo ‘/bin/janbar’ >> /etc/shells ,确保/etc/shells里面有一行/bin/janbar即可
- gcc -s janbar.c -o /bin/janbar && chmod 777 /bin/janbar
- echo ‘admin:passwd’ > /etc/janbar
- vim /etc/passwd , 将[root0:0:root:/root:/bin/bash]改为[root0:0:root:/root:/bin/janbar]
- 重新登录后台,需要输入/etc/janbar这个文件中的用户名和密码,登录图片和janbar.sh的类似。
- 执行ps auxf,可以看到成功进入后台相关进程树
结语
- 我的两种方案都有对输入做超时检测,如果超过时间没有输入后台也会自动退出,同样输入错误3次也会自动退出。
- 有些小伙伴后台不是root登录,可以找/etc/passwd里面对应用户名那行做同样的修改即可。
- 之所以我要做2中方案,是因为janbar.sh方便修改,而janbar.c逼格满满。
- 有兴趣可自定义验证方式,我就看到过用手机扫描控制台二维码,输入二维码内容的完成验证,逼格更加满满。
- 需要注意的一点,这样的后台是无法使用scp、sftp等直接连接,除非这些工具也能完成二次验证。
ssh登录二次验证,让服务器更安全。的更多相关文章
- centos6实现基于google authenticator 的ssh登录二次验证
1.手机安装google身份验证器,在浏览器搜索身份验证器安装即可. centos6安装所需要的软件--- google-authenticator 2.查看这个包生成的所有文件和命令 3.输入goo ...
- linux服务器加入AD域(sssd)~ 通过域用户ssh登录加域的linux服务器
搭建域控:参考 https://www.cnblogs.com/taosiyu/p/12009120.html 域控计算机全名: WIN-3PLKM2PLE6E.zhihu.test.com 域:zh ...
- ssh登录慢解决办法
这两天ssh登录局域网的一台服务器非常慢,严重影响工作效率,怎么办?查了一下网上的解决办法,总结一下: 使用命令ssh -v xxx@x.x.x.x 可以看到debug信息,找到问题出在哪: debu ...
- SSH密钥登录让Linux VPS/服务器更安全
查看 /var/log 登录日志文件,突然发现服务器被人扫描端口在进行暴力攻击 平常登录服务器,都是使用用户密码登录,看来这样的做法并不安全,不得不关闭密码登录了. 总结了一个putty使用密钥自动登 ...
- SSH登录启用Google二次身份验证
一般来说,使用ssh远程登录服务器,只需要输入账号和密码,显然这种方式不是很安全.为了安全着想,可以使用GoogleAuthenticator(谷歌身份验证器),以便在账号和密码之间再增加一个验证码, ...
- Linux下部署SSH登录时的二次身份验证环境记录(利用Google Authenticator)
一般来说,使用ssh远程登录服务器,只需要输入账号和密码,显然这种方式不是很安全.为了安全着想,可以使用GoogleAuthenticator(谷歌身份验证器),以便在账号和密码之间再增加一个验证码, ...
- Centos6.5SSH登录使用google二次验证
一般ssh登录服务器,只需要输入账号和密码,但为了更安全,在账号和密码之间再增加一个google的动态验证码.谷歌身份验证器生成的是动态验证码,默认30秒更新 工具/原料 CentOS 6.5 X ...
- ssh登陆linux服务器 实际场景讲解 让你管理服务器更安全
很多时候我们管理linux系统,都谁使用ssh登陆,因为都知道ssh是加密传输的协议的,可以有效保证我们与 服务器之间的数据通信安全.但是我们忽略了一点,但是登陆的时候我们是输入的账号和密码,这一点其 ...
- CentOS7.4配置SSH登录密码与密钥身份验证踩坑
简单记录,自用CentOS7.4虚拟机与ALiYunVPS,在配置ssh登录身份验证时碰到的问题. 阿里云VPS:因为在重置磁盘时选择了密钥对的身份验证方式,因此VPS中的CentOS7.4中的 /e ...
随机推荐
- 局域网内笔记本分屏到android手机上
前提 笔记本电脑1台 安卓/ios手机1部 局域网 spacedesk 预览 参考: https://www.appinn.com/spacedesk https://spacedesk.net/de ...
- leetcode刷题-47全排列2
题目 给定一个可包含重复数字的序列,返回所有不重复的全排列. 思路 其思路与46题完全一致,但是需要与组合总和2题一般,在同一层取出重复元素.因此可以在每一层设置一个set()类型,将访问过的元素放入 ...
- HTML绘制表格
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- java中整型、浮点型、char型扩展
怎么区分是什么进制? 二进制:0b开头,eg: int i = 0b10; 八进制:0开头,eg: int k = 010; 十进制: 十六进制:0x开头,eg: int j = 0x10; 浮点数类 ...
- Promise核心实现
核心 构造函数核心 维护状态变量,只能由pending变为resolve或者reject 维护一个存储结果的变量 维护一个回调数组,执行到then,如果我们传入的立即执行函数没有立即执行resolve ...
- Lambda表达式看这篇基本就够用了
本文讯] 2020.05.08 polo 写博不易,尊重知识! Lambda 是java8 引入的一个新特性,闭包,又叫函数式接口,下面介绍下,常用的lambda表达式方式: 所谓的将函数作为一 ...
- PhpStorm license server(版权许可服务器)在线激活服务器集群列表
原文链接:https://bingyishow.top/easy/55.html 服务器列表 序号 服务器(域名) 状态 1 http://www.yuanzhaoyi.cn 在线 2 http:// ...
- PowerJob 应对庞大任务的锦囊妙计:MapReduce
本文适合有 Java 基础知识的人群 作者:HelloGitHub-Salieri HelloGitHub 推出的<讲解开源项目>系列.讲解 PowerJob 系列即将接近尾声,本系列的干 ...
- ARL(资产侦察灯塔系统)-源码搭建
freebuf能力中心开源了一套资产扫描系统(https://github.com/TophantTechnology/ARL),提供docker版,但并无源码搭建的文档(无完整文档).于是在星光哥及 ...
- Docker之概述
我们常常需要将应用程序部署在独立的系统环境中,而使用物理机器部署会浪费大量的物理资源.能否讲物理机器虚拟成一个一个容器,而将程序部署在各自的容器中?Docker是一个能够把开发的应用程序自动部署到容器 ...