Linux之rsync免密登录

news/2024/12/21 20:25:54/

SSH-key方式免密登录

在做项目的过程中有同步文件的需求,经过考察后选择了rsync作为同步文件工具,但是默认情况下rsync同步文件需要手动输入密码,由于同步文件功能是在程序中实现的,无法手动输入密码,所以必须免密输入。通过查询找到了一种免密输入的方法,先记录如下:

步骤一:

执行ssh-keygen命令,注意这个命令要在执行rsync同步命令的机器执行,结果如下:

consys@consys-Lenovo-Legion-Y7000:~$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/consys/.ssh/id_rsa):
/home/consys/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/consys/.ssh/id_rsa
Your public key has been saved in /home/consys/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:+lQopQ37ztJv+4cCGKgj5zQ6RgvlKw02rSeDIZuumNc consys@consys-Lenovo-Legion-Y7000
The key's randomart image is:
+---[RSA 3072]----+
|                 |
|                 |
|     .. .        |
|  . . .* .       |
| o..  +oS .      |
|*+B.  .+..       |
|*%+=  ..o.   .   |
|OB=.E .=. o . .  |
|B=+    .+oo+..   |
+----[SHA256]-----+

步骤二:

执行ssh-copy-id命令,将生成的文件拷贝到服务器,即要从哪台机器下载,拷贝到哪台机器。ssh-copy-id命令也是在ssh-keygen执行的机器执行。命令如下:

ssh-copy-id -i ~/.ssh/id_rsa.pub username@192.168.11.24

username:填写用户名

ip:填写实际ip

步骤三

执行rsync下载命令,即可面你输入。

拓展

除上面的方式外,rsync还可以通过执行密码文件的方式实现免密登录,也可以通过设置环境变量RSYNC_PASSWORD的方式,但是我没有经过验证。感兴趣的朋友可以自行验证下。


http://www.ppmy.cn/news/1267793.html

相关文章

Vue 2.0源码分析-update

Vue 的 _update 是实例的一个私有方法,它被调用的时机有 2 个,一个是首次渲染,一个是数据更新的时候;由于我们这一章节只分析首次渲染部分,数据更新部分会在之后分析响应式原理的时候涉及。_update 方法的作用是把 VNo…

ThingsBoard 前端项目轮播图部件开发

前言 ThingsBoard 是目前 Github 上最流行的开源物联网平台(14.6k Star),可以实现物联网项目的快速开发、管理和扩展, 是中小微企业物联网平台的不二之选。 本文介绍如何在 ThingsBoard 前端项目中开发轮播图部件。 产品需求 最近接到产品…

如何本地搭建WampServer并结合cpolar内网穿透实现远程访问

文章目录 前言1.WampServer下载安装2.WampServer启动3.安装cpolar内网穿透3.1 注册账号3.2 下载cpolar客户端3.3 登录cpolar web ui管理界面3.4 创建公网地址 4.固定公网地址访问 前言 Wamp 是一个 Windows系统下的 Apache PHP Mysql 集成安装环境,是一组常用来…

使用 std::vector 和 std::pair 管理二维点对

赋值 向 matched_indices 赋值意味着在这个向量中添加 std::pair<int, int> 类型的元素。每个元素都是一个包含两个整数的对。这可以通过使用 push_back 方法实现&#xff1a; matched_indices.push_back(std::make_pair(1, 2)); // 添加一个元素&#xff0c;其中包含一…

python的extend函数详解

文章目录 语法功能示例例1&#xff1a;添加列表例2&#xff1a;添加元组例3&#xff1a;添加集合例4&#xff1a;添加字典&#xff08;只添加键&#xff09;例5&#xff1a;添加字符串例6&#xff1a;混合类型扩展例7&#xff1a;扩展空列表或不可迭代对象 注意事项&#xff1a…

创建第一个Vue2项目-----HelloWorld

创建第一个Vue项目 第一步先去安装Vue&#xff0c;一共有两种安装方式&#xff0c;这里使用 点击这里下载&#xff1a;Vue.js 添加到自己的项目中 在使用的页面引入<script src"../js/vue.js"></script> 2. 准备好一个容器 <div id"root&qu…

大数据湖体系规划与建设方案:PPT全文51页,附下载

关键词&#xff1a;大数据解决方案&#xff0c;数据湖解决方案&#xff0c;数据数仓建设方案&#xff0c;大数据湖建设规划&#xff0c;大数据湖发展趋势 一、大数据湖体系规划与建设背景 在传统的企业信息化建设中&#xff0c;各个业务系统通常是独立建设的&#xff0c;导致…

【算法题】智能成绩表(js)

总分相同按名字字典顺序。 解法&#xff1a; function solution(lines) {const [personNum, subjectNum] lines[0].split(" ").map((item) > parseInt(item));const subjects lines[1].split(" ");const classMates [];let results [];for (let i…