SSHトンネルセキュリティ

SSHトンネルセキュリティ

NATの背後にはクラスタ(現在10台のマシン)があります。プライベートネットワークと一般企業ネットワークの間には、NATゲートウェイ/ジャンプホストがあります。

ユーザーはsshホストにジャンプし、NATの背後にある他のコンピュータにアクセスできます。

私は、NATの背後にあるWebインターフェースをローカルシステムにトンネリングするのに役立つ簡単なスクリプトを提供したいと思いました。

だから私の最初の提案はSSHocksプロキシを使用し、インターフェイスをlocalhostにトンネリングすることです。

だから私の質問は:この2つのトンネル(同僚のローカルコンピュータからジャンプホストに1つ、ジャンプホストからNATの背後にあるそのコンピュータに1つ)を作成する場合、このトンネルはどのくらい安全ですか?

worker1誰がこれを行うか想像してみてください。

ssh -t [email protected] -L 10001:localhost:33388 ssh -t hostxyz.behindnat.tld

ジャンプホストには、ループバックインターフェイスを受信するオープンポート33388があります。ジャンプホストにログインworker2し、ローカルホストポート33388とすでに確立されているトンネル接続を使用している場合は、再認証しないでくださいhostxyz.behindnat.tld

これは私にとって大きなセキュリティ抜け穴のようです。より良い解決策はありますか?

ベストアンサー1

あなたのシナリオは、JumphostとHostxyzの間に既存のSSHセッションがあることを意味すると仮定します。このセッションは、Jumphost受信ポートにアクセスできるすべての人に公開されます。

技術的に異なる2つの靴下とトンネルに言及しました。

ワーカー1のソックスプロキシを次のように設定します。 ssh [email protected] -D 127.0.0.1:10001

localhost:10001jumphost.tldに移動するためにソックスを使用するようにワーカー1のブラウザを設定します。

Worker1 から Hostxyz に直接 SSH を実行するには、次のようにします。

  ssh [email protected] -L localhost:10001:hostxyz:22
  ssh user@localhost:10001

これが私がすることです。私は.ssh/configファイルを使ってすべてをクリーンアップします。設定ファイルとトンネルに関する情報については、以下をお読みください。https://man.openbsd.org/ssh_config別の素晴らしい紹介については、opensshに関するMichael W Lucasの講演をご覧ください。

おすすめ記事