author:JevonWei

版权声明:原创作品


用户实现key认证登录

主机A   192.168.198,134
主机B 192.168.198,131
主机C 192.168.198,136
  • 创建无秘钥连接

    主机A秘钥连接主机B

    1. 客户端生成秘钥对

      ssh-keygen -t rsa [-p ' '] [-f "~/.ssh/id_rsa"] \-t 指定加密类型,默认为rsa,可省略,-P指定创建秘钥连接,可为空,-f指定秘钥文件存放路径,默认存放路径为~/.ssh/id_rsa
    2. 客户端将生成的公钥文件传输给ssh服务端对应的用户家目录下

      ssh-copy-id -i ~/.ssh/id_rsa.pub danran@192.168.198.131 \ -i 指定公钥文件路径,传输给192.168.198.131主机上的danran用户的家目录下
    3. 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.134 uname -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 指定秘钥文件

  • 使用代理验证保存秘钥连接的口令(代理退出需重新登录)

    1. ssh-agent bash \ 将代理程序启动
    2. ssh-add \ 将秘钥文件的口令托管给代理
    3. 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认证登录的更多相关文章

  1. [转]SSH 原理和基本使用:ssh 安全配置 以及ssh key 认证登录

    一.什么是 SSH ? SSH全称(Secure SHell)是一种网络协议,顾名思义就是非常安全的shell,主要用于计算机间加密传输.早期,互联网通信都是基于明文通信,一旦被截获,内容就暴露无遗. ...

  2. win10环境下为mongoDB创建用户并认证登录

    一.配置mongoDB的bin目录到环境变量中的path;例如:D:\DatabaseService\MongoDB\Server\4.0\bin 二.cmd打开控制台,然后输入mongo回车,可以进 ...

  3. Java 实现 SSH 协议的客户端登录认证方式--转载

    背景 在开篇之前,让我们先对 SSH 协议有个宏观的大致了解,这样更有利于我们对本文的加深了解.首先要提到的就是计算机网络协议,所谓计算机网络协议,简单的说就是定义了一套标准和规则,使得不同计算机之间 ...

  4. Linux中SSH服务基于key认证实践

    众所周知ssh是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,它默认工作在tcp的22号端口,具体实现的软件有:openssh(centos默认安装的),dropbear.ssh协议目前 ...

  5. linux SecureCRT ssh key认证登陆

    转自:http://blog.chinaunix.net/uid-20639775-id-3207171.html 通过SecureCRT创建key登录认证 一.生成公钥/密钥对 使用SecureCR ...

  6. linux ssh 使用深度解析(key登录详解)

    SSH全称Secure SHell,顾名思义就是非常安全的shell的意思,SSH协议是IETF(Internet Engineering Task Force)的Network Working Gr ...

  7. Linux下基于HTTP协议带用户认证的GIT开发环境设置

    Git 的访问可以采用 HTTP 或 SSH 协议安全的访问,通常我们使用 gitlib 进行 Web 管理,但是在 Linux 命令行开发环境下,基本都是使用 SSH 协议,只需要在 gitlib ...

  8. Linux学习笔记总结--ssh认证登录

    原理简介 SSH证书认证登录的基础是一对唯一匹配密钥: 私钥(private key)和公钥(public key).公钥用于对数据进行加密,而且只能用于加密.而私钥只能对使用所匹配的公钥,所加密过的 ...

  9. 配置用户通过Telnet登录设备的身份认证(AAA本地认证)

    背景信息 用户通过Telnet登录设备时,设备上必须配置验证方式,否则用户无法成功登录设备.设备支持不认证.密码认证和AAA认证三种用户界面的验证方式,其中AAA认证方式安全性最高. 采用AAA本地认 ...

随机推荐

  1. ABP 框架webapi设置跨域

    1.在.WebApi项目中使用  NuGet Install-Package Microsoft.AspNet.WebApi.Cors 2.在xxxWebApiModule类中添加如下代码 publi ...

  2. GateSvr的设计2

    我们的目标是:1.业务Server集群部署,从网关发来的请求处理,程序自动找一台空闲的业务Server来处理这个请求,并将结果异步分发到服务网关,从而Push给客户端:2.一套业务Server挂了不会 ...

  3. 初学Python(六)——输入输出

    初学Python(六)——输入输出 初学Python,主要整理一些学习到的知识点,这次是输入输出. 输入: # -*- coding:utf-8 -*- ''''' python中的输出为print ...

  4. css中的几个小tip(一)

    原博:http://www.webhek.com/post/7-tips-web-front-developer-must-know__trashed.html 1.元素的margin-top.mar ...

  5. 22. leetcode 242. Valid Anagram(由颠倒字母顺序而构成的字)

    22. 242. Valid Anagram(由颠倒字母顺序而构成的字) Given two strings s and t, write a function to determine if t i ...

  6. nessus重置密码

    许久不用的nessus密码居然忘记了,查了下: cmd下进入到nessus的安装目录 提升为管理员,登录系统 如果想用之前的账号,可以直接在系统内重置密码.

  7. Java微信公众平台开发之扫码支付模式二

    官方文档点击查看 准备工作:已通过微信认证的公众号,域名可以不通过ICP备案借鉴了很多大神的文章,在此先谢过了大体过程:根据固定金额和商品的ID先生成订单,再生成二维码,客户扫一扫付款模式二支付的流程 ...

  8. MySQL锁与MVCC

    --MySQL锁与MVCC --------------------2014/06/29 myisam表锁比较简单,这里主要讨论一下innodb的锁相关问题. innodb相比oracle锁机制简单许 ...

  9. Linux内存详解

    --Linux内存详解 -----------------2014/05/24 Linux的内存上表现的不像windows那么直观,本文准备详细的介绍一下Linux的内存. 请看这下有linux命令f ...

  10. 【剑指offer】丑数

    把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. leetcode上也 ...