web-dev-qa-db-ja.com

root以外のユーザーがtunデバイスを作成できるようにする方法

_/dev/net/tun_を開いてioctl()を発行する必要があるプログラムを開発していますが、rootユーザーがいないと許可が拒否されます。適切なudevルールがこの問題の解決に役立つと思います。ファイル_/etc/udev/rules.d/my_net_tun.rules_にルール_KERNEL=="tun", MODE="0666", SYMLINK+="static_node=net/tun"_を使用して新しいudevルールを作成してから、udevルールを再ロードしようとしましたが、それでも権限が拒否されました。私のルールに何か問題があるのではないかと思います。どうすれば修正できますか?

1
Sigma

それでは十分じゃない。プロセスが/dev/net/tunを開くことができる場合でも、新しいtun/tapデバイスを作成したり、それらに所有者を割り当てたりするには、CAP_NET_ADMIN機能も必要です。

これは、カーネルドキュメントの tuntap.txt ファイルで説明されています。

2
pizdelect