Linux服务器 scp 不需要密码配置与密钥转换(id_rsa->ppk)

简介:

Linux服务器 scp 不需要密码配置

案例:
▲服务器A对服务器B、C进行ssh连接,免输入密码
    或
▲服务器A向服务器B、C复制文件(源文件在服务器A上),免输入密码

主机A:192.168.0.221
主机B:192.168.0.227
主机C:192.168.0.228

1、首先每个服务器上执行一下命令脚本(主机A、B、C都执行,目的是生成公钥和私钥)

mkdir -p ~/.ssh

chmod 700 ~/.ssh

/usr/bin/ssh-keygen -t rsa    (连续回车,即在本地生成了公钥和私钥,不设置密码)

记住enter passphrase的别输入,否则登录的时候还是得输入密码密钥连接密码


2、然后再需要批量分发的主机上执行(目标主机B、C)

touch ~/.ssh/authorized_keys

方法一:
ssh 192.168.0.221 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
(上面这个命令的意思貌似是:将服务器192.168.0.221(主机A)上文件~/.ssh/id_rsa.pub的内容,追加到本地(主机B、C)文件~/.ssh/authorized_keys中)

说明:192.168.0.221是分发主机的IP地址(源主机A)
root@192.168.0.221's password: xxxxx    (在需要输入密码的时候输入密码)

方法二(也是一个比较简单的方法):(推荐)
直接登录到服务器192.168.0.221(主机A)上使用命令cat ~/.ssh/id_rsa.pub查看内容(公钥),将内容复制 追加到主机B、C的文件~/.ssh/authorized_keys中( 请注意不要删除或覆盖该文件中已有的内容

3、在需要分发的主机执行(目标主机B、C)

chmod 600 ~/.ssh/authorized_keys

4、在分发主机验证(源主机A)

从主机A连接到主机B测试 ssh 192.168.0.227
从主机A连接到主机C测试 ssh 192.168.0.228

5、在分发主机(源主机A)上常见 scp.sh 文件,一般将文件设定到定时脚本 /etc/crontab 中,或单独手工执行。

从分发主机192.168.0.221向 192.168.0.227、192.168.0.228 分发文件

scp -r /usr/local/adsit/webapps/preroll/WEB-INF/classes root@192.168.0.227:/home/adsit/

scp -r /usr/local/adsit/webapps/preroll/WEB-INF/classes root@192.168.0.228:/home/adsit/

在分发主机执行 scp.sh 实现拷贝功能。



Linux私钥id_rsa转换成ppk

在linux下生成的ssh私钥为id_rsa,而很多软件是需要的私钥ppk格式,这里简单说下id_rsa怎么转换到ppk

需要的软件:puttygen.exe
1.下载puttygen
大家可以去http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html这个地址单独下载puttygen
2.转换成ppk格式
运行puttygen.exe-点击Conversions菜单项中的Import key,选择在linux下生成的id_rsa文件(默认文件位置:~/.ssh/id_rsa),成下面的图

然后点击Save private Key按钮就可以转换成ppk格式,如图.

好了大家可以看到已经把原来rsa格式的私钥转换成ppk的了,可以在winscp中导入使用了.

(转换完成)






目录
相关文章
|
16天前
|
运维 安全 Linux
Linux中传输文件文件夹的10个scp命令
【10月更文挑战第18天】本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的方法,涵盖基础文件传输、使用密钥认证、复制整个目录、从远程主机复制文件、同时传输多个文件和目录、保持文件权限、跨多台远程主机传输、指定端口及显示传输进度等场景,旨在帮助用户在不同情况下高效安全地完成文件传输任务。
111 5
|
13天前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
34 2
|
26天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
208 3
|
30天前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器
|
27天前
|
Linux Shell 数据安全/隐私保护
Linux如何在服务器上进行密码的修改?
【10月更文挑战第6天】Linux如何在服务器上进行密码的修改?
39 1
|
1月前
|
应用服务中间件 Linux Shell
Linux 配置 Nginx 服务的详细步骤,绝对干货
Linux 配置 Nginx 服务的详细步骤,绝对干货
67 0
|
1月前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境
|
Linux 网络安全 数据安全/隐私保护
|
Linux 网络安全 数据安全/隐私保护
|
15天前
|
Linux
Linux系统之expr命令的基本使用
【10月更文挑战第18天】Linux系统之expr命令的基本使用
51 4