web-dev-qa-db-ja.com

踏み台インスタンスを介したSSHトンネル

要塞ホストを介したsshトンネルの確立に問題があります。

問題を解決する可能性のあるさまざまなSEの質問を検討したが、何も解決しなかった。

私のssh設定ファイル(ローカル)

Host www
    HostName ***
    IdentityFile ~/.ssh/key.pem
    ProxyCommand ssh root@bastion -W %h:%p

Host bastion
    HostName ***
    IdentityFile ~/.ssh/key.pem
    StrictHostKeyChecking      no
    ProxyCommand               none
    ForwardAgent               yes

要塞サーバー(/ etc/ssh/sshd_config)に必要な構成オプションを追加しました。

PermitTunnel yes
AllowTCPForwarding yes
PermitOpen any
TCPKeepAlive yes

しかし、私は次のエラーを受け取ります:

OpenSSH_7.2p2 Ubuntu-4ubuntu2.4, OpenSSL 1.0.2g  1 Mar 2016
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: /etc/ssh/ssh_config line 59: Applying options for www
debug1: Executing proxy command: exec ssh root@bastion -W ****:22
debug1: permanently_set_uid: 0/0
debug1: permanently_drop_suid: 0
debug1: key_load_public: No such file or directory
debug1: identity file ~/.ssh/key.pem type -1
debug1: key_load_public: No such file or directory
debug1: identity file ~/.ssh/key.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.4
channel 0: open failed: administratively prohibited: open failed
stdio forwarding failed
ssh_exchange_identification: Connection closed by remote Host

ターゲットホスト(www)がAWS VPCにあり、要塞からのみアドレス指定できるという点で、このセットアップには1つの注意点があります。ルーティングは要塞から行われるため、これは問題ではないと私は想定していますが、これがこのシナリオの問題であると私の最後の考えです。

3
Nick

それはかなり迷惑です。 AWS AMIは、authorised_keysでポート転送を無効にすることがわかりました!これは、sshd構成のすべてが正しいように見えるときにデバッグするのが難しいものでした。

〜/ .ssh/authorized_keys

no-port-forwarding,no-agent-forwarding,no-X11-forwarding
1
Nick