ジャンププロキシ(バスチョンホスト)を介してデバイスに接続するには、次のように入力します。
ssh -J bhost myuser@localhost -p $PORT
myuser
私のローカルデバイスに現在ログインしているユーザーのユーザー名と要塞ホストに接続されているアカウント。複数のポートを設定しました。
bhost
私のSSH .configでは、次のように定義されました。
Host bhost
HostName www.example.com
PasswordAuthentication no
IdentityFile ~/.ssh/id_ed25519
私の目標はmyuser@localhost
。代わりに、次のようにログインできるようにします。
ssh -J bhost -p $PORT
私が使用する要塞ホストまたはポートはmyuser@localhost
常に同じで、直接入力する必要はありません。
答え1
~/.ssh/config
ファイルのエントリを展開するだけです。おそらく以下のようなことがうまくいくでしょう。ご質問が実際に十分な情報を提供していないようですので、お試しください。
.ssh\config
:
# this entry is the one you're trying to ssh to
Host example
Hostname www.example.com
ProxyJump bhost
# this entry is the bastion (jump) host
Host bhost
Hostname www.example.com
Port 8022
User myuser
IdentityFile ~/.ssh/id_ed25519
基本的に、2つの異なるホストを設定し、.ssh/config
そのうちの1つがコマンドを介して別のホストを使用するように指示しますProxyJump
。
次に、ssh example
目的のターゲットシステムに移動するために入力します。
答え2
答えは以下からインスピレーションを得ました。チームケネディ。彼が言ったように、これは〜/ .ssh / configファイルを介して行うことができます。
考えられる解決策は次のとおりです。
Host bhost
HostName www.example.com
PasswordAuthentication no
IdentityFile ~/.ssh/id_ed25519
Host example1
Hostname localhost
User myuser
Port 22021
ProxyJump bhost
PasswordAuthentication no
IdentityFile ~/.ssh/id_ed25519
Host example2
Hostname localhost
User myuser
Port 28022
ProxyJump bhost
PasswordAuthentication no
IdentityFile ~/.ssh/id_ed25519
Host example3
Hostname localhost
User myuser
Port 28023
ProxyJump bhost
PasswordAuthentication no
IdentityFile ~/.ssh/id_ed25519
各ターゲットデバイスには固有のポート番号が必要です。彼らはまた共通のホスト名を持っていますlocalhost
。もちろん、要塞ホストは実際のドメイン名です。
この構成により、次のことで最終目標を達成できます。
ssh example1
または
ssh exampleN