基于rsync,局域网内,无需密码互传

一、环境假设

  • 电脑 A (IP: 192.168.1.100)

  • 电脑 B (IP: 192.168.1.101)

  • 两台电脑都安装了 rsyncopenssh-server

  • 如果没有安装,使用以下命令:

复制代码
  yum install -y rsync openssh-server
  yum install -y rsync

二、 操作

步骤一:在电脑 A 上生成 SSH 密钥

复制代码
  ssh-keygen -t ed25519  # 推荐,速度快。旧系统可用 -t rsa

按三次回车,使用默认路径和空密码。

  • 生成的密钥对默认保存在 ~/.ssh/id_ed25519 (私钥) 和 ~/.ssh/id_ed25519.pub (公钥)。

步骤二:将 A 的公钥拷贝到 B

bash 复制代码
# 在机器A上查看公钥
cat ~/.ssh/id_ed25519.pub
# 复制输出的内容,然后在机器B上执行:
echo "粘贴的公钥内容" >> ~/.ssh/authorized_keys

在电脑 A 上执行:
*

bash 复制代码
ssh-copy-id username@192.168.1.101

输入 B 的登录密码,公钥会自动添加到 B 的 ~/.ssh/authorized_keys

验证ssh username@192.168.1.101 应能无密码登录。
*

步骤三:实现双向免密(可选)

  • 如果也需要从 B 无密码访问 A,在电脑 B 上重复步骤一和步骤二:
bash 复制代码
# 在电脑 B 上操作
ssh-keygen -t ed25519
ssh-copy-id username@192.168.1.100

步骤四:使用 rsync 无需密码传输

从 A 推送文件到 B:
bash 复制代码
# 将本地文件夹 /data 同步到 B 的 /backup 目录
rsync -avz -P /data/ username@192.168.1.101:/backup/
从 A 拉取 B 的文件:
bash 复制代码
# 将 B 的 /data 文件夹拉取到本地的 /backup 目录
rsync -avz -P username@192.168.1.101:/data/ /backup/

三、高级进阶

  • 1.自动化脚本
  • 配合 cron 定时任务,实现自动同步:
bash 复制代码
# 每天凌晨 2 点自动备份
0 2 * * * rsync -avz --delete /data/ nas:/backup/ >> /var/log/backup.log 2>&1
相关推荐
wanhengidc35 分钟前
云手机 网络连接与持续性的表现如何
运维·服务器·科技·游戏·智能手机
代码不行的搬运工41 分钟前
RFC6811:BGP前缀源验证
运维·服务器·bgp网络
init_23611 小时前
【HCIP-18】RSTP
网络
云计算练习生1 小时前
渗透测试行业术语扫盲(第一篇)—— 基础网络与协议类术语
网络·网络协议·安全·网络安全·渗透测试·渗透测试术语
张3蜂1 小时前
文件上传漏洞:数字世界的“特洛伊木马”
网络·安全
普普通通的南瓜2 小时前
无需域名,直通安全:一年期免费IP SSL证书
网络·网络协议·tcp/ip·安全·ssl
tokepson2 小时前
香橙派AI Pro个人云平台 - 从零搭建全记录
linux·服务器·技术·记录
月亮!2 小时前
移动端测试重磅升级:跨平台自动化测试框架深度对比
运维·网络·人工智能·测试工具·容器·自动化·测试用例
阿部多瑞 ABU3 小时前
国内外大模型安全红队实测:角色越狱与分步诱导双路径可稳定绕过政治与技术防护
网络·安全·ai
青果全球http3 小时前
HTTP代理原理揭秘:如何实现高效数据中转?
网络·网络协议·http