通过ssh协议实现用户key认证登录
author:JevonWei
版权声明:原创作品
用户实现key认证登录
主机A 192.168.198,134
主机B 192.168.198,131
主机C 192.168.198,136
创建无秘钥连接
主机A秘钥连接主机B
- 客户端生成秘钥对
ssh-keygen -t rsa [-p ' '] [-f "~/.ssh/id_rsa"] \-t 指定加密类型,默认为rsa,可省略,-P指定创建秘钥连接,可为空,-f指定秘钥文件存放路径,默认存放路径为~/.ssh/id_rsa - 客户端将生成的公钥文件传输给ssh服务端对应的用户家目录下
ssh-copy-id -i ~/.ssh/id_rsa.pub danran@192.168.198.131 \ -i 指定公钥文件路径,传输给192.168.198.131主机上的danran用户的家目录下 - ssh danran@192.168.198.131 \ 使用秘钥自动登录,无需键入用户密码
- 客户端生成秘钥对
主机A秘钥连接主机C
4. ssh-copy-id -i ~/.ssh/id_rsa.pub danran@192.168.198.136 \\ 复制本机的公钥文件到第三台主机上root用户家目录下
5. ssh danran@192.168.198.136 \\使用秘钥连接第二台主机
主机B秘钥连接主机A
6. ssh-keygen -t dsa \\ 主机B创建秘钥文件,-t指定dsa算法
7. ssh-copy-id -i ~/.ssh/id_dsa.pub 192.168.198.134 \\-i 指定公钥文件路径,不指定传输的用户即为默认的当前用户
8. ssh 192.168.198.134 \\ 自动登录
9. 查看主机A上的公钥文件数据
cat ~/.ssh/known_hosts \\ 多个远程主机用户的公钥数据可追加到当前用户家目录下的.ssh/known_hosts文件中
10. ssh 192.168.198.134uname -r\ 可直接连接192.168.198.134主机并执行uname -r命令
为秘钥添加口令(即每次连接都需输入秘钥口令)
ssh-keygen -p -f .ssh/id_rsa \ 交互式为rsa秘钥文件添加口令
ssh-keygen -N "danran" -f .ssh/id_dsa \\非交互式直接指定dsa算法的秘钥文件的口令,-N ' '意为空口令
在本地主机上修改秘钥文件的口令
ssh-keygen -p -f ~/.ssh/id_dsa \ -f 指定秘钥文件
使用代理验证保存秘钥连接的口令(代理退出需重新登录)
- ssh-agent bash \ 将代理程序启动
- ssh-add \ 将秘钥文件的口令托管给代理
- ssh danran@192.168.198.131
Xshell生成key认证

选择加密算法及位数


输入秘钥的口令,口令可为空


秘钥导出保存到本地

将导出的秘钥文件传输到需连接的主机上的~/.shh下
cat .ssh/id_rsa_1024.pub > .ssh/authorized_keys 将拷贝的秘钥文件必须命名为authorized_keys

使用xshell建立会话连接
验证方式选择Public Key认证

若秘钥文件添加过口令,则在此键入秘钥的口令

SecureCRT生成公钥文件

选择秘钥的加密算法

选择键入秘钥文件的口令,可为空

加密算法的位数

选择公钥私钥文件的存放到本地的路径

将本地的公钥文件传输到需连接主机的~/.ssh/下
将传输的公钥文件格式进行转换ssh-keygen -i -f Identity.pub >> ~/.ssh/authorized_keys \\ -i指定公钥文件的路径,并命名为authorized_keys
新建一个会话连接

选择验证方式和输入主机地址及用户名,即可登录

