web-dev-qa-db-ja.com

SOCKS 5サーバーとしてのOpenVPNクライアント?

リモートOpenVPNサーバーに接続してローカル環境でSOCKS5サーバーのように機能するWindowsアプリケーションはありますか?

編集:つまり

  • ローカルサーバー
  • vPN/OpenVPNプロトコルを話し、ソックスプロキシサーバーとしてポートにバインドします
  • 抽出して実行、管理者/ root権限なしでインストール可能
  • tUN/TAPデバイスやその他の仮想インターフェースをセットアップする必要なし
  • ルートテーブルはきれいなままにしておきます。
17
est

あなたがしたいのは、OpenVPNサーバー(または実際にはOpenVPNネットワーク上の任意のコンピューター)でシェルアクセスを有効にし、プロキシ用のシェルアカウントを作成することです。

使用する ssh -D 127.0.0.1:8080 usernameクライアントシステムのコマンドラインで、usernameは作成したプロキシシェルアカウントの名前であり、8080は、ローカルマシンで使用するSOCKS5ポートです。 sshはデフォルトでMac/Linux/BSDにインストールするか、そうでない場合は簡単にインストールする必要があります。Windowsの場合は、PuTTYまたはCygwinのsshを使用してトンネルを設定できます。これで問題が解決しないことはわかっていますが、OpenVPNネットワークを介してシェルにコンピューターにアクセスできる場合は、これが目的の目的を達成する最も速い方法です。

もう1つの方法は、発信接続のバインドアドレスを指定できるSOCKS5サーバーを見つけることです。

2
Darth Android

これは私がしました。長い時間がかかりました。要するに、

  1. ネットワークインターフェイスを使用するプログラムのみがVPNを使用するようにOpenVPNクライアントを設定します。
  2. ローカルSSHサーバー(freesshd)をセットアップし、VPNネットワークインターフェースに強制します。
  3. PuTTYをトンネルで上記のSSHサーバーに接続します。

これが長いバージョンです:

  1. Redditには 良いガイド があり、OpenVPNを独自のネットワークインターフェイスに制限します。最初の2つのステップだけを実行しました。一部のプログラム(トレントクライアント)は、このネットワークインターフェイスにネイティブに接続してVPN経由で実行できますが、他のすべてのプログラムは直接接続を使用します。

    しかし、それでもそのSOCKSプロキシが必要な場合は、続けてください...

  2. freesshdforcebindipをダウンロードします。これが Raymond.ccのガイドfreesshd(または任意のプログラム)をVPNインターフェースに強制する方法についてです。

    • これはすべて管理者として行う方がよいでしょう。管理者以外のfreesshdの実行に問題がありました。
    • freesshdを正しく構成する必要があります。

      1. sshタブで、「listenaddress」を「onlylocalhost」に設定します

      2. tunnelタブで、両方のポート転送設定を許可します(両方ではなく、それぞれ最初のチェックマークのみ)。

      3. userタブでユーザーを追加し、すべてのものにアクセスできるようにします。

  3. SSHサーバーが実行されているので、PuTTYを接続してSOCKSトンネルを作成するだけです。 127.0.0.1(ローカルSSHサーバー)に接続し、SOCKSのポートを選択します。これが そのためのチュートリアル です。

それでおしまい!これで、PuTTYで選択したポートで127.0.0.1でSOCKSプロキシが実行されます。

まだルートなどがあることは知っていますが、最終的には「クリーンな」SOCKSプロキシがあります。

2
hoanns