Openvpn
無密碼重啟 OpenVPN 服務
有人可以告訴我如何在沒有密碼提示的情況下執行它:
systemctl restart openvpn@myvpn.service`
在我的 sudoers 文件中,我有:
<myadminuser> ALL=NOPASSWD: /usr/bin/systemctl openvpn@myvpn.service restart,/etc/init.d/openvpn
在 ~/.bashrc 我有:
alias or="systemctl restart openvpn@myvpn.service"
我嘗試過的解決方案:
如果我在別名中添加“sudo”,則會在終端內請求密碼。如果我不在別名中添加 sudo,則會彈出框,要求輸入密碼。因此,我在這裡發布了這個問題。
在您的
sudoers
文件中,您的條目不正確,因此它永遠不會匹配。應該是這樣(注意restart
動作的位置與你原來的相比),<myadminuser> ALL=NOPASSWD: /usr/bin/systemctl restart openvpn@myvpn.service,/etc/init.d/openvpn
然後在你的別名中你需要使用
sudo
,alias or="sudo systemctl restart openvpn@myvpn.service"
作為一個相關的想法,您可以通過使用 OpenVPN keep-alive 選項來避免執行任何這些操作,該選項添加到您的客戶端配置中
keepalive 10 60
這告訴 OpenVPN 客戶端每 10 秒發送一個“hello”消息(
ping
儘管這些值的通常描述,但它不是 ICMP),如果在 60 秒內沒有收到回复,則重新啟動連接。如有必要,您可以嘗試將其減少到 40 秒超時,但我不會低於此值。