有没有办法通过跳转服务器与远程机器建立SFTP连接来传输文件?

2023-12-22

我想知道是否有一种方法可以通过跳转服务器使用 SFTP 将文件发送到远程计算机。 如下图所示,首先需要 SSH 连接,然后是 SFTP 连接。

我的主要问题出现在 SSH 连接之后,我的工作区已更改,并且我无法检索成功执行 SFTP 所需的文件。 我尝试过以下代码:

ssh jump-server-user@ip-jump-server 'echo "put /source/files /remote/files" | sftp -v remote-machine-user@ip-remote-machine'

但这不起作用。

我尝试执行一个简单的命令,例如pwd使用 SFTP 连接并且它可以工作,所以我认为这里的问题是工作区如何变化。

可能有一个更简单的解决方案,但我无法在跳转服务器-远程计算机连接上使用 SSH,并且无法将本地文件存储在跳转服务器中以便稍后将它们发送到远程计算机。


如果您有最新的 OpenSSH(至少 8.0)locally,您可以使用-J(跳转)开关 https://man.openbsd.org/scp#J:

sftp -J jump-server-user@ip-jump-server remote-machine-user@ip-remote-machine

对于旧版本(但至少 7.3),您可以使用ProxyJump指示 https://man.openbsd.org/ssh_config#ProxyJump:

sftp -o ProxyJump=jump-server-user@ip-jump-server remote-machine-user@ip-remote-machine

还有其他选项,例如ProxyCommand或端口转发,您甚至可以在旧版本的 OpenSSH 上使用它。这些内容涵盖在OpenSSH 支持多跳登录吗? https://superuser.com/q/1488097/213663

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法通过跳转服务器与远程机器建立SFTP连接来传输文件? 的相关文章

  • JSch get() 失败并出现 NullPointerException

    我有一个 Jax RS 服务器 它应该保存可通过 ssh 访问的文件列表 然后我可以通过 HTTP 下载或流式传输 我一直在尝试使用 JSch 的 SFTP 通道读取文件 但我不断收到NullPointerException 这是Messa
  • 登录失败时生成 Python PXSSH GUI

    当登录失败时 我无法阻止 GUI 的生成 失败并生成 GUI 的简单示例 gt gt gt import pxssh gt gt gt gt gt gt ssh pxssh pxssh gt gt gt ssh force password
  • Mac OS X 上的 scp 问题:scp 不喜欢文件名中的空格,“\”修复不起作用

    我正在尝试使用 scp 在两台 Mac 操作系统 10 6 8 之间传输文件 但它失败了 因为我的目录 文件名中有空格 我无法更改目录 文件名 当我使用 Mac 在终端中工作时 我经常使用 符号来表示空格 然而 在这种情况下 它不起作用 我
  • ssh:无法确定主机“主机名”的真实性

    当我 ssh 到一台机器时 有时我会收到此错误警告 并提示说 是 或 否 当从自动 ssh 到其他机器的脚本运行时 这会导致一些问题 警告信息 The authenticity of host
  • 如何在 Eclipse 中使用 ssh 隧道设置 Subversion?

    我有一个远程服务器 在非标准 ssh 端口上托管我的 subversion 存储库 我想使用 Eclipse 的 subclipse 插件作为客户端来访问 SVN 存储库 我可以使用 svn specialssh 来访问存储库 其中spec
  • 我可以在远程服务器上运行位于本地计算机上的 bash 脚本吗?

    我有本地脚本 我想在远程服务器上运行 我已经设置了 ssh 密钥对以启用无需密码的登录 我当前的方法是将脚本 rsync 到服务器 然后运行它 ssh user remoteserver rsync localserver script s
  • 在2.0中实现SFTP

    我想在 NET 2 0 中编写SFTP 客户端和服务器 那可能吗 请给我一些建议 看一眼SharpSSH http www tamirgal com blog page SharpSSH aspx 它具有开源 BSD 风格许可证 并支持 S
  • 为什么 ssh-agent 需要 root 访问权限?

    我刚刚安装了 Archbang 并尝试克隆我的 Git 项目 这需要 SSH 密钥 过去 我在 Ubuntu 和 RedHat 机器上遵循 Github 指南取得了成功 但由于某种原因 它在我的新 Arch 安装上不起作用 我已使用以下命令
  • 健全性检查 SSH 公钥? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我已要求用户提供他们的公共 id rsa pub ssh 密钥 然后将其放入 home theiraccount ssh authorized key
  • 如何使用java与防火墙(路由器)建立ssh连接?

    由于某种原因 我需要连接到防火墙 基于Linux 并使用Java添加一些规则 用google搜索了一段时间后 我发现jsch是我最好的选择 但是当我 用它来执行命令 显示主机名 例如 返回错误 如果我 执行类似命令 ls l and who
  • 如何配置 Ansible 跳过两个堡垒主机?

    我想编写一个 Ansible 剧本 使用 Ansible 2 7 5 它将在到达目标服务器之前跳过两个主机来执行诸如安装 docker 和 python 等操作 我能够让 Ansible 通过一台主机跳转到server1通过将其添加到我的h
  • 如何访问 Google Cloud Platform Compute Engine VM 实例的 SSH 密钥?

    我通过 Google Cloud Web 控制台从 CentOS 6 x 映像创建了一个新实例 我在创建表单上看到一个空白 我可以在其中粘贴现有的 SSH 密钥 因为这是我的第一个实例 所以我还没有 我以为它会像 Amazon EC2 一样
  • gitlab runner ssh私钥644文件权限错误

    运行 gitlab ci cd 管道时 ssh 给出 0644 badpermission 错误 变量作为文件类型存储在 gitlab 的 settings gt variable 部分中 gitlab ci yml 文件如下所示 stag
  • PHP shell_exec 使用 ssh 运行 shell 脚本

    我有一个 shell 脚本 使用 ssh 和密钥连接到另一台机器 因此它不需要用户名和密码 当我从命令行运行这个脚本时 它工作正常 但是当我从 php shell exec 运行这个脚本时 它不起作用 如果我与 PHP 建立 ssh 连接并
  • Mac OS X 中 Bash 脚本中的 SFTP 命令

    我需要使用 SFTP 和 SSH 从 Mac 主机将文本文件传输到远程 PC freeSSH 这两个连接在本地网络中 那么有没有办法从 Bash 脚本内部运行 SFTP 命令 使用提供的用户名和密码 我已经尝试过一些脚本expect 但我没
  • 将密钥对添加到现有 EC2 实例

    我被给予AWS控制台访问正在运行 2 个实例的帐户 但我无法关闭 在生产中 但是 我想获得对这些实例的 SSH 访问权限 是否可以创建一个新的密钥对并将其应用到实例 以便我可以通过 SSH 访问 获取现有的pem当前无法选择创建实例所用的密
  • SSH 到 Openshift 服务器失败

    我正在 openshift 服务器上使用 jboss catridge 我希望与其他人共享此实例并添加其他用户的公钥 id rsa pub 当其他人尝试访问该实例时 他会收到以下错误 我在他的实例中尝试了同样的方法 但看到了同样的错误 与
  • sendfile64 只复制约2GB

    我需要使用 sendfile64 复制大约 16GB 的文件 到目前为止我所取得的成就是 include
  • 使用 ChannelExec 的命令未执行 - Jsch

    我正在使用 Jsch 在服务器中创建一个文件并执行一些命令 对于文件创建 它工作正常 但是对于命令执行 则不然 它保持状态 1 仍在处理它 并永远保持该状态 这种情况发生在 shell 执行或我尝试成为 root 时 请按照以下方法操作 p
  • 如何用python脚本控制TP LINK路由器

    我想知道是否有一个工具可以让我连接到路由器并关闭它 然后从 python 脚本重新启动它 我知道如果我写 import os os system ssh l root 192 168 2 1 我可以通过 python 连接到我的路由器 但是

