OpenVPN
нуждается в корневом доступе, поскольку ему необходимо назначить IP-адреса для вашего вновь созданного интерфейса.
Если вы работаете в графическом режиме, вы можете попробовать плагин NetworkManager
для openvpn
, который работает довольно хорошо и позволяет вашему VPN всего в один клик. Некоторые пользователи думают, что NetworkManager
немного навязчив (но это OFT).
Помимо этого, ваш лучший снимок, как вы сказали, - sudo
. ИМХО, намного лучше, чем играть с битом setuid.
Я думаю, что то, чего вы пытаетесь достичь, можно сделать, расширив корневой раздел каждого местоположения, как показано здесь:
location /admin {
root /var/www/admin;
}
location /dashboard {
root /var/www/dashboard;
}
location /sales {
root /var/www/sales;
}
Но это было бы то же самое, что иметь только
location / {
root /var/www/
}
Так как вызов http://application-domain/admin
будет оцениваться как /var/www/admin
.
Первое решение скрывает что-либо еще в /var/www/
, так как нет правила местоположения для доступа, скажем, http://application-domain/private
.