
nm-appletを使用すると、VPN接続と接続のユーザー名+パスワードを簡単に保存し、使用時に自動的に特定のWi-Fi接続に接続できます。パスワードを求めずに常に自動的に接続されます。
端末で他のコマンドを使用してnmcli
これを達成するにはどうすればよいですか?より簡単な接続を展開して編集できるようにスクリプトを作成したいと思います。
これまでは管理だけしてきました。
nmcli connection import type openvpn file ned.ovpn
また、保存された接続は以下で見つけることができることがわかりました。
/etc/NetworkManager/system-connections/
ラップトップからデスクトップに同じ設定をコピーしてみましたが、何も変更されていないようです。設定を見たり変更したりできないようです。
答え1
以下は私の元のコメントの詳細な説明です。目標は、CLIツールを使用して同等の機能を理解することです。ナミクリーユーザーがGUIツールの設定を知っている限り、設定を見つけるためにすべての文書を確認する必要はありません。このGUIツールの一時的なヘルプを使用してください。nm - 小さいプログラム、利用可能でなければなりませんどこかに(同じシステムではありません)同じ設定を使用してください。これは、ここで検討した以外の設定で使用できる一般的なアプローチです。
2つの接続が関連しています。電話します。基本とMyVPN使用時に自動的に接続されます。基本。ここで変更が適用されます。基本、確認する必要があります。
$ nmcli connection show
NAME UUID TYPE DEVICE
main cfa5be23-925a-4273-b5de-2f9adaac8782 wifi --
myVPN 0d9e60ef-6b5e-4f65-8312-8db428589866 vpn --
基本設定を表示するには、次のいずれかを実行します。
nmcli connection show id main
nmcli connection show uuid cfa5be23-925a-4273-b5de-2f9adaac8782
次のような他の多くの行がダンプされます。
connection.id: main
connection.uuid: cfa5be23-925a-4273-b5de-2f9adaac8782
connection.type: 802-11-wireless
[...]
だから最初のダンプみんなファイルにあります。一部の出力はローカライズされているため、事前に実行することをお勧めしますexport LANG=C.UTF-8
(後でインターネットで特定の設定名または値を取得または比較する必要がある場合に役立ちます)。
nmcli c show id main > /tmp/before
GUIツールの使用nm - 小さいプログラムその機能が分かると、VPNMyVPNメインに追加:
捨てる再び:
nmcli c show id main > /tmp/after
今diff
変更した内容を比較して表示できます。
$ diff -u /tmp/before /tmp/after
--- /tmp/before 2019-05-04 10:47:43.410149358 +0200
+++ /tmp/after 2019-05-04 10:47:58.798252044 +0200
@@ -15,7 +15,7 @@
connection.master: --
connection.slave-type: --
connection.autoconnect-slaves: -1 (default)
-connection.secondaries: --
+connection.secondaries: 0d9e60ef-6b5e-4f65-8312-8db428589866
connection.gateway-ping-timeout: 0
connection.metered: unknown
connection.lldp: default
これは、これまで目立たなかった設定があまり推測せconnection.secondaries
ずに設定されたことを意味します。MyVPNUUID: 0d9e60ef-6b5e-4f65-8312-8db428589866
。nm-セット(5)それについて話す接続設定:
string[]の補助配列
プライマリ接続自体をアクティブ化するときにアクティブにする必要がある接続UUIDのリスト。現在、VPN接続のみがサポートされています。
これで、VPNへの自動接続を再度クリアできるようになりました基本そして:
nmcli c modify id main connection.secondaries ''
そして再び追加MyVPNwith(したがって配列です+
):
nmcli c modify id main +connection.secondaries 0d9e60ef-6b5e-4f65-8312-8db428589866
いくつかのグルーコード(idでuuid検索など)を使用すると、これを自動化できます。
もちろん、その行はファイルのどこかに追加または削除されますが、/etc/NetworkManager/
それに依存してはいけません。
注:私はこの回答を書く前にこの設定について知りませんでした。