ssh が .ssh/config から %h を展開できないのはなぜでしょうか? これは以前は機能していましたが、RHEL ボックス以外では現在も機能します。この問題の原因を探しています。どこかに ssh に %h を展開しないように指示する設定があるのでしょうか?
私の .ssh/config には次のような内容があります:
Host *.foo
HostName %h.mydomain.com
これが機能しない RHEL ボックスでは、次のメッセージが表示されます。
$ ssh -vvvv bar.foo
OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010
debug1: Reading configuration data /home/zsimic/.ssh/config
debug1: Applying options for *.foo
debug1: Applying options for *.foo
debug1: Applying options for *
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
ssh: Could not resolve hostname %h.mydomain.com: Name or service not known
答え1
OpenSSH 5.3を使用しています%h
。OpenSSHで導入5.6:
OpenSSH 5.5 以降の変更点 ========================= * ssh_configのホスト名オプションで%hをホスト名に展開します。 役に立たないように聞こえるが、実際には資格のない人と仕事をするのに便利である ホスト名: ホスト *。* ホスト名 %h ホスト * ホスト名 %h.example.org
答え2
man ssh_config
%h
節で拡張されることは言及されていませんHostName
。私はopenssh5.9p1
編集:それは起こりました、そして私はそれを逃しました
プロキシ サーバー (ローカルのみのサーバーで十分) を設定することに問題がない場合は、回避策がいくつかあるProxyCommand
可能性があります。
または、 でいくつかのホスト名を列挙することもできます.ssh/config
。