ローカルマシンのVPNルーターとしてのPI


18

数台のマシンがVPN接続を介してインターネットにアクセスできるようにします。私のアイデアは、PIがダイヤルインして接続を確立し、他のマシンからのリクエストをルーティングするだけだということです。

私は、デバイスのデフォルトルーターをPIのIPに設定すると考えています。

何らかの形でコマンドライン設定を経験したことがありますが、必要なパッケージ/サービスの指示を教えてください。

セットアップの概要:

  • PIはデフォルトルーターを介して直接インターネットに接続します
  • PIはVPN接続(OpenVPN)を作成し、そのローカルインターフェイスでトラフィックをリッスンします
  • PIは障害時に接続を再確立します
  • 他のネットワークデバイスには、PIのIPに設定されたデフォルトゲートウェイがあり、それらのトラフィックはすべて、VPNを通過します(VPNがダウンしている場合、インターネット接続はありません)。

NATまたはDHCPサービスは必要ありません(DNSはVPNも通過できます)。


ポイントは何ですか?ローカルネットワークでPiを使用してアウトバウンド接続を作成する場合、他のコンピューターを使用して同様のアウトバウンド接続を直接作成して、Piのコストとソフトウェアのインストールとセットアップの頭痛を軽減しませんか?従来のVPNセットアップは、ローカルネットワーク上のコンピューターであり、受信接続をリッスンしてパスワードをチェックし、リモートコンピューターがローカルネットワークを直接使用できるようにします。
レニック

1
@lenikポイントは、同じVPN接続を使用している多数のマシンがあることです。また、複数のマシンの構成を変更し続けることで単一のマシンを構成する方がはるかに簡単です。再ダイヤルなどを保証します。そして、あなたは正しいです。
ペトル

1
使用してルーティングを行うには、別のデバイスはすべてのトラフィックがVPN経由はるかに簡単になることを確実にすることの仕事になりません言及すること
ペトル

3
一部のデバイスは、VPNに接続することもできません。これらのデバイスには、多くのゲームコンソールや、VPNに接続するように簡単に構成できる標準オペレーティングシステムを実行しない他のデバイスが含まれます。
キブビー

@lenikこの設定は、エンタープライズレベルのネットワーク機器では一般的です。約300ドル以上からルーターに組み込まれています。OPは、価格の10番目の周りのための解決策を探している...午前Iと
フィリップCouling

回答:


15

私はあなたと同じセットアップを持っています:

Cable modem -> Router (192.168.1.1) +-> Raspberry Pi (192.168.1.11)
                                    |-> iPad (DHCP)
                                    |-> PC (DHCP)
                                    `-> AppleTV (DHCP)

最初/etc/network/interfacesに、RPiのネットワーク設定()を静的アドレスに変更しました

iface eth0 inet static
address 192.168.1.11
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

その後、RPiでOpenVPNをセットアップする必要があります。

sudo apt-get install openvpn

次に、vpnの設定ファイルを設定する必要があります/etc/openvpn/server.conf。vpnサービス(Witopia)が提供するサンプルを使用し、最後に変更dev tundev tun0て追加redirect-gatewayしました。

次のステップ、iptablesを変更してNATを許可する

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

永続的にするには、次のように保存します

sudo bash
iptables-save > /etc/iptables.up.rules
nano /etc/network/if-pre-up.d/iptables

これを新しいファイルに追加します。

#!/bin/bash
/sbin/iptables-restore < /etc/iptables.up.rules

保存して実行可能にしchmod +x /etc/network/if-pre-up.d/iptablesます。/etc/sysctl.conf次に、行を編集してコメント解除し、IP転送を有効にする必要があります。net.ipv4.ip_forward = 1

再起動すると、RPiがVPNに接続し、着信トラフィックを受信できる状態になります。ルーターのdhcpサービス(OpenWrtを実行)に新しいオプションを追加して、クライアントに送信されるゲートウェイを指定しました。list 'dhcp_option' '3,192.168.1.11'ファイルに行を追加し/etc/config/dhcp、ルーターを再起動しました。iPad、PC、AppleTVはRPiを介して接続し、外部URLにアクセスできるようになりました。

ソース:


1
先週末、同様の構成のセットアップを完了しました。また、「net.ipv4.tcp_ecn = 0」を/etc/sysctl.confファイルに追加する必要がありました。それが何をするのかは分かりませんが、それなしではゲートウェイは適切に動作しません。
キブビー

これは私のために機能しましたが、1つの変更を加えました。NATルールはiptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
Regan Walsh 14


0

試して

https://help.ubuntu.com/community/OpenVPN

Raspbianはセットアップが同じになるようにUbuntuに十分近いはずであり、OpenVPNパッケージがRaspbianリポジトリで利用可能であることを確認しました。

ただし、ほとんどのVPNの指示では、LANをインターネット上のVPNクライアントに開放するためのサーバーを作成する方法が説明されています。そのため、ルーティング設定を少し試す必要があります。


おかげで、私はもう少しよく理解しています-私が確信していないのは、PIが接続をリッスンしてVPN経由で転送する方法ですか?
ペトル

1
@petr sysctl -w net.ipv4.ip_forward = 1を実行するだけで、他のマシンにRPIをデフォルトゲートウェイとして使用させることができ、RPIは問題なくルーティングされます。
nos

0

これが有用かどうかはわかりませんが、米国から中国に旅行するとき vpnプロバイダーからRaspberry PiでVPNを使用しています。彼らは私がインストールしたdd-wrtスクリプトを持っています。すでに作成されたdd-wrtスクリプトを使用してプロバイダーを探す場合、多くのトラブルを省くことができるかもしれません。誰かがこのスクリプトに興味がある場合は、ここに投稿できます。



0

これが私のニーズに非常によく似た私のセットアップです。必要なのは、OpenVPNクライアントをインストールし、Raspbianでいくつかの設定を行うことだけです。 ここに画像の説明を入力してください

ブログで説明しました。Raspberry PIを使用したVPNゲートウェイのセットアップ


こんにちは、ようこそ!今のところ、「必要なパッケージ/サービスの指示を教えてください。必要なパッケージ/サービスの指示を教えてください」という質問はないと思います。回答に記載されています。人々がリンクをたどることを要求せずに、もう少し詳しく説明してもらえますか(実際、これは単なる図です)。
ガニマ

@Ghanima、コメントありがとうございます。返信を変更しました。
アフェラホ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.