Unityでは、ネットワークマネージャーには、接続がアクティブなときにVPNの自動使用を設定するすべての接続で使用できるチェックボックスがあります。
Ubuntu GNOME 16.04でこのようなオプションを取得する方法はありますか?(これはGNOME 3.18を使用します)。接続設定ページにはこのオプションがないため:
Unityでは、ネットワークマネージャーには、接続がアクティブなときにVPNの自動使用を設定するすべての接続で使用できるチェックボックスがあります。
Ubuntu GNOME 16.04でこのようなオプションを取得する方法はありますか?(これはGNOME 3.18を使用します)。接続設定ページにはこのオプションがないため:
回答:
これに対する答えを見つけました。奇妙なことに、ネットワークマネージャーを手動で開く必要があります(パネルや設定を使用するのとは対照的です)。
中のSO Terminal
タイプnm-connection-editor
。そうすると、開いたウィンドウのOPの最初の画像にオプションが表示されます。
これは16.04および17.04で機能します。うまくいけば、GNOMEの今後のバージョンでさまざまなネットワークマネージャーを統合できることを願っています。
私はスクリプトで問題を解決しました
/etc/NetworkManager/dispatcher.d
このフォルダーには、ネットワークステータスが変更されるたびにネットワークマネージャーによってアルファベット順に呼び出されるスクリプトが含まれています。これには、VPNが起動/起動時だけでなく、サスペンド/スリープ後の再開時にもアクティブになるという利点があります(私が見た別のソリューションとは異なります)。
これが機能するためには、すでにネットワークマネージャーで設定されているVPN接続が必要です。
最初のステップ:この(ドイツ語)ページ(https://wiki.ubuntuusers.de/NetworkManager/Dispatcher/)のアドバイスに従いました。新しいスクリプト02VPN1を開いて名前を付けました
sudo YOURTEXTEDITOR /etc/NetworkManager/dispatcher.d/02VPN1
そして書いた:
#!/bin/bash
VPN_CONNECTION_NAME="NAME_OF_YOUR_VPN_CONNECTION"
if [ "$2" = "up" ]; then
sleep "3s"
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
NAME_OF_YOUR_VPN_CONNECTIONは、自動接続する接続のセットアップに使用した接続ファイルNAME_OF_YOUR_VPN_CONNECTION.confの名前です。
["$ 2" = "up"]の条件は、ネットワーク接続(インターネット接続)を開始したときにのみVPN接続が自動的に接続されることを意味します。VPNサービスを実行したら、それを無効にするか、別のVPNを選択できます。
このVPNを無効にせずに実行する場合にのみ、このIf条件なしでスクリプトを作成できます。
#!/bin/bash
VPN_CONNECTION_NAME="NAME_OF_YOUR_VPN_CONNECTION"
sleep "3s"
nmcli con up id "${VPN_CONNECTION_NAME}"
このファイルはルートとしてのみ設定できるため、追加の操作を行わずにルートが所有します。それはそうあるべきです。
最後に:このファイルを実行可能にします。そうしないと、スクリプトは実行されません。ターミナルで:
sudo chmod +x /etc/NetworkManager/dispatcher.d/02VPN1
このプロセスはrootによって実行され、rootはまだVPNに使用するパスワードにアクセスできません。次の手順を実行します。/ etc / NetworkManager / system-connectionsのNAME_OF_YOUR_VPN_CONNECTIONファイルをルートとして開きます。ターミナルを開き、以下を実行します。
sudo YOURTEXTEDITOR /etc/NetworkManager/system-connections/NAME_OF_YOUR_VPN_CONNECTION
a)行を変更する
password-flags=1
に
password-flags=0
b)下部に追加します
[vpn-secrets]
password=PASSWORDOFYOURCONNECTION
ファイルを保存して閉じます。
Network Managerを再起動します。ターミナル:
systemctl restart NetworkManager
新しい設定を初期化します。これで完了です。
私は昨日これをしました、そして私が見ることができる限り、それはうまく働きます。保証なし!