前言

创作开始时间:2021年6月6日13:43:01

这里详细记录一下如何使用scp进行文件传输,以及如何配置ssh,避免反复输入密码。

1、scp的使用

首先,scp一般是在Linux、Ubuntu的Terminal里面使用的。如果要在windows上用,一般需要打开git bash。

那么scp怎么用呢?

参考这两个文献即可:

于我而言,具体的操作是这样:

scp -rvp <user_name>@<ip_address>:<your_src_folder>  <dst_folder>

<xxx> 这些都是要根据你的情况进行替换的内容。
-rvp参数的含义可以看上面的网页。

但是,这样每次都需要输入密码去验证,很烦。

那么接下来讲如何配置ssh,从而不需要密码验证:

2、ssh配置(免密码验证)

#1. 生成公钥私钥对
ssh-keygen -t rsa

#2. 通过scp拷贝到服务器,或者也可以直接登录服务器创建这个文件,把内容复制过去就行。
# 用scp的话,这一步还是需要输入密码的
scp /home/apr/.ssh/id_rsa_for_aliyun_server.pub    apr@<your_remote_machine_ip>:/home/apr/

#3. 登录服务器,可以用ssh  apr@<your_remote_machine_ip>,也可以通过xshell
# 这一步也要输密密麻麻
ssh apr@<your_remote_machine_ip>

#4. 把pub文件中的内容追加到~/.ssh/authorized_keys文件中
cd ~/
ls ~/.ssh/authorized_keys
# 如果没有这个文件的话就创建一个
echo "" > ~/.ssh/authorized_keys
# 把pub文件的内容追加写入~/.ssh/authorized_keys文件 (不是覆盖,是追加,所以是>>)
cat /home/apr/.ssh/id_rsa_for_aliyun_server.pub >> ~/.ssh/authorized_keys

#5. 验证是否还需要密码
ssh apr@<your_remote_machine_ip>
# 此时不需要输入密码了,ok了
# scp也同样不需要密码了

备注:以上就是全部过程,主要参考:
How to use the Linux ‘scp’ command without a password to make remote backups 还是挺清楚的。

小结

以上。

创作结束时间:2021年6月6日14:05:19

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