nm-applet을 사용하면 VPN 연결과 연결에 대한 사용자 이름+비밀번호를 쉽게 저장한 다음 사용할 때 자동으로 특정 Wi-Fi 연결에 연결할 수 있습니다. 비밀번호를 묻지 않고 항상 자동으로 연결됩니다.
터미널에서 다른 명령을 사용하여 nmcli
이를 어떻게 달성 할 수 있습니까? 더 쉽게 더 많은 연결을 배포하고 편집할 수 있도록 스크립트를 작성하려고 합니다.
지금까지는 관리만 해왔습니다.
nmcli connection import type openvpn file ned.ovpn
또한 저장된 연결은 다음에서 찾을 수 있다는 것을 알았습니다.
/etc/NetworkManager/system-connections/
랩톱에서 데스크톱으로 동일한 설정을 복사해 보았지만 아무것도 변경되지 않은 것 같습니다. 설정을 보거나 변경하지 못하는 것 같습니다.
답변1
아래는 내 원래 의견에 대한 자세한 설명입니다. 목표는 CLI 도구를 사용하여 동등한 기능을 이해하는 것입니다.나미클리사용자가 GUI 도구의 설정을 알고 있는 한 설정을 찾기 위해 모든 문서를 검토할 필요가 없습니다. 이 GUI 도구의 임시 도움말을 사용하면 됩니다.nm-작은 프로그램, 사용할 수 있어야합니다어딘가에(동일한 시스템도 아님) 동일한 설정을 사용합니다. 이는 여기서 고려한 것 이외의 다른 설정에서 사용할 수 있는 일반적인 접근 방식일 뿐입니다.
두 가지 연결이 관련되어 있습니다. 전화하겠습니다.기본, 그리고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/
이에 의존해서는 안 됩니다.
참고: 저는 이 답변을 쓰기 전에는 이 설정에 대해 몰랐으며, 들은 대로 했습니다.