我有两台服务器。生产测试。所有服务器都有内部ip。目前,我正在使用别名登录:
Host pro-10
Hostname 192.168.1.10
ProxyCommand ssh production-server nc %h %p
对于每一个服务器,我都需要重复这个规则。我正在寻找一个正则表达式的方式来做这件事?
Host pro-*
Hostname 192.168.1.$1
ProxyCommand ssh production-server nc %h %p
有办法这样做吗?
发布于 2013-01-06 01:38:24
不,ssh不支持ssh_config (1)
中的正则表达式,您给出的示例也不是正则表达式。ssh_config (1)
支持PATTERNS
,即您可以为您的IP定义一个模式,即:
Host 192.168.1.*
ProxyCommand ssh production-server nc %h %p
你应该可以为你所有的内部IP转发。另一种解决方案是向/etc/hosts
中添加特定IP的条目,即:
192.168.1.10 pro10
192.168.1.11 pro11
并在~/.ssh/config
文件中创建一个条目:
Host pro1?
ProxyCommand ssh production-server nc %h %p
发布于 2014-11-27 13:11:52
使用ProxyCommand是可能的,因为它只是一组shell命令:
东道亲*
ProxyCommand ssh生产-服务器nc 192.168.1.echo "%h" | perl -pe 's/pro-//'
%p
https://unix.stackexchange.com/questions/60400
复制相似问题