M22 使用非对称密钥实现ssh自动登陆

一 实验目的

一般在用户使用ssh客户端登陆ssh服务器时需要使用用户名和密码,本实验使用非对称加密的方式实现了无密码登陆ssh服务器。

二 实验流程

M22 使用非对称密钥实现ssh自动登陆 、

1 在客户端生成非对称密钥对

2 将非对称密钥中的公钥发送给ssh服务器端相应的帐号

3 当客户端通过ssh协议与服务器端发起连接时,客户端将私钥加密过的签名发送给服务器端,服务器端使用客户端的公钥确认该签名有效并通过认证,然后建立ssh连接

三 实验过程

1 客户端生成非对称密钥

# cd ~/.ssh

使用ssh-keygen命令可以自动生成密钥对

ssh-keygen的用法如下:
ssh-keygen [-q] [-b bits] [-t dsa | ecdsa | ed25519 | rsa | rsa1] [-p new_passphrase] [-C comment] [-f output_keyfile]
-q:安静模式
-b:指定生成密钥的大小
-t:加密类型
-p:设置私钥的密码
-C:注释
-f:指定输出文件名

在这里直接使用缺省参数即可创建没有口令的非对称密钥对,也可以在后续选项里添加私钥密码

# ssh-keygen

或者使用-p参数将没有密码的私钥加密

# ssh-keygen -p -f id_isa

然后使用在登陆ssh服务器之前使用ssh agent管理链接,如果私钥未被加密,可以省略此步骤

# ssh-agent bash
# ssh-add

2 将私钥传送给ssh服务器

使用ssh-copy-id命令可以自动将私钥发送给ssh服务器端,并自动更改密钥名称

ssh-copy-id [-f] [-n] [-i [identity_file]] [-p port] [-o ssh_option] [user@]hostname

可选参数有:
-f:强制模式,不检测服务器上是否已经有了私钥
-n:检测服务器上的账户是否已经有客户端的公钥
-i:确认文件内容
-p:设置ssh端口
-o:设置ssh选项

在本实验使用如下方法:

# ssh yangfan@172.18.55.6

3 连接ssh服务器

# ssh yangfan@172.18.55.6
Last login: Wed Apr 12 22:21:24 2017 from 172.18.100.9
[yangfan@centos6 ~]$

实现了自动登陆

4 更新密钥

如果遇到客户端需要更换密钥的情况,需要重复以上步骤,最后执行如下命令将私钥更新到ssh-agent

# ssh-add

原创文章,作者:realmaster,如若转载,请注明出处:http://www.178linux.com/73235

(0)
realmasterrealmaster
上一篇 2017-04-12 10:28
下一篇 2017-04-13 11:35

相关推荐

  • Linux编译安装

    Linux编译安装    Linux上真正可以执行的文件是二进制文件,这些可以执行的二进制文件是哪儿来的呢?首先,必须要写程序的源代码,然后,由编译程序将程序的源代码 编译成二进制形式。源代码是由程序员编写的,使用特定的程序语言,如C,C++,Java,Python。但是机器看不懂这些语言,所以要使用编译程序将这些语言编写的源代码编译成机…

    Linux干货 2016-08-24
  • Linux基础 & bash相关

    Q1:Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 文件管理类命令: cd, ls, touch, cp, mv, rm, cat, tac, more, less, tail, head; 详细介绍以上命令: cd: 在Linux文件系统上,可以使用切换目录命令cd将shell会话切换到另一个目录。 命令格式: ~]#&nbsp…

    Linux干货 2016-11-06
  • rpm

    软件运行环境 API:Application Programming Interface     POSIX:Portable OS 程序源代码–> 预处理–> 编译–> 汇编–> 链接   &nb…

    Linux干货 2016-08-21
  • linux树状结构

    linux 目录结构   /:根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中 /bin:/usr/bin:可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。 /boot:放置linux系统启动时用到的一些文件。/boot/vmlinuz为linux的内核文…

    Linux干货 2016-08-05
  • linux文件管理类、bash的基础命令以及习题。

    文件管理工具:cp, mv, rm cp命令:copy 源文件:目标文件; 单源复制:cp [OPTION]… [-T] SOURCE DEST 多源复制:cp [OPTION]… SOURCE… DIRECTORY         cp&nb…

    Linux干货 2016-11-05
  • CollabNetSubversionEdge服务搭建

    准备目录并设置权限 [root@localhost ~]# mkdir /var/svn [root@localhost ~]# chown bohui:bohui /var/svn/ [root@localhost ~]# chmod 700 /v…

    Linux干货 2015-10-18