随机推荐

  • 为什么我在使用 primefaces 时却使用omnifaces?

    我需要知道使用 OmniFaces 与我目前使用的 PrimeFaces 相比有什么好处 OmniFaces 提供哪些 PrimeFaces 不提供的功能 它们是不同的东西 你可以完美地将它们结合起来 Omnifaces 是 JSF 的一个
  • 来自数据帧的神经网络 LSTM 输入形状

    我正在尝试实施一个LSTM 与 Keras https keras io layers recurrent lstm 我知道 Keras 中的 LSTM 需要具有形状的 3D 张量 nb samples timesteps input di
  • 如何计算Kubernetes集群的节点可分配资源?

    我们有一个集群 其中节点资源不足 导致速度缓慢和过度提交问题 这迫使我们频繁重启节点 我们计划实施节点可分配资源策略 以在系统 kubelet 和应用程序 Pod 之间拆分可用的 CPU 内存和临时存储 遇到了一些有关可分配资源计算的准则h
  • 在 OSX 10.10 Yosemite 上安装 Nokogiri

    我最近升级到 10 10 Yosemite beta 但安装 Nokogiri 时遇到问题 我正在使用 RVM 和 Ruby 1 9 3 我也按照步骤操作here https gist github com vparihar01 58565
  • jQuery:列表在页面加载时扩展

    我一直在寻找非常简单的东西 如何在页面加载时使侧面导航以动画方式展开 但是我平时去的教程网站好像都没有 我能找到的最接近的是这个 jQuery 示例 http codeblitz wordpress com 2009 04 15 jquer
  • 如何使用节点检索 PayPal REST Api 访问令牌

    如何使用节点获取利用 REST Api 所需的 PayPal 访问令牌 一旦您拥有 PayPal 客户端 ID 和客户端密钥 您就可以使用以下内容 var request require request request post uri h
  • 如何在 AKS 上扩展 Cassandra 的 PVC 而不会丢失数据?

    首先我需要说的是 我没有使用 Cassandra 的经验 而且我也不是创建此部署的人 我在 AKS 的集群中运行 Cassandra 有状态集中配置的 PVC 为 1000Gi 目前 这些 Pod 已耗尽存储空间 并且一直处于不健康状态 我
  • 计算 3D 平面的斜率

    我有一组代表不同平面特征的 X Y Z 点 我需要使用法向量计算每个平面的斜率 我认为斜率是由每个平面的法线向量 NV 和假想水平面的 NV 之间的角度给出的 假设我使用的平面方程是 Ax By c z 然后我猜我的平面的法向量是 a b
  • 搜索 NSDictionaries 的 NSArray

    我有一个带有字典的数组 并且需要在数组中搜索 并修改通过字典内的对象名称找到的数组中的特定字典 因此 创建可变数组dictionary 并向该数组添加许多字典 self bloquesArray NSMutableArray alloc i
  • Linq To Entities - 如何过滤子实体

    我有实体Group and User the Group实体有Users属性是用户列表 用户有一个名为IsEnabled 我想编写一个返回列表的 linq 查询Groups 仅包含Users whose IsEnabled是真的 例如 对于
  • WordPress - 删除插件类中定义的操作

    所以我有这个插件代码 class WC List Grid public function construct add action wp array this setup gridlist 20 function setup gridli
  • Makemigrations 错误:django.db.utils.OperationalError:没有这样的表

    当我进行迁移时 我收到以下错误 django db utils OperationalError 没有这样的表 django site Traceback most recent call last File manage py line
  • 旋转 matplotlib Path 对象

    我正在使用 matplotlibPath http matplotlib org api path api html对象创建自定义绘图标记 如所述here https stackoverflow com questions 19448282
  • 使用 jest 测试另一个函数内的函数

    我如何使用 jest 测试下面的代码片段 我正在尝试测试温斯顿自定义格式printf https github com winstonjs winston formats sample js import aa b require thir
  • solr 守护进程

    我想用守护进程运行 solr 我在另一篇文章中看到有一个 init d 脚本可以运行 但它在我的 ubuntu 环境中似乎有问题 每当我尝试使用 etc init d solr start 运行脚本或尝试手动运行以下行时 daemon ja
  • ajax 调用时出现重复标头

    您好 创建了一个对控制器执行 ajax 调用的链接 以便使用 id UpdateCart 更新跨度 问题是 如果用户未经过身份验证 他将被发送到登录页面 并在页面上生成 从图像中可以看出 我的整个标头标签是如何复制并添加到 span 标签内
  • R 重新编译包失败,因为失败

    在我的 Linux 集群上 我在重新编译需要重新编译的 R 包时遇到问题 随着去除libRcpp so在最新版本中 最终目标是 让 R 包 DEseq2 运行 我们已经安装了新版本 g 中的 opt bin目录中有新库 opt lib64
  • Psycopg2:将 CSV 数据复制到具有额外列值的表

    我正在使用copy expert中的方法psycopg2将数据从 CSV 文件复制到 postgresql 表 我有这样的 postgres 表 create table my table cola text colb text colc
  • 如何判断模板类型是基本类型还是类

    我有这样的代码 template
  • 有没有办法通过跳转服务器与远程机器建立SFTP连接来传输文件?

    我想知道是否有一种方法可以通过跳转服务器使用 SFTP 将文件发送到远程计算机 如下图所示 首先需要 SSH 连接 然后是 SFTP 连接 我的主要问题出现在 SSH 连接之后 我的工作区已更改 并且我无法检索成功执行 SFTP 所需的文件