前言

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

步骤

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

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

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

    例子: ssh ftpiosh@192.168.1.53

    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 ftpiosh@192.168.1.53

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

    

    

    b. 目标server查看公钥内容

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

    

  5. 验证公钥认证登录 

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

    例子: ssh ftpiosh@192.168.1.53

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

    

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

      

  

ssh 服务器之间公钥认证方式的配置的更多相关文章

  1. 批量检测GoAhead系列服务器中Digest认证方式的服务器弱口令

    最近在学习用python写爬虫工具,某天偶然发现GoAhead系列服务器的登录方式跟大多数网站不一样,不是采用POST等方法,通过查找资料发现GoAhead是一个开源(商业许可).简单.轻巧.功能强大 ...

  2. SSH的两种登录方式以及配置

    前言 SSH简介 Secure Shell(SSH) 是由 IETF(The Internet Engineering Task Force) 制定的建立在应用层基础上的安全网络协议.它是专为远程登录 ...

  3. Linux配置SSH公钥认证与Jenkins远程登录进行自动发布

    公钥认证,是使用一对加密字符串,一个称为公钥(public key), 任何人都可以看到其内容,用于加密:另一个称为密钥(private key),只有拥有者才能看到,用于解密. 在使用jenkins ...

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

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

  5. linux服务器之间传输文件的四种方式

    linux文件传输在内网渗透中至关重要,所以我在此总结一下几种Linux服务器之间传输文件的四种方式 1. scp [优点]简单方便,安全可靠:支持限速参数[缺点]不支持排除目录[用法]scp就是se ...

  6. SSH公钥认证(码云)

    开发者向码云版本库写入最常用到的协议是 SSH 协议,因为 SSH 协议使用公钥认证,可以实现无口令访问,而若使用 HTTPS 协议每次身份认证时都需要提供口令.使用 SSH 公钥认证,就涉及到公钥的 ...

  7. 修改CAS源码是的基于DB的认证方式配置更灵活

    最近在做CAS配置的时候,遇到了数据源不提供密码等数据的情况下,怎样实现密码输入认证呢? 第一步:新建Java项目,根据假面算法生成CAS加密工具 出于保密需要不提供自定义的加密工具,在您的实际项目中 ...

  8. OpenSSH 密码和公钥认证原理探究

    目录 配置和保护SSH H3 - 使用SSH 访问远程命令行 H4 - 什么是OpenSSH ? H4 - 登录方式: H4 - 登录并执行临时命令: H4 - 查看登录用户 H4 - 登录原理 密码 ...

  9. Linux搭建SSH服务器

    Linux 远程登录服务:ssh ·SSH是标准的网络协议,可用于大多数UNIX操作系统,能够实现字符界面的远程登录管理,它默认使用22号端口,采用密文的形式在网络中传输数据,相对于通过明文传输的Te ...

随机推荐

  1. 搞懂 SynchronizationContext

    SynchronizationContext -MSDN 很让人失望 我不知道为什么,目前在.Net下关于这个类只有很少的资料.MSDN文档也只有很少的关于如何使用SynchronizationCon ...

  2. thinkphp3.2.3在框架截取文字

    Common/Common/function.php加入以下代码 /** * * 字符截取 * @param string $string * @param int $start * @param i ...

  3. 将list中的数据通过某一个字段来分类存储的实例

    现有学生表 public class Student { /** * 班级id */ private String classId; /** * 学生name */ private String na ...

  4. uart启示1_task的写法

    task rx_data_task; input [12:0] RXD; reg [3:0] i; begin for (i=0;i<=13;i=i+1) begin repeat (2603) ...

  5. BFC与CFC

    1.在创建了 Block Formatting Context 的元素中,其子元素按文档流一个接一个地放置.垂直方向上他们的起点是一个包含块的顶部,两个相邻的元素之间的垂直距离取决于 ‘margin’ ...

  6. iOS 动画学习

    图层树.寄宿图以及图层几何学(一)图层的树状结构 技术交流新QQ群:414971585 巨妖有图层,洋葱也有图层,你有吗?我们都有图层 -- 史莱克 Core Animation其实是一个令人误解的命 ...

  7. netezza 数据库 取 季初 季末 时间

    -- 取季初那一天 select date_trunc( 'quarter',cast('20150820' as date)) -- 取季末那一天 select add_months(date_tr ...

  8. Clojure web初探

    项目环境:3.2.0-52-generic #78-Ubuntu SMP Fri Jul 26 16:21:44 UTC 2013 x86_64 x86_64 x86_64 GNU/LinuxLein ...

  9. epoll 反应堆

    epoll反应堆模型 ================================ 下面代码实现的思想:epoll反应堆模型:( libevent 网络编程开源库 核心思想) . 普通多路IO转接 ...

  10. linux下配置lamp时候出现The requested URL /info.php was not found on this server问题

    在经历修改各种配置文件和各种文件权限后,发现了怎么解决 On newer versions of Ubuntu, the document root is set to /var/www/html i ...