我们采用RSA非对称加密算法,原理:

如果,A要和B通讯,则:

(1). A通过RSA算法生成公钥(.pub)和私钥(公钥用于加密,私钥用于解密)

(2). B将A的公钥文件(.pub)内容加入到authorized_keys中

(3). 此时A便可以向B进行通讯,而B不能向A进行通讯

现有两台服务器:

A: 123.118.171.x(root@study)

B: 47.94.199.x (root@centos7)

现在要实现从A向B进行ssh免密登录: ssh root@47.94.199.x

首先,在A服务器上生成rsa密钥对key-rsagen -t rsa

然后将公钥id_rsa.pub的内容追加到B服务器.ssh目录(通过cd ~/.ssh访问)下的authorized_keys当中,博主通过lrzsz工具来将id_rsa.pub上传到了B服务器下的.ssh目录下

将id_rsa.pub内容进行追加到authorized_keys当中

此时A服务器便可以直接用ssh免密登录B服务器了,让我来尝试一下~

大功告成!~

因为博主修改了/etc/motd这个文件,所以登录画面会与大家的有所不同~

现在也可以使用scp指令进行免密传输文件了,从A服务器传输文件给B服务器,在A服务器上键入命令:

scp test.txt root@47.94.199.x:/root/  # 则把A服务器上当前路径下的test.txt文件传输到了B服务器的/root/目录下

若想要实现A与B之间的双向通信,则需要在B服务器上进行同样的操作,生成RSA密钥对,并将公钥id_rsa.pub追加到A服务器下的authorized_keys文件中,这里就不进行多余的叙述了,大家自己实验吧~

其他请参考:(一)SSH加密登录协议(二)SSH加密认证原理

[CentOS7] ssh免密登录 scp免密传输的更多相关文章

  1. ssh 制作免密登录(免密登录多台服务器)

    场景:服务器B (192.168.1.101)免密登录A(192.168.1.100)服务器 1.登录服务器B ①生产公钥 ssh-keygen -t rsa Enter file in which ...

  2. 【Linux】服务器间免密登录、免确认机器指纹

    1.生成密钥 ssh-keygen -t rsa -C "<填写自己方便识别的注释>" -b 4096  没什么问题就执行三次空格. 三次问题是1.填入生成密钥对的路径 ...

  3. Ubuntu如何配置SSH免密登录

    前言 在搭建hadoop集群时,需要主机和副机之间实现SSH免密登录 一.环境准备 1.ubuntu两台 二.安装SSH 1.首先检测一下本机有没有安装SSH服务,如果没有任何打印说明未安装 sudo ...

  4. Ubuntu 开启SSH服务以及有关设置:安装,指定端口号、免密登录、远程拷贝

    本文所用系统为 Ubuntu 18.04   什么是SSH?     简单说,SSH是一种网络协议,用于计算机之间的加密登录.全名为:安全外壳协议.为Secure Shell的缩写.SSH为建立在应用 ...

  5. SSH免密登录(并且免yes交互)

    问题描述:主机A使用ssh协议远程主机B,默认会开启口令认证,即输入主机B对应用户的登录密码,并且第一次登录时,主机A需验证是否接受来自主机B的公钥,输入"yes/no"完成交互. ...

  6. ssh免密码登录之分发密钥

    ssh免密码登录之分发密钥 1.ssh免密码登录 密码登录和密钥登录有什么不同? 密码登录(口令登录),每次登录都需要发送密码(ssh) 密钥登录,分为公钥和私钥,公钥相当于锁,私钥相当于钥匙 1.1 ...

  7. Linux修改hostname与免密码登录

    修改hostname [root@centos7 ~]$ hostnamectl set-hostname hadoop001 # 使用这个命令会立即生效且重启也生效 [root@centos7 ~] ...

  8. Centos7通过SSH使用密钥实现免密登录

    日常开发中,难免会有登录服务器的操作,而通过ssh方式登录无疑是比较方便的一种方式. 如果登录较频繁,使用密钥实现免密登录无疑更是方便中的方便.因此本文就简单说一说如何实现免密登录. 一.安装配置ss ...

  9. Centos7 通过SSH使用密钥实现免密登录

    Public Key认证的主要魅力在于认证时承诺不必提供密码就能够同远程系统建立连接. Public Key认证的基础在于一对密钥,public key和private key,public key对 ...

随机推荐

  1. mysql的SQL_CALC_FOUND_ROWS 使用 类似count(*) 使用性能更高

    mysql的SQL_CALC_FOUND_ROWS 使用 类似count(*) 使用性能更高 在很多分页的程序中都这样写: SELECT COUNT(*) from `table` WHERE ... ...

  2. 如何更好的理解js中的this,分享2段有意思的代码

    关于js中this的浅析,大家可以点击[彻底理解js中this的指向,不必硬背]这篇博客了解. 今天遇到2段比较有意思的代码. ----------------第一段----------------- ...

  3. java--xml文件读取(DOM)

    1.表现:一“.xml”为扩展名的文件 2.存储:树形结构 3.xml解析应用: 不同应用程序之间的通信-->订票软件和支付软件 不同的平台间通信-->操作系统 不同平台间数据的共享--& ...

  4. Linux-解决putty无法直接使用root用户远程登录linux主机的问题

    问题描述: 有时,在使用putty连接远程linux主机时会发现,无法直接使用root登录, 但是可以使用其他用户登录,然后切换至root用户. 解决办法: 1.修改配置文件 vi /etc/ssh/ ...

  5. 【leetcode刷题笔记】String to Integer (atoi)

    Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. ...

  6. Linux下几种RTP协议实现的比较和JRTPLIB编程讲解

    流媒体指的是在网络中使用流技术传输的连续时基媒体,其特点是在播放前不需要下载整个文件,而是采用边下载边播放的方式,它是视频会议. IP电话等应用场合的技术基础.RTP是进行实时流媒体传输的标准协议和关 ...

  7. ACM学习历程—UESTC 1226 Huatuo's Medicine(数学)(2015CCPC L)

    题目链接:http://acm.uestc.edu.cn/#/problem/show/1226 题目就是构造一个对称的串,除了中间的那个只有1个,其余的两边都是对称的两个,自然答案就是2*n-1. ...

  8. uoj problem 12 猜数

    题目大意 每次询问给出g,l,有\(a*b = g*l = n\),且\(a,b\)均为\(g\)的倍数.求\(a+b\)的最小值和\(a-b\)的最大值. 题解 因为\(a,b\)均为\(g\)的倍 ...

  9. django TimedRotatingFileHandler log

    15.9.6. TimedRotatingFileHandler¶ The TimedRotatingFileHandler class, located in the logging.handler ...

  10. Tangent space(切线空间)

    https://en.wikipedia.org/wiki/Frenet%E2%80%93Serret_formulas The tangent, normal, and binormal unit ...