26  
查询码:00001195
win传文件到linux:无需密码通过scp命令+key的方式实现文件传输
作者: 马文博 于 2022年11月02日 发布在分类 / 人防组 / 人防后端 下,并于 2022年11月09日 编辑
scp命令 文件传输


scp每次都要输入密码很麻烦, 解决方案如下:


在windows上开发,用户名是xw,你有一台linux服务器192.168.199.181,用户名是root。现在准备上传一些文件到服务器上。

为方便叙述,w表示windows, u表示Linux服务器,w$表示在windows端输入的命令, u$表示在Linux端输入的命令。


1、首先在w端生成一对key。

w$ ssh-keygen -t rsa

一直按enter,则会在C:用户的 .ssh文件夹下生成id_rsa和id_rsa.pub两个文件。

其次确保u端的ssh配置允许root用户登录。

u$ vim /etc/ssh/sshd_config

确保PermitRootLogin为yes。我测试的服务器默认就是yes,因此无需更改。

将win端的id_rsa.pub上传到服务器的~/keys文件夹

u$ mkdir ~/keys

上传文件(此步骤可以直接通过远程进行上传,不用敲命令):

w$ scp ~/.ssh/id_rsa.pub root@192.168.199.181:~/keys


将上传的key添加到ssh的授权列表,如果.ssh文件夹不存在,使用创建。

u$ mkdir ~/.ssh

u$ cat ~/keys/id_rsa.pub>>~/.ssh/authorized_keys

完成!

win端再尝试使用scp命令, 你会发现无需输入密码。这时,目标主机与本机已建立信任连接。

如果出现不需要输入密码,但是要求输入建立连接的 yes,查看对应目标文件夹的权限是否可写入。




 推荐知识

 历史版本

修改日期 修改人 备注
2022-11-09 16:30:23[当前版本] 马文博 内容更新
2022-11-02 13:20:32 马文博 创建版本

 附件

附件类型

PNGPNG

知识分享平台 -V 4.8.7 -wcp