私は OpenVPN をとても楽しく使用しています。Debian Jessie マシンに 50 以上の VPN を定義しています。
あるルートをあるプロセスにマップする機能に関して質問があります。
どの tun インターフェースがどの openvpn プロセスにマップされているかを知りたいです。
現時点での唯一の解決策は、syslog をスキャンして のような文字列を探すことです/ovpn-([^\[]*).*(tun\d+)/
。起動時にほとんどすべての情報を取得できますが、クリーンではなく、ログがクリーンアップされると情報が消えてしまいます。
それでは、tun デバイスを openvpn プロセスにマップする方法はありますか?
見つけることができません。/proc/{openvpn process}/*
答え1
VPN が専用サイトに接続する場合、(a) IP アドレスでインターフェイスを識別する (各サイトが使用する内部 IP 範囲は指定しないでください)、または (b) 各 OpenVPN に特定の番号 (例: ) を構成するのはいかがでしょうか。tun100
詳細については、構成の引数tun150
を参照してください。dev
man openvpn
答え2
この投稿を受けてタップ インターフェイスとそのファイル記述子間の接続を見つけるにはどうすればよいでしょうか?
私は解決策としてps ax |awk '/[o]penvpn/{print $7" "$1;system("grep iff /proc/"$1"/fdinfo/*")}'