AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 12102
Accepted
Xerxes
Xerxes
Asked: 2009-05-26 15:43:10 +0800 CST2009-05-26 15:43:10 +0800 CST 2009-05-26 15:43:10 +0800 CST

如何在不安全的网络中的服务器之间执行安全 rsync

  • 772

基本上我要问的是,有没有人遇到过将 rsync 包装在 ssh 中的方法。

使用 OpenSSH v4.9+ sftp 有一些不错的选项,允许您对传入的连接进行 chroot 等 - 这是我会考虑的解决方案,但是我坚持使用 RHEL,而且 RHEL4 或 RHEL5 都不是那个版本的SSH。

我目前的解决方案是使用客户端用户的密钥向服务器端添加这样的东西......

服务器% cat ~/.ssh/authorized_keys
command="cd /srv/rsync/etl && tar --exclude './lost+found' -pcf - ./" ssh-rsa...

...因此客户将被限制在一件事和一件事上...

client% ssh -T -i ${HOME}/.ssh/id_rsa [email protected] > sensative.tar

这可以保护连接以及服务器(来自客户端),但是效率低下,因为所有文件都将被一遍又一遍地检索。

我正在使用 rsync 做类似(或更好)的事情。

security ssh rsync copy tar
  • 3 3 个回答
  • 30191 Views

3 个回答

  • Voted
  1. Dave Cheney
    2009-05-26T16:02:17+08:002009-05-26T16:02:17+08:00

    Rsync 支持使用 ssh 作为传输

    rsync -az /path/to/source username@host:/path/to/destination
    

    一些旧版本的 rsync 要求您明确指定 ssh

    rsync -aze ssh /path/to/source host:/path/to/destination
    

    使用 rsync 的替代方法是BC Pierce 的 Unison,它具有与 rsync 类似的功能,但在两端保留本地索引以避免必须遍历文件系统来计算增量

    • 18
  2. Best Answer
    Xerxes
    2009-05-29T17:25:16+08:002009-05-29T17:25:16+08:00

    好吧,我终于想通了,但解决方案并不像我希望的那样优雅。

    在服务器端,您需要将以下内容添加到相关用户的 authorized_keys 文件中......

    no-pty, command="exit"
    

    然后在客户端上,您可以按如下方式创建隧道...

    ssh -l username -fNTL 8073:server:873
    

    建立隧道后,您可以像往常一样 rsync - 无法使用双冒号语法 - 到 localhost。

    您选择的 localhost 端口号 (8073) 显然是完全可选的,只要记住这就是您必须 rsync到的...

    rsync --port=8073 -a user@localhost::mySecureStore /srv/some/place/
    
    • 5
  3. rjmunro
    2009-08-12T05:59:07+08:002009-08-12T05:59:07+08:00

    您可能对 daemon-over-ssh-mode 感兴趣,这是这个问题的主题:

    无法让 rsync 在 daemon-over-ssh 模式下工作

    • 2

相关问题

  • 为什么使用authorized_keys通过ssh自动登录不起作用?

  • 如何启用与 SQL Server 实例的加密连接?

  • 从多个位置保护远程服务器/工具访问的最佳方法是什么?

  • 在 SOHO 环境中实施的最佳 VPN 技术是什么?[关闭]

  • 保护新的 Ubuntu 服务器 [关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve