- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我看过一些关于 .ssh/config 和 proxycommand
的博客
现在下一个命令之间有什么区别ProxyCommand ssh proxyserver -W [%h]:%p
ProxyCommand ssh proxyserver nc -q0 %h %p 2> /dev/null
ProxyCommand ssh proxyserver exec nc -q0 %h %p 2> /dev/null
其中一些命令在某些机器上有效,而在其他机器上无效。
最佳答案
以下是我的理解:
ProxyCommand ssh proxyserver -W [%h]:%p
-W
选项内置于 OpenSSH 的新(er)版本中,因此这仅适用于具有最低版本(5.4,除非您的发行版向后移植任何功能;例如,RHEL6 OpenSSH 5.3p1 包含此功能)的机器。根据发行说明:http://www.openssh.com/txt/release-5.4Added a 'netcat mode' to ssh(1): "ssh -W host:port ..." This connects stdio on the client to a single port forward on the server. This allows, for example, using ssh as a ProxyCommand to route connections via intermediate servers.
ProxyCommand ssh proxyserver nc -q0 %h %p 2> /dev/null
-W
选项可用,我们使用了 nc
(或 netcat)实用程序。 nc
允许您将 TCP 和 UDP 数据包转发到指定的(备用)位置,其行为与 ssh -W
基本相同(因为 ssh -W
是仿照 nc
建模的)。为了使此变体起作用,中间宿主需要nc
安装和选件 AllowTcpForwarding
必须在主机的 sshd_config 中启用(默认值:yes)。选项 -q0
至 nc
是(应该是)用于消除错误,但我找不到这是引入的哪个版本。 (注意:2> /dev/null
可能会导致 ssh
错误,但可以使用 ssh -q
代替。)ProxyCommand ssh proxyserver exec nc -q0 %h %p 2> /dev/null
exec
.我不确定,但我相信包含或排除 exec
之间没有区别来自 ProxyCommand
;这种变化应该在上述变化的任何地方起作用。例如,Bash 手册是这样说的:exec [-cl] [-a name] [command [arguments]]
If command is specified, it replaces the shell. No new process is created. The arguments become the arguments to command. If the -l option is supplied, the shell places a dash at the beginning of the zeroth argument passed to command. This is what login(1) does. The -c option causes command to be executed with an empty environment. If -a is supplied, the shell passes name as the zeroth argument to the executed command. If command cannot be executed for some reason, a non-interactive shell exits, unless the shell option execfail is enabled, in which case it returns failure. An interactive shell returns failure if the file cannot be executed. If command is not specified, any redirections take effect in the current shell, and the return status is 0. If there is a redirection error, the return status is 1.
关于ssh - ssh proxycommand -W, nc, exec nc 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22635613/
使用 OpenSSH,我已经设置了我的 /etc/ssh/ssh_config有一个 ProxyCommand所以所有 SSH 连接都通过该代理。 /etc/ssh/ssh_config : Host
由于防火墙限制,我需要能够通过另一台主机连接到另一台主机。我目前能够使用 ProxyCommand 选项成功连接。但现在我需要在连接到目标主机后更改用户,从 user_one 更改为 user_two
我试图配置SSH配置以简化工作流程,但在这里遇到了麻烦。 我有一个跳转主机,需要sudo ssh才能访问所有其他计算机。 我发现,如果我运行ssh -tt jumphost sudo ssh dest
我正在尝试使用计算机 B 上的 key 通过计算机 B 建立隧道,从计算机 A 到计算机 C。我已经共享了从计算机 A 到计算机 B 以及从计算机 B 到计算机 C 的 key 这适用于计算机 A,无
我在使用 ssh proxy 命令时遇到了一些问题。代理上的身份验证工作正常,但是当我想登录到远程主机时它失败了。问题似乎是,代理尝试使用我的本地 rsa_key 登录,而不是使用存储在代理上的 ke
我正在尝试使用 paramiko 通过 SSH 连接到通过另一台计算机隧道传输的计算机在 Python 中,但我遇到了一些奇怪的问题。 我在 /.ssh/config 中的配置文件如下所示: Host
我有一个在防火墙后面的 git 服务器。我可以从家里访问防火墙,但不能访问 git 服务器。但是,我可以从防火墙访问 git 服务器(也就是说,我可以 SSH 到防火墙,然后再从防火墙 SSH 到 g
在我们的环境中,我们有几台服务器在生产中。每次我想搜索某些东西时,它可能在 4 个不同的服务器中的 1 个中。 我正在创建一个脚本来自动执行此搜索,以便我直接知道涉及哪个服务器。 我正在通过 jump
我只是尝试使用 PuTTY 与我的服务器建立 SSH 连接。这些服务器仅允许来自另一个特定服务器(下面示例中的“MySshProxyingServer”)的传入 SSH 连接。 使用 Linux,使用
我有一个网络服务器 WWW1 和一个前置代理 PRX。我使用 SSH ProxyCommand 通过 PRX(私有(private) + 公共(public) IP)连接到 WWW1 的内部 IP(私
我在 /etc/hosts 中定义了一个主机称为 web1 .有一个名为 store 的 docker 容器. 在我的工作站上,我可以通过 ssh 进入机器并执行命令以交互方式进入容器 ssh -t
我打算实现一个 golang 版本的 ssh 客户端来通过堡垒连接到目标服务器。但不幸的是,我在替换 nc 代理时失败了。 在我本地的 ssh 配置: Host bastion HostNam
我看过一些关于 .ssh/config 和 proxycommand 的博客 现在下一个命令之间有什么区别 ProxyCommand ssh proxyserver -W [%h]:%pProxyCo
我想通过另一台使用 ruby 的计算机连接到远程计算机。 这个方案如下: 本地 -> 代理 -> 远程 我有这段代码可以直接访问: require 'net/ssh' Net::SSH.start
我尝试使用 SSH ProxyCommand 通过跳转框连接到服务器时未成功。我的配置在下面,我正在运行这个命令: ssh 10.0.2.54 -F ssh.config -vv Host x.x.x
我有一台服务器(例如,内部服务器)只能从另一台服务器(例如,外部服务器)访问,而不是运行 Node 服务器的服务器。但是, Node 服务器可以到达外部服务器。从命令行使用 ssh 时,我可以使用 P
我是一名优秀的程序员,十分优秀!