ファイアウォールの背後にある複数のクライアントからのSSH接続を受け入れるパブリックサーバーがあります。
これらの各クライアントはssh -R
、ポート80のWebサーバーから公開サーバーへのコマンドを使用して、リバースSSHトンネルを作成します。
リバースSSHトンネルの宛先ポート(クライアント側)は80で、送信元ポート(パブリックサーバー側)はユーザーによって異なります。各ユーザーのポートアドレスのマップを維持することを計画しています。
たとえば、クライアントAは、ポート80のWebサーバーをポート8000にトンネルします。80から8001のクライアントB。80から8002のクライアントC。
Client A: ssh -R 8000:internal.webserver:80 clienta@publicserver
Client B: ssh -R 8001:internal.webserver:80 clientb@publicserver
Client C: ssh -R 8002:internal.webserver:80 clientc@publicserver
基本的に、私たちがやろうとしていることは、各ユーザーをポートにバインドし、他のポートへのトンネルを許可しないことです。
でSSHのフォワードトンネリング機能をssh -L
使用していた場合、permitopen=host:port
設定を使用することで、どのポートがトンネリングされるかを許可できます。ただし、リバースSSHトンネルに相当するものはありません。
ユーザーごとにリバーストンネリングポートを制限する方法はありますか?