4

したがって、ローカルのソックス プロキシを作成することができsudo ssh -D 8080 user@server 、自分のマシンからのみアクセスできます。

nmap -p 8080 127.0.0.1
8080/tcp open  http-proxy

ただし、このプロキシはローカル ネットワークからアクセスできません。

nmap -p 8080 192.168.1.10
8080/tcp closed  http-proxy

ポートフォワーディングを試してみましたが、問題を解決していないようです (間違っている場合を除きます)。私は Mac を使用しています。

ソリューション?

4

1 に答える 1

7

ネットワークから SOCKS プロキシにアクセスする場合は、SOCKS プロキシを localhost ではなくアクセス可能な外部アドレスにバインドする SSH が必要です。これは「ローカル」であり、他の外部接続を許可しません。代わりに次のコマンドを使用してください。

ssh -ND "*:8080" user@server

コマンドから削除し、フラグをコマンドにsudo追加したことに注意してください。確かに必要ありません。1024未満のポートを開く場合にのみ必要です(正当な理由がない限り、そうすべきではありません)。このフラグは、SSH セッションをN oninteractive にして、シェル セッションを起動せず、プロキシのみを起動するようにします。は、SOCKS プロキシをシステム上のすべてのアドレス (ネットワーク アドレスを含む) にバインドします。-Nsudo-N-D ":8080"

ファイアウォールの設定については、最近のバージョンの Mac OS X (10.6+) を使用している場合は、ファイアウォールを 8080 ポートに対して開くこともできます。これを行うには、次のコマンドを使用できます。

sudo ipfw add 9999 allow tcp from any to any dst-port 8080

9999は、ファイアウォール ルールを識別するために使用できる単なるファイアウォール ID 番号です。

プロキシを開くのをやめる場合は、次のコマンドでプロキシを閉じます。

sudo ipfw delete 9999

すべての設定が完了したら、プロキシをインターネット経由で使用できるようにする場合は、指示に従ってポート転送を設定する必要があります。このガイドを使用して、ルーターでポート転送を構成できます。

ただし、インターネット上でオープン プロキシを公開すると、問題が発生する可能性があります。あなたの ISP はおそらくこれに眉をひそめるでしょう。特に、あまり良くない人がインターネット経由で SOCKS プロキシにアクセスした場合はなおさらです。より良い解決策はありますか?OpenSSH サーバーをインストールして保護し、インターネットからログインしてローカルで SOCKS プロキシを設定するだけです。このガイドはそれを支援します。

ハッピープロキシ!

于 2013-08-13T15:34:42.833 に答える