文档章节

Linux下用SCP无需输入密码传输文件

淡定的米哥
 淡定的米哥
发布于 2017/08/29 17:43
字数 546
阅读 44
收藏 0

Linux服务器之间经常会遇到相互传送文件,使用scp命令老是提示需要密码,下面介绍一下免密码的方法:

A服务器的IP:192.168.0.1,B服务器的IP:192.168.0.2,需求:需要从A免密码输入复制文件至B


1. 在服务器A上执行如下命令来生成配对密钥

ssh-keygen -t rsa 

按照提示操作,注意,不要输入passphrase,因为我的之前已经操作过,所以还提示了是否覆盖,输入 "y"回车就可以。其他提示信息如下:

Generating public/private rsa key pair. 
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa. 
Your public key has been saved in /root/.ssh/id_rsa.pub. 
The key fingerprint is: 
ff:8e:85:68:85:94:7c:2c:46:b1:e5:2d:41:5c:e8:9b root@localhost.domain

2. 将 /root/.ssh/ 目录中的 id_rsa.pub 文件复制到 服务器 B 的 /root/.ssh/ 目录中,并改名为 authorized_keys

scp .ssh/id_rsa.pub root@192.168.0.2:/root/.ssh/authorized_keys

以后从服务器A scp 到服务器 B 就不需要密码了。

3.使用此方法需要注意:复制的两台计算机需要用相同的账户名,这里都是用的root。为了安全起见,需要在两台机器中创建相同的账号,然后在服务器A 上用 su 命令切换至该账号下,然后执行第1步,第2步中复制文件时可能 ~/.ssh/ 目录并不存在,需要手动创建。

在第2步中如果机器中已经存在authorized_keys文件,则需注意,这个文件可以包含多个SSH验证信息,这时可用 cat >> 命令将验证文件内容附加上去。

现在服务器A上执行脚本

scp ~/.ssh/id_rsa.pub root@192.168.0.2:/root/.ssh/s.pub

然后在服务器B 上执行

cat ~/.ssh/s.pub >> ~/.ssh/authorized_keys

最后可以用个小的文本文件试试,在服务器A上执行

touch ~/test
scp ~/test root@192.168.0.2:/root/

在服务器 B 上用 ls查看是否成功,其实刚才在服务器A 上执行 scp 的时候已经提示传输成功了。

本文转载自:http://www.cnblogs.com/wayne173/p/5505863.html

共有 人打赏支持
淡定的米哥
粉丝 37
博文 76
码字总数 14409
作品 0
朝阳
高级程序员
私信 提问
[转] linux 下用 SCP 命令进行网络传输

早上来了看看vv15.com写着前 scp 的内容,因为自己偶尔也会用到.所以就在自己的机器上测试了一下,结果不错。下面先是我测试的结果,在传转的过程中要你输入密码才可以进行. ( 当然你也可以启...

华宰
2010/12/24
144
0
Linux下用SCP无需输入密码获取文件

通常用scp命令通过ssh获取对方linux主机文件的时候都需要输入密码 确认,如果需要在主机上做一个自动获取文件的shell脚本,这样显然 是不行的,通过下面的设置,可以不需要输入密码,直接获到...

小编辑
2010/06/06
900
1
几种方法来实现scp拷贝时无需输入密码

几种方法来实现scp拷贝时无需输入密码 欢迎转载!转载时请注明出处:http://blog.csdn.net/nfer_zhuang/article/details/42646849 前言 我在工作中经常要将一些文件传输到另外一个服务器上,...

rootliu
11/06
0
0
Red Hat集群实现SSH无密码互联

Red Hat自带有openSSH,不需要像其他Linux一样需要安装SSH。 打开Terminal,更换权限为root(su - root) 第一步: 使用 #ssh-keygen -t dsa ,使用这个命令之后会提示是否输入密码,这里不输...

dukeke
2014/05/10
0
0
linux系统中scp命令的用法

scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。linux的scp命令可以在linux服务器之间复制文件和目录. scp命令的用处: scp在网络上不同的主机之间复制文...

李长春
2012/02/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

kubernetes notes

Error from server (ServerTimeout): error when creating "mysql.yaml": No API token found for service account "default", retry after the token is automatically created and added t......

kut
31分钟前
2
0
代理模式---静态代理

package com.atguigu.java; //接口的应用:代理模式---静态代理。 public class ProxyTest { public static void main(String[] args) { NetWork work = new RealServer(); ProxyServer pro......

architect刘源源
47分钟前
2
1
工作中的一些Git使用

git stash list 查看所有stash git stash apply 0 应用序号为0那个stash并且不删除它 git stash pop 0 应用序号为0那个stash并且删除删除删除它 git stash save "env" stash当前的改动并且取...

-___-
今天
1
0
C# webservice 配置总结

为了方便下次查看,把总结配置文件放这里,看的方便。 <?xml version="1.0" encoding="utf-8"?><!-- 有关如何配置 ASP.NET 应用程序的详细消息,请访问 http://go.microsoft.com/f...

轻轻的往前走
今天
0
0
SpringCloud之Eureka

Eureka简介 什么是Eureka? Eureka是一种基于rest提供服务注册和发现的产品: Eureka-Server: 用于定位服务,以实现中间层服务器的负载平衡和故障转移。 Eureka-client:用于服务间的交互,内...

lc_fly1
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部