Tato otázka byla aktualizována. Podívejte se prosím na konec tohoto příspěvku.
Snažím se nastavit svůj počítač Mythbuntu tak, aby se při jeho spuštění připojil ke službě VPN. Doufám, že počítač Mythbuntu bude vždy používat VPN pro všechna svá internetová připojení.
Našel jsem skript, který to údajně udělá, a vypadá takto:
#!/bin/bash
while [ "true" ]
do
VPNCON=$(nmcli con status)
if [[ $VPNCON != "*MyVPNConnectionName*" ]]; then
echo "Disconnected, trying to reconnect..."
(sleep 1s && nmcli con up uuid df648abc-d8f7-4ce4-bdd6-3e12cdf0f494)
else
echo "Already connected !"
fi
sleep 30
done
Když spustím tento skript na svém počítači, zobrazí se následující chyba:
$ /home/mythbuntu/VPN_start.sh
Disconnected, trying to reconnect...
Error: Connection activation failed: Not authorized to control networking.
Myslel jsem, že to může být problém s oprávněním, a tak jsem to zkusil spustit pomocí sudo:
$ sudo /home/mythbuntu/VPN_start.sh
[sudo] password for mythbuntu:
Disconnected, trying to reconnect...
Active connection state: unknown
Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/1
state: VPN connecting (need authentication) (2)
Error: Connection activation failed: no valid VPN secrets.
Jak zajistím, aby se tento skript spouštěl bez chyb, abych ho mohl spustit při spouštění nebo přihlášení, abych se mohl ujistit, že se vždy připojuji přes VPN.
Pokud má někdo lepší skript nebo metodu, to by také stačilo jako odpověď.
Toto je obsah mého souboru /etc/NetworkManager/system-connections/MyVPN (některé podrobnosti nahrazeny x znaky kvůli ochraně soukromí):
[connection]
id=MyVPN
uuid=xxxxxxxxxx-xxxx-xxxx-xxxxx-xxxxxxxxxxxxxxx
type=vpn
[vpn]
service-type=org.xxxxxxxxxxxxxx.xxxxxxxxxxxxxxx.openvpn
username=xxxxxxxxxx
comp-lzo=yes
remote=us-xxxxxx.xxxxxxx.com
connection-type=password
password-flags=0
ca=/etc/openvpn/xxxxxxx.crt
[vpn-secrets]
password=xxxxxxxxxxx
[ipv4]
method=auto
never-default=true
Také bych chtěl dodat, že když zapnu VPN pomocí appletu v pravém horním rohu panelu Xfce, připojí se bez problémů. Nezdá se mi tedy, že by problém spočíval v nesprávné autorizaci, ale v konfiguraci při pokusu o to z příkazového řádku.
Aktualizace:
Nejsem si úplně jistý, co se změnilo – možná něco v upgradu na 12.10 – ale nyní mohu spustit službu VPN z příkazového řádku. Tento příkaz však funguje pouze jednou při prvním spuštění počítače a také je třeba jej spustit pomocí sudo
.
[email protected]:~$ nmcli con up id "Private Internet Access SSL"
Error: Connection activation failed: Not authorized to control networking.
[email protected]:~$ sudo nmcli con up id "Private Internet Access SSL"
[sudo] password for mythbuntu:
[email protected]:~$
Protože musím použít sudo
Abych to spustil, nemohu to spustit automaticky při spuštění.
Jak to dostanu, abych mohl spustit svou VPN bez oprávnění superuživatele?
Přijatá odpověď:
Problém se zdá být v tom, že vaše heslo ve svazku klíčů není přístupné.
Zdroj
Zmíněné řešení je otevřít soubor /etc/NetworkManager/system-connections/ConnectionName a nastavte
password-flags=0
a přidejte níže uvedené řádky do souboru
[vpn-secrets]
password=YourPassword
Poté restartujte správce sítě, aby se změna projevila:
sudo restart network-manager
Další informace najdete ve zdroji