SSH的相关内容
http://www.cnblogs.com/JevonWei/p/7231348.html
通过ssh协议实现用户key认证登录的更多相关文章
- [转]SSH 原理和基本使用:ssh 安全配置 以及ssh key 认证登录
一.什么是 SSH ? SSH全称(Secure SHell)是一种网络协议,顾名思义就是非常安全的shell,主要用于计算机间加密传输.早期,互联网通信都是基于明文通信,一旦被截获,内容就暴露无遗. ...
- win10环境下为mongoDB创建用户并认证登录
一.配置mongoDB的bin目录到环境变量中的path;例如:D:\DatabaseService\MongoDB\Server\4.0\bin 二.cmd打开控制台,然后输入mongo回车,可以进 ...
- Java 实现 SSH 协议的客户端登录认证方式--转载
背景 在开篇之前,让我们先对 SSH 协议有个宏观的大致了解,这样更有利于我们对本文的加深了解.首先要提到的就是计算机网络协议,所谓计算机网络协议,简单的说就是定义了一套标准和规则,使得不同计算机之间 ...
- Linux中SSH服务基于key认证实践
众所周知ssh是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,它默认工作在tcp的22号端口,具体实现的软件有:openssh(centos默认安装的),dropbear.ssh协议目前 ...
- linux SecureCRT ssh key认证登陆
转自:http://blog.chinaunix.net/uid-20639775-id-3207171.html 通过SecureCRT创建key登录认证 一.生成公钥/密钥对 使用SecureCR ...
- linux ssh 使用深度解析(key登录详解)
SSH全称Secure SHell,顾名思义就是非常安全的shell的意思,SSH协议是IETF(Internet Engineering Task Force)的Network Working Gr ...
- Linux下基于HTTP协议带用户认证的GIT开发环境设置
Git 的访问可以采用 HTTP 或 SSH 协议安全的访问,通常我们使用 gitlib 进行 Web 管理,但是在 Linux 命令行开发环境下,基本都是使用 SSH 协议,只需要在 gitlib ...
- Linux学习笔记总结--ssh认证登录
原理简介 SSH证书认证登录的基础是一对唯一匹配密钥: 私钥(private key)和公钥(public key).公钥用于对数据进行加密,而且只能用于加密.而私钥只能对使用所匹配的公钥,所加密过的 ...
- 配置用户通过Telnet登录设备的身份认证(AAA本地认证)
背景信息 用户通过Telnet登录设备时,设备上必须配置验证方式,否则用户无法成功登录设备.设备支持不认证.密码认证和AAA认证三种用户界面的验证方式,其中AAA认证方式安全性最高. 采用AAA本地认 ...
随机推荐
- Android studio导出AAR包问题整理。
最近因为项目需求开始整理一个SDK 以AAR的方式提供出去.在整理的过程中遇到了很多坑. 以下是一些总结希望能帮助遇到同样问题的人. 1.怎么导出AAR,这种文章太多了,我贴一个大家可以做参考. ht ...
- NodeJS学习目录
前面的话 几年前,对于学习NodeJS可能还有所迟疑,怕分散了前端学习的精力.但到了现在,如果不学习nodeJS,前端的学习却可能无法再有所进展.技术的进步就是这么残酷.对新技术观望的时候,该技术已经 ...
- Redux源码分析之bindActionCreators
Redux源码分析之基本概念 Redux源码分析之createStore Redux源码分析之bindActionCreators Redux源码分析之combineReducers Redux源码分 ...
- Eclipse错误:Implicit super constructor ClassName is undefined for default constructor. Must define an explicit constructor
public class Test01 { private String name; private int age; public Test01(String name){ this.name = ...
- Vue事件处理
前面的话 Vue事件监听的方式貌似违背了关注点分离(separation of concern)的传统理念.实际上,所有的Vue.js事件处理方法和表达式都严格绑定在当前视图的ViewModel上,它 ...
- F数圈圈
Description 幼儿园的小朋友对数字其实不是很感兴趣,他们更感兴趣的是形状,现在给你一个数字,小朋友都会数出其中一共有多少圆圈圈 Input 一个数字n长度不超过19位 Output 输出其中 ...
- 序列化之protobuf与avro对比(Java)
最近在做socket通信中用到了关于序列化工具选型的问题,在调研过程中开始趋向于用protobuf,可以省去了编解码的过程.能够实现快速开发,且只需要维护一份协议文件即可. 但是调研过程中发现了pro ...
- python3.4下django集成使用xadmin后台
环境:window7 x64.python3.4.django1.10 一.pip install xadmin安装报错 1.使用pip install xadmin命令安装可能报如下错误: 2.解决 ...
- 关于mac下配置mysql心得
PS:配置一个mysql烦了一天,不过还是有所收获. 首先,下载安装我就不多啰嗦了.关键是在我们安装的最后会有一个临时密码,例如我的PBxsy=ES71(u: 这是非常重要的信息,如果没有得到的话,建 ...
- Linux 日常使用小记
一.Oracle VirtualBox安装Linux7.0全屏设置 1. 点击菜单栏 设备 –> 分配光驱 –> 选择一个虚拟光盘,找到VirtualBox安装目录下的VBoxGuestA ...







