SSHトンネルを介してインターネットをルーティングするにはどうすればよいですか?


24

古いQルート権限なしでOpenVPNサーバーをセットアップするにはどうすればよいですか?

ルート権限なしでOpenVPNサーバーをセットアップする方法はありますか?たとえば、ホームディレクトリに構成ファイルがありますか?はいの場合、どのように設定しますか?

私はシステムにSSHで接続し、個人用にOpenVPNサーバーをセットアップしようとしています。

編集

OpenVPNにはルート権限が必要であることは明らかなので、簡単に設定できるSSHを使用してインターネットをルーティングするように質問を変更しています。


「ユーザー空間」とは、root権限のないホームフォルダーを意味しますか?通常、「ユーザー空間」は「カーネル空間」の反対として使用されます。
レーケンシュタイン


@Lekensteyn、はい、root許可なしで、ユーザー空間が他のものを参照していることを知りませんでした。私の質問を適切なものに自由に編集してください。私もその答えを考えていましたが、ルート権限なしで設定することについては知りません。
オックスウィビ

回答:


32

sshuttleは、SSH接続を介して転送し、リモートサーバーでPythonスクリプトを実行してプロキシを設定する透過的なプロキシサーバーです。sshuttle次の条件で実行できます。

  • クライアントマシンまたはルーターはLinuxベース、FreeBSDまたはMac OS
  • クライアントの管理者権限
  • SSH経由のリモートネットワークへのアクセス
  • リモートネットワークに管理者権限がありません
  • リモートサーバーでのPythonの可用性

ソフトウェアセンターまたはターミナルからsshuttleここに画像の説明を入力してくださいをインストールします。

sudo apt-get install sshuttle

すべてのトラフィックをルーティングしてsshuttleを実行するための基本的なコマンドは次のとおりです。

sshuttle -r username@sshserver:port 0/0

コマンドを実行sudoすると、パスワードプロンプトが表示され、続いてSSHアカウントのパスワードが表示されます。短いメッセージを除いて他の詳細は表示されず、失敗するとシェルに戻ります。さらにステータスメッセージを表示するsshuttleには、-vフラグを指定して詳細モードで実行します。

この例では、DNSを除くすべてのインターネットトラフィックがVPNを介してルーティングされます。-rflagは、上記の例に続くリモートホスト名とオプションのユーザー名とポートを示します。0/00.0.0.0/0、VPN経由でルーティングするサブネットを表す略です。0/0DNSサーバーを除くすべてのトラフィックをリモートサーバーにルーティングします。-Hフラグを使用すると、DNSチューニングが可能になります。

実行できるman sshuttleオプションとモードの詳細については、manページ()をご覧くださいsshuttle。概念とその他の例については、プロジェクトページを参照してください


レッドソックも検討する価値があります。同じ機能、わずかに異なる実行
-sanmai

17

特定の操作で必要になるため、ルート権限なしでOpenVPNをセットアップすることはできません。

  • 前提条件:(iptables?)ファイアウォールでパケット転送を有効にする必要があります
  • 動作中のデバイスの追加:を使用して特別な仮想デバイスを追加する必要がありifconfigます。それ以外の場合、サーバーとクライアントの間で通信はできません

ニーズに応じて、他のソリューションを利用できます。サーバーをブラウズするために、SOCKSサーバーをセットアップできます。

SOCKSプロキシ

SOCKSプロキシの設定は難しくありません。OpenSSHに組み込まれています。SOCKSサーバーを有効にするには、ターミナルで次のコマンドを実行します。

ssh user@host -D1234

1234を優先ポートに置き換えます。ブラウザで、SOCKS4 / 5サーバーのlocalhostホストおよび1234ポートとして入力できます。

以下は、Firefoxブラウザーの例です。

  1. [ 編集] -> [ 設定]に移動します
  2. 詳細セクションを開きます
  3. [ ネットワーク ]タブに移動します
  4. プレス設定
  5. 手動プロキシ設定を選択します
  6. SOCKSホストlocalhostとして入力
  7. 1234ポートとして入力(SSHコマンドで指定されたものと同じポート)
  8. [ OK]および[閉じる]を押して、設定ダイアログを閉じます。

FIrefoxのセットアップ例


1
VPNをセットアップするシステムを介してインターネットをルーティングしたい。
オックスウィビ

残念ながら、ルート権限なしにサーバーのルーティングルールを変更することはできません。少なくとも安全なブラウジングのソリューションを提供する1つのソリューションは、回答で説明されているSOCKSプロキシを使用することです。
レーケンシュタイン

1
インターネットをSSHトンネル経由でルーティングすることに成功しました。質問を編集したのと同じように、回答を編集して具体的に参照しますか?それともあなたはそれをしますか?
オックスウィビ

@Oxwivi:再注文し、Firefoxの例を追加します。
-Lekensteyn

-1

システムのTCPトラフィックをトンネリングしたいだけなら、tun2socksと呼ばれるプログラムを使用することをお勧めします。UDPトラフィックもトンネルする場合は、サーバーにudpgwをインストールする必要があります。

このプログラムをインストールして使用する方法は次のとおりです。http//board.nwrk.biz/viewtopic.php?id = 3


4
回答を更新して、リンクの最も重要なステップをここで説明してください。このように、この回答は、サイトがなくなっても有用です。
ルイ・マッタイッセン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.