web-dev-qa-db-ja.com

minidlna + OpenVPN = VPNでDLNAサーバーを見ることができません

Ubuntu 14.04 PCでOpenVPN(トンネル、ブリッジなし)サーバーとminidlnaサーバーを実行しています。それぞれが個別に機能します(VPNが機能するように、Samba共有に接続して参照でき、インターネットトラフィックはVPNを通過します。minidlnaサーバーはLANに接続されたクライアントで機能します)が、クライアント(Android)が3G経由でVPNに接続する場合/ 4G、minidlnaサーバーを認識できません。 /etc/minidlna.confファイルnetwork_interface=eth0,tun0のインターフェイス行を編集しましたが、うまくいきませんでした。これはブロードキャストと関係があり、iptablesルールに追加する必要があるかもしれないとどこかで読みましたが、詳細はありませんでした。これを機能させるにはどうすればよいですか?

IPv4転送は/etc/sysctl.confで許可されており、 パブリックwifiで安全にWebを閲覧するためのこのOpenVPNガイド :に従ってiptablesに以下を追加しました。

Sudo iptables -I FORWARD -i tun0 -o eth0 -s 10.8.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
Sudo iptables -I FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
Sudo iptables -t nat -I POSTROUTING -o eth0 -s 10.8.0.0/24 -j MASQUERADE

iptables-persistent (Ubuntu 14.04ではデフォルトのリポジトリから利用できますが、リストに表示されていませんが)を使用して、iptablesの変更が再起動後も存続することを確認しました。執筆時点でリンクされているWebページ)。

編集dev tunからdev tapに移行しようとしましたが、OpenVPNアプリはそれをサポートしていません。 GREというものについても読んだ。 OpenVPNはそれをサポートできますか?

1
JB0x2D1

私はあなたと同じ問題を抱えていました、これが私の解決策です:

minidlnaのconfファイルには、コメント付きの引数「listen_ip」があります。コメントを外し、VPNサーバーのアドレスをインターフェイスtun0に書き込みます。あなたの場合、それは10.8.0.1のようです。 minidlnaサーバーを再起動します。VPN経由で接続されているネットワークの外部にいるときに機能するはずです。

警告:これを行うと、minidlnaがローカルネットワークに表示されなくなります。私はここで解決策を探しています: MiniDLNaローカルAND over openvpn

1
IronRabbit

UPnP用にこれを設定する方法については、ここを参照してください openvpn-with-upnp-support-in-10-minutes 。 (DLNAがこれにどのように適合するかはわかりません)。私はこれをAndroidクライアントとOpenVPNで動作させることができました。

重要なビットは linux-igdパッケージによって提供されるupnpd のようです。 VPNと「ローカル」ネットワークを何らかの形で橋渡しします。

1
Peter Lamberg

私は、OpenVPN経由のUPnP/DLNAは行く方法ではないと判断しました。代わりに、Apache2、h.264をインストールし、ストリーミングしたいメディアを含むフォルダーをこのようにリンクしました

cd /var/html/www
ln -s /path/to/media myfoldername

したがって、クライアントにVPNに接続すると(デフォルトのindex.htmlファイルを削除した後)、サーバーのローカルIPにWebブラウザーを向けると、myfoldernameストリーミングしたいメディアを閲覧できます。ファイルをクリックすると、h.264プレーヤーが開き、ビデオがストリーミングされます。

編集

そして、Plex MediaServerを見つけました。これが最善の解決策のようです。私がしなければならなかったのは、PlexでVPNサブネットを許可することだけでした。もちろん、メディアをPlexライブラリに追加した後、電話でWebインターフェイスをリモートで使用してすべてのメディアをストリーミングできます。

0
JB0x2D1