ホスティングプロバイダに関係なく、汎用ソリューションが必要ですが、AWSでVPSを実行しています。
このVPSは、SSHを介してさまざまな他のボックスにアクセスする(リバースSSHを介してジャンプボックスに接続する)など、さまざまな内部サーバーのジャンプボックス(CentOS 6を実行)として機能します。 Jump Box は、各サービスに対してランダムな親ポートを公開します。
現在、SSHを介してジャンプボックスに接続されているIPアドレスにのみこれらの親ポートを公開できますか?
出力をスキャンしてwho -a
IPアドレスをフィルタリングし、IPTABLES
cronjobを使用して更新するか、APIを使用してAWSのセキュリティグループを更新することを検討しています。しかし、このアプローチは粗雑に見えます。どんな提案がありますか?
ベストアンサー1
SSH接続を開始するときに宛先/ポートを知っている場合
ssh -L 8080:10.0.0.1:80 <JumpBox address>
理想的には、現在見ている場所に似たものを使用してJumpBoxに接続することをお勧めします。10.0.0.1 ファイアウォール/ NATの背後にありますが、JumpBox経由でアクセスできます。。
これにより、接続が作成され、127.0.0.1(localhost)にバインドされるため、ブラウザ(または他のソフトウェア)クライアントから接続してhttp://localhost:8080あなたのパケットは次のアドレスにルーティングされます。10.0.0.1:80これはJumpBox自体から直接アクセスするのと同じです。
[ssh] 接続時にポート番号/対象がわからない場合
SOCKS / SOCKS 5プロキシを使用するように構成されたクライアントでは、接続されたクライアントにサーバーにアクセスできるすべてのリソースへのアクセス権を提供できることに注意することが重要です。
「動的転送」を使用してVPSに接続する
ssh -D 1080 <JumpBox address>
- SOCKSプロキシサーバーを使用するようにクライアントソフトウェアを構成する
localhost:1080
- 設定されたソフトウェアを介して行われた接続は、JumpBox自体からターゲットに接続するかのようにトンネルされます。