ssh 服务器之间公钥认证方式的配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssh 服务器之间公钥认证方式的配置相关的知识,希望对你有一定的参考价值。

前言

  项目中需要编写脚本在服务器之间上传或者下载文件,但没有相关服务器来测试脚本,于是就着手安装两台server,然后用ssh的相关命令去配置server之间公钥认证登录。

 

步骤

  1. 在VM Box下面安装两台Linux Server,并且都选用了桥接的网络类型,这样两台server会有自己独立的IP

  2. 当前server上使用ssh命令去连接另外一台server,由于公钥认证登录还没有配置,这时候是需要输入password才可以登录

    命令: ssh [user]@[hostname|ip]

    例子: ssh [email protected]

    a. 由于是首次连接,系统会提示是否继续连接 

    技术分享

 

    b. 输入yes后,系统会提示输入password,同时会在当前用户的家目录下面自动创建.ssh目录,然后在此目录下面创建know_hosts文件来存储目标server的信息

    技术分享

    技术分享

 

    c. 输入password以后,就连接到目标server,可以使用命令ls -al来查看内容

    技术分享

 

    d. 使用exit命令来断开连接

    技术分享

 

  3.  配置公钥认证登录,首先要使用ssh-keygen命令去创建当前server的公钥和私钥

    命令: ssh-keygen

    系统会提示输入秘钥存储的目录和秘钥名,如果不想输入,就按Enter,系统会使用默认的目录和秘钥名

    默认目录和秘钥名:/home/ftpiosh/.ssh/id_rsa,/home/ftpiosh/.ssh/id_rsa.pub,一个公钥和一个私钥

    技术分享

    技术分享

 

  4. 使用ssh-copy-id命令复制当前server的公钥到目标server的相应目录

    命令:ssh-copy-id [user]@[host name|ip]

    例子:ssh-copy-id [email protected]

    a. 系统提示输入密码,输入密码后,回显示一个key添加成功

    技术分享

    

    b. 目标server查看公钥内容

    公钥存储在/home/ftpiosh/.ssh/authorized_keys文件中

    技术分享

 

  5. 验证公钥认证登录 

    命令: ssh [user]@[hostname|ip]

    例子: ssh [email protected]

    系统会直接登录,不需要输入password

    技术分享

 

 以上纯属个人观点,如有不对之处,请指正!

       

 

  

以上是关于ssh 服务器之间公钥认证方式的配置的主要内容,如果未能解决你的问题,请参考以下文章

Xshell配置ssh免密码登录-密钥公钥(Public key)

Xshell配置ssh免密码登录-密钥公钥(Public key)与私钥(Private Key)登录

Xshell配置密钥公钥(Public key)与私钥(Private Key)登录

ssh配置公钥私钥登录服务器

Xshell5配置ssh免密码登录-公钥与私钥登录linux服务器(xshell如何登陆上阿里云服务器)

Linux之间配置SSH互信(SSH免密码登录)