Linux SCP无密码传输文件设置与使用教程
需积分: 39 10 浏览量
更新于2024-09-17
收藏 45KB DOC 举报
"SSH-SCP使用方法"
SSH-SCP(Secure Copy Protocol)是一种基于SSH协议的安全文件传输工具,常用于在Linux或Unix系统之间无密码地传输文件。在需要频繁进行文件传输或者自动化脚本中,避免每次手动输入密码是十分必要的。以下是详细步骤和注意事项:
1. **生成SSH密钥对**:
在主机A上,运行`ssh-keygen -t rsa`命令生成RSA公钥/私钥对。默认情况下,私钥会被保存在`~/.ssh/id_rsa`,公钥保存在`~/.ssh/id_rsa.pub`。在生成过程中,可以选择不设置密码(passphrase),以便于无密码登录。
2. **设置文件权限**:
确保`.ssh`目录、私钥文件和公钥文件具有正确的权限:
- `.ssh`目录:`chmod 700 ~/.ssh`
- 私钥文件:`chmod 600 ~/.ssh/id_rsa`
- 公钥文件:`chmod 644 ~/.ssh/id_rsa.pub`
- `authorized_keys`文件(稍后创建):`chmod 600 ~/.ssh/authorized_keys`
3. **复制公钥**:
将主机A的公钥`id_rsa.pub`复制到主机B的`~/.ssh/`目录下,并将其重命名为`authorized_keys`。可以通过`scp`命令实现:
```bash
scp ~/.ssh/id_rsa.pub root@192.168.0.3:/root/.ssh/authorized_keys
```
4. **设置主机B的信任**:
在主机B上,确保公钥已正确添加到`~/.ssh/authorized_keys`文件,并设置相应权限。
5. **禁止root直接SSH登录**(可选):
如果你想禁止root用户直接通过SSH登录,可以在主机B的`/etc/ssh/sshd_config`文件中添加以下行:
```
PermitRootLogin no
```
并重启SSH服务:`service ssh restart`
6. **使用SCP命令**:
现在,你可以从主机A无密码地获取主机B的文件了。例如,要从主机B的`/home/user/file.txt`复制到主机A的当前目录,只需运行:
```bash
scp user@192.168.0.3:/home/user/file.txt .
```
或者,如果你想将文件从主机A复制到主机B,命令如下:
```bash
scp /path/to/local/file user@192.168.0.3:/home/user/
```
SSH-SCP提供了安全的文件传输,通过公钥认证避免了每次交互式密码验证,这对于自动化任务和无人值守的系统操作尤其有用。注意,尽管这简化了登录过程,但也要确保只有授权的用户才能访问你的系统,以防止未授权的访问。
2010-06-23 上传
2020-02-17 上传
2021-07-04 上传
2023-11-10 上传
2023-05-18 上传
2023-11-18 上传
2021-06-11 上传
2021-06-23 上传
2021-06-30 上传
duhaibin868
- 粉丝: 0
- 资源: 5
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录