自宅のネットワークで複数のデバイスを実行しています。ネットワーク上のポートを公開したり、自宅でDNSを処理したりせずに、リモートでそれら、特にOpenHABおよびOctoPrintWebページにアクセスできるようにしたいと思います。
DigitalOceanにリモートでOpenVPNサーバーをセットアップし、スマートフォン経由で接続することを計画していました。 1台のコンピューター(Raspberry Piなど)でホームネットワーク全体をOpenVPNサーバーに公開する方法はありますか?
速度は大きな問題ではありませんが、セキュリティは重要です。実行可能なことのように思えますが、検索する適切な単語を知るのに十分なネットワークのバックグラウンドがありません。これがVPNサーバーをセットアップするときです。自宅のすべてのデバイスにVPNソフトウェアをインストールする必要はありません。これは、更新を維持するためのものであり、pingを実行したいArduinoボードの一部にすぎないためです。もちろん、ネットワーク外のデバイスにはVPNソフトウェアがインストールされています。
1台のコンピューター(Raspberry Piなど)でホームネットワーク全体をOpenVPNサーバーに公開する方法はありますか?
はい、それはルーターの基本的な機能です。
サーバーとRaspberryの両方で、IPルーティング(転送)を有効にする必要があります。たとえば、Linuxでは、net.ipv4.conf.all.forwarding
およびnet.ipv6.conf.all.forwarding
sysctlになります。
VPN サーバールートが必要ですto LANサブネットvia RaspberryPiのIPアドレス。 (具体的には、ルートはVPNサーバーの観点からのものであるため、LANアドレスではなくVPNアドレスを介して。)
注:デフォルトの「tun」モードでOpenVPNを使用している場合、これは実際には2つの構成に分割する必要があります。
1. tun0
(ゲートウェイなし)を介したホームサブネットへのカーネルルート、
2。およびOpenVPN irouteオプションは、ゲートウェイとしてRaspberryPiのIPを介して同じサブネットに送信されます。
「タップ」(イーサネットエミュレーション)モードでは、単一のカーネルルートで十分です。
LANのプライマリルーター(たとえば、ISPが発行した「ルーター/モデム」)には、RaspberryPiの[〜#〜] lan [を介してVPNサブネットへの反対方向のルートが必要です。 〜#〜] IPアドレス。
これを構成できない場合の代替手段がありますが、それらは別のスレッドのトピックです。
Raspberry Pi自体には、必要なすべてのルートがすでにあります(LANとVPNの両方に直接接続されているため)。
最後に、VPNサーバーはプッシュすべてのその他クライアント(電話など)へのLANサブネットのルートである必要があります。これにより、クライアントは通過する必要があることがわかります。それに到達するためのVPN。
(これは、すでに「デフォルト」ルートをプッシュしている場合はオプションですが、とにかくお勧めします。)