web-dev-qa-db-ja.com

シェルスクリプト/コマンドラインから新しいNetworkManager接続を構成する方法

一日中、ターミナル/シェルスクリプトを使用してNetworkManagerで管理できる新しい接続を設定する方法を見つけようとしましたが、失敗しました。

その理由は、openvpn構成ファイルがたくさんあり、それらをインポートするための優れた高速な方法が必要だったためです。また、NetworkManager openvpnプラグインは構成ファイルに埋め込まれた証明書を解析しないため、新しい構成ファイルを構成する唯一の方法です。 VPN接続は、スクリプトを実行して構成ファイルから証明書を抽出した後、GUIを介して手動で行うことです。これは、かなり長くて面倒なプロセスです。

RedHatでは、nmcliユーティリティに次のように新しい接続を構成する機能があることがわかりました。

nmcli con add [...]

ただし、これは(標準の)Linux Mint 17.1では可能ではありません。

/etc/NetworkManager/system-connectionsに新しいファイルを追加して、新しい接続を手動で追加しようとしました

[connection]
id=VPNConnection
id=3389cf54-949e-4c69-a746-864f0f8720b8
type=vpn

[vpn]
service-type=org.freedesktop.NetworkManager.openvpn
fragment-size=1300
connection-type=password-tls
password-flags=1
auth=MD5
tunnel-mtu=1500
cipher=AES-256-CBC
comp-lzo=yes
cert-pass-flags=0
remote=[vpn provider]
port=[vpn port]
mssfix=yes
username=[username]
remote-cert-tls=server
cert=[user cert]
ca=[ca cert]
key=[user priv. key]

[ipv6]
method=ignore

[ipv4]
method=auto

ただし、この新しい設定はNetworkManagerに表示されません。

また、私は個人の家の下にも/ rootの下にも〜/ .gconf/systemディレクトリを持っていません。

NetworkManagerはどこから設定ファイルを読み取ることができますか?

7

/etc/NetworkManager/NetworkManager.confを確認してください

[main]の下にpluginsディレクティブがあり、keyfileプラグイン(つまり、plugins=keyfile,ifupdownなど)を有効にしている場合は、/etc/NetworkManager/system-connections/を監視する必要があります。ファイル変更用のディレクトリ。

さらに、man NetworkManager.confは、「root以外のユーザーまたはグループが読み取りまたは書き込み可能なファイルを無視する」ことを示します。

これで問題が解決するかどうかはわかりませんが、チェックする価値があります。

this によると、NetworkManager v7 +で動作するはずです

乾杯! /ダニエル

7
Daniel

これは私のために働いた:

nmcli reload "your connection name"

その後、再起動します。再アクティブ化もおそらく機能します。

1
wlarip