linux免密scp传输
时间: 2023-09-10 19:10:54 浏览: 125
在 Linux 系统中,可以通过设置 SSH 免密登录来实现免密传输。具体步骤如下:
1. 在本地生成 SSH 密钥对:
```bash
ssh-keygen -t rsa
```
2. 将公钥拷贝至远程主机:
```bash
ssh-copy-id user@remote_host
```
其中,user 是远程主机的用户名,remote_host 是远程主机的 IP 地址或域名。
3. 确认免密登录是否成功:
```bash
ssh user@remote_host
```
如果无需输入密码即可登录,则表示免密登录设置成功。
4. 使用 scp 命令进行免密传输:
```bash
scp local_file user@remote_host:/remote_path/
```
其中,local_file 是本地文件的路径,user 是远程主机的用户名,remote_host 是远程主机的 IP 地址或域名,/remote_path/ 是远程主机上存放文件的路径。
如果一切设置正确,文件就会被免密传输到远程主机上。
相关问题
scp ${script_path}/jq-linux64 ${CUR_USER}@${node}:${jq_path} 改为不支持免密scp 传输文件 交互输入密码
可以将命令改为使用sshpass命令来实现交互式输入密码进行SCP传输文件。具体命令如下:
sshpass -p "password" scp ${script_path}/jq-linux64 ${CUR_USER}@${node}:${jq_path}
其中,将"password"替换为实际的目标主机密码即可。
linux设置scp免密传输
要在Linux上设置SCP免密传输,需要执行以下步骤:
1. 生成公钥和私钥:使用ssh-keygen生成公钥和私钥。在终端中输入以下命令:
```
ssh-keygen -t rsa
```
一路回车,不需要输入密码。
2. 将公钥复制到目标主机:使用ssh-copy-id命令将公钥复制到目标主机上。在终端中输入以下命令:
```
ssh-copy-id username@remote_host
```
其中,username是目标主机上的用户名,remote_host是目标主机的IP地址或主机名。
3. 测试SCP免密传输:在终端中输入以下命令进行测试:
```
scp local_file username@remote_host:remote_folder
```
其中,local_file是本地文件的路径,username是目标主机上的用户名,remote_host是目标主机的IP地址或主机名,remote_folder是目标主机上的目标文件夹路径。
如果SCP成功传输文件而不需要输入密码,则SCP免密传输设置成功。
阅读全文