家にいないときにホームネットワーク上のコンピューターにSSHで接続できるように、sshとルーターのポート転送を設定しました。現在、.ssh/configファイルに2つのエントリがあり、1つはホームネットワークに接続しているとき、もう1つは接続していないときです。
Host mycomputer
HostName 192.168.X.X
Host mycomputerathome
HostName my.no-ip.dynamic
これは機能しますが、自分でもっと簡単にできるかどうか疑問に思っています。複数のHostNameエントリを一覧表示して、最初のエントリが失敗した場合に2番目のエントリにフォールバックする方法があることを望んでいました。
Host mycomputer
HostName 192.168.X.X
HostName my.no-ip.dynamic
最初にローカルネットワーク上のホストへの接続を試み、それが存在しない場合は、no-ip動的ホスト名を使用して接続を試みます。2つのHostNameを入力してみましたが、実行しているssh mycomputerだけでは何もしません。
キーを優先してパスワード認証をオフにしたので、ホームネットワークに接続していないときにローカルネットワーク上のコンピューターに誤って接続しても、パスワードが実行されない場所に移動する危険はありません。
最初のホスト名が機能しない場合に、代替のホスト名を指定して試すことはできますか?
.ssh/config特定のプロパティのスクリプトを実行できます。ProxyCommandでできることを知っています。SFからのこのQ&Aに示されているように何かを実行できます-serverfault.com/questions/401233/…。