単一のSSHコマンドを使用して中間サーバーを介してSSHを介してリモートサーバーにログインする方法はありますか?デフォルトでは、「ブリッジサーバー」のトンネルを作成し、トンネルを介してリモートサーバーにログインする必要があります。
たとえば、次を単一のsshコマンドで圧縮してみました。
- ssh -N -L 2222:remoteserver.com:22[Eメール保護]
- ssh -p 2222リモートユーザーID@localhost
これは現在機能しますが、SSHシェルをシャットダウンすると、トンネルが同時に閉じることができるように、すべてを1つのコマンドで圧縮できるようにしたいです。
私の設定で以下を試しましたが、成功しませんでした。
Host axp
User remote_userid
HostName remoteserver.com
IdentityFile ~/.ssh/id_rsa.eric
ProxyCommand ssh -W %h:%p [email protected]
@jasonwryan コメントに基づいて透明なマルチホップリンク、次のコマンドを操作できました。
ssh -A -t [email protected] ssh -A [email protected]
しかし、これを.ssh / configファイルにきれいにパッケージ化したいのですが、ProxyCommandで何を使用するのかわかりません。私はオンラインでいくつかのリンクと@boomshadowの答えを見ましたが、nc
残念ながら、netcatはブリッジシステムとして使用していたAIXサーバーにインストールされていません。
ベストアンサー1
ProxyCommandがあなたに必要なものです。当社では、すべてのDevOps技術者が「ジャンプステーション」を使用して残りのVPCにアクセスする必要があります。リダイレクトサイトにはVPNアクセス制御が適用されます。
ジャンプサイトを自動的に通過するようにSSH設定を設定しました。
私の.ssh/configファイルの編集されたバージョンは次のとおりです。
Host *.internal.company.com
User jacob
IdentityFile ~/.ssh/id_rsa
ProxyCommand ssh -q -A jacob@company-internal-jumphost nc -q0 %h %p
「内部」サブドメインのサーバーに「ssh」するたびに、自動的にジャンプサイトを最初にスキップします。
編集する:ここにいるみんな「内部」VPCの.ssh / configセクションからログインできます。
# Internal VPC
Host company-internal-jumphost
Hostname 10.210.x.x #(edited out IP for security)
IdentityFile ~/.ssh/id_rsa
Host 10.210.*
User ubuntu
IdentityFile ~/.ssh/company-id_rsa
ProxyCommand ssh -q -A jacob@company-internal-jumphost nc -q0 %h %p
Host *.internal.company.com
User jacob
IdentityFile ~/.ssh/id_rsa
ProxyCommand ssh -q -A jacob@company-internal-jumphost nc -q0 %h %p