搭建集群机器192.168.0.100和192.168.0.200里,需要两台机器中间相互拷贝文件:

方式一:下载192.168.0.100机器文件到本地,再将本地文件拷贝到B机器

方式二:192.168.0.100#scp  -r /home/test  root@192.168.0.200:/home/

linux命令scp可以在两台服务器192.168.0.100和192.168.0.200之间互传文件。第一次会提示授权操作,输入yes后在输入root用户的密码,会将192.168.0.100机器的/home/test文件拷贝到192.168.0.200机器的/home下。

现每次192.168.0.100和192.168.0.200之间互传文件都要输入密码比较麻烦,现介绍一种采用公钥/私钥认证的方式去掉密码登录。

注意点:

1.互传文件为同一登录用户root

2.秘钥存放位置为当前登录用户下 #cd ~/.ssh  可查看

一:创建一个ssh key

192.168.0.100机器执行如下代码:

$ ssh-keygen -t rsa -C "your_email@example.com" -t rsa-test

代码中各个参数含义为:

-t 指定密钥类型,默认是 rsa ,可以省略

-C 设置注释文字,比如邮箱,可以忽略

-f 指定密钥文件存储文件名,使用默认文件名(推荐);那么可以看到生成的两个文件 id_rsa  id_rsa.pub(id_rsa这个叫私钥;id_rsa.pub这个叫公钥)

 

接着又会提示你输入两次密码(该密码是你push文件的时候要输入的密码,而不是github管理者的密码),

当然,你也可以不输入密码,直接按回车。那么push的时候就不需要输入密码,直接提交到github上了,如:

Enter passphrase (empty for no passphrase):
# Enter same passphrase again:

接下来,就会显示如下代码提示,如:

Your identification has been saved in /c/Users/you/.ssh/id_rsa.
# Your public key has been saved in /c/Users/you/.ssh/id_rsa.pub.
# The key fingerprint is:
# 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com

当你看到上面这段代码的收,那就说明,你的 SSH key 已经创建成功,你只需要添加到github的SSH key上就可以了。

二:将机器192.168.0.100上的公钥发送到机器192.168.0.200的~.ssh/authorized_keys里

服务器为:192.168.0.100
192.168.0.100# scp /home/root/.ssh/id_rsa.pub root@192.168.0.200:/home/root/.ssh
服务器为:192.168.0.200
192.168.0.200#cd ~/.ssh
192.168.0.200#cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

注意:如192.168.0.200机器的/home/root/.ssh下存在id_rsa.pub会将文件内容覆盖,因此我们可以将新公钥进行文件的追加。

三:执行复制操作

192.168.0.100#scp  -r /home/test  root@192.168.0.200:/home/

如还需要密码,则在192.168.0.200服务器里的/etc/ssh/sshd_config文件,关键字PubkeyAuthentication 确保这个值是 yes;若这个sshd_config有修改,则需要重启sshd(#service sshd restart)

四:权限问题

192.168.0.200服务器里查看:

/home/root文件夹的权限为 700,即 显示的权限应该是 drwx------

/home/root/.ssh文件夹的权限也为700
/home/root/.ssh/authorized_keys 文件权限为600,即,显示的权限应该是 -rw-------

完毕之后,退出服务器的登录,再使用ssh登录,你就会发现服务器不会再向你询问密码了.

五:调试

192.168.0.100# ssh admin@192.168.0.200 -vvv

六:问题总结

目标机器配置SSH

#vi /etc/ssh/sshd_config
//更改为下面行
PermitRootLogin yes
#systemctl restart sshd

https://community.qingcloud.com/topic/1140/%E5%85%B3%E4%BA%8Essh%E6%97%A0%E6%B3%95%E7%99%BB%E9%99%86%E7%9A%84%E6%8E%92%E6%9F%A5%E6%80%9D%E8%B7%AF

https://blog.csdn.net/menghuanbeike/article/details/78958015 

【原】linux两台服务器之间免密登录方法的更多相关文章

  1. 【Linux】两台服务器ssh免密登录

    背景: 有些场景可能用到两台服务器ssh免密登录.比如服务器自动化部署 开始准备:  服务器A  linux   ip: 192.168.1.1 服务器B  linux  ip: 192.168.1. ...

  2. SSH远程登录:两台或多台服务器之间免密登录设置

    有两台(或多台)同局域网的服务器A:192.168.2.21,B:192.168.2.25.让A,B这两台服务器之间能两两互相免密登录,并且每台服务器都可以自我免密登录(自我免密登录即:ssh loc ...

  3. 多台服务器-SSH免密登录设置

    在4台服务器-SSH免密登录设置,如以下4台服务器 master1 node001 node002 node003 我想在master1对4台服务器进行拉取或者分发任务或者是集群服务器的批量操作,但是 ...

  4. Linux 两台服务器之间传输文件和文件夹

    今天处理一个项目要迁移的问题,突然发现这么多图片怎么移过去,可能第一时间想到的是先从这台服务器下载下来,然后再上传到另外一台服务器上面去,这个方法确实是可行,但是实在是太费时间了,今天我就教大家怎么快 ...

  5. 两个linux服务器之间免密登录

    服务器A(假设为10.64.104.11) 免密登录服务器B(10.64.104.22) 1.登录服务器A 2.生成公私钥 ssh-keygen -t rsa 3.将生成的.pub文件发送到服务器B上 ...

  6. Linux服务器之间免密登录设置

    说明: A为linux服务器a B为linux服务器b 每台linux都有ssh的服务端和客户端,linux下的ssh命令就是一个客户端 我们常用ssh协议来进行登陆或者是文件的拷贝,都需要密码 A要 ...

  7. Linux 两台服务器之间传递文件

    参考: https://www.cnblogs.com/clovershell/p/9870603.html linux采用scp命令拷贝文件到本地,拷贝本地文件到远程服务器   // 假设远程服务器 ...

  8. linux两台服务器之间文件/文件夹拷贝

    跨服务器拷贝需要用到的命令是scp. ----------------------拷贝文件夹---------------------------------------------- 把当前文件夹t ...

  9. Linux 两台服务器之间传输文件

    一.scp命令的使用 1.传输文件(不包括目录) 命令格式:scp 源文件路径目录/需要传输的文件 目标主机的用户名@目标主机IP/主机别名:目标主机存储目录 举个例子:scp /root/ceshi ...

随机推荐

  1. Django_模板

    1. 模板变量 小插曲 2. 模板点语法和标签 2.1 获取属性 2.2 调用方法 2.3 获取索引 2.4 获取字典中的值 3. 模板中的标签 3.1 if 3.2 for 3.3 注释 乘除 整除 ...

  2. Linux(Mac)常用命令

    df -B[G,M,K]查看磁盘剩余空间 free -mh查看内存 netstat -ntlp查看当前监听的网络端口 mount -t auto /dev/cdrom /media/cdrom挂载cd ...

  3. Django的安装、使用详解、自动化测试应用以及程序打包

    1.Django的安装 pip install Django 验证 Django 是否能被 Python 识别 >>> import django >>> prin ...

  4. Codeforces Round #624 (Div. 3) A. Add Odd or Subtract Even(水题)

    You are given two positive integers aa and bb . In one move, you can change aa in the following way: ...

  5. BSGS && EXBSGS

    基础BSGS 用处是什么呢w 大步小步发(Baby-Step-Giant-Step,简称BSGS),可以用来高效求解形如\(A^x≡B(mod C)\)(C为素数)的同余方程. 常用于求解离散对数问题 ...

  6. 「CSP-S模拟赛」2019第二场

    目录 T1 Jam的计数法 题目 考场思路(正解) T2 「TJOI / HEOI2016」排序 题目 考场思路(假正解) 正解 T3 「THUWC 2017」随机二分图 题目 考场思路 正解 这场考 ...

  7. 聊聊、Spring自动扫描

    一.PathMatchingResourcePatternResolver 二.SimpleMetadataReaderFactory 三.实现(核心代码) private static final ...

  8. Git创建合并和删除分支

    创建并切换分支 git checkout命令加上-b参数表示创建并切换分支,以下为创建并切换到dev分支: 相当于先通过 $ git branch dev 命令创建dev分支,然后 $ git che ...

  9. vue基础笔记

    目录 Vue 渐进式 JavaScript 框架 一.走进Vue 二.Vue实例 三.生命周期钩子 四.Vue指令 五.组件 六.Vue-CLI 项目搭建 Vue 渐进式 JavaScript 框架 ...

  10. template-组件封装

    HTML: //:ligit='ligit' 一致 <div id='app'> <template-swiper :ligit='ligit'></template-s ...