Гарачая клавіша NetworkManager VPN: злучэнне і адключэнне асобна
Дайце аднаму захаванаму злучэнню NetworkManager VPN два скароты замест перамыкальніка. Прывяжыце UUID, пакіньце запыт аўтэнтыфікацыі бачным і праверце гатоўнасць.
Два скароты здымаюць здагадкі, якія даводзіцца трымаць аднаму перамыкальніку VPN: адзін заўсёды злучае, другі заўсёды адключае. Два скароты прыбіраюць няпэўнасць: адзін заўсёды запытвае злучэнне, другі заўсёды запытвае адключэнне. Абодва паказваюць на той самы захаваны профіль праз яго UUID.
Прайдзіце наладку ў парадку ніжэй. Праверце кожную каманду ў тэрмінале перад прывязкай, бо скарот — дрэннае месца, каб выявіць запыт, якога вы не бачыце.
Знайдзіце UUID, а не назву профілю
Пералічыце захаваныя злучэнні ў звычайнай сесіі працоўнага стала і скапіруйце UUID патрэбнага VPN. Назва — для людзей; два захаваныя профілі могуць мець адну назву, а профіль, які выдалілі і зноў імпартавалі, атрымлівае новы ідэнтыфікатар.
nmcli connection show
nmcli connection show "Office VPN" | grep -i uuid
Трымайце UUID у апісанні скарота, а не паказаную назву. Калі профіль пазней заменяць, абнавіце абодва скароты адначасова, бо адзін састарэлы ідэнтыфікатар дае дзеянне «Злучыць», якое не спрацоўвае, пакуль «Адключыць» па-ранейшаму нацэлена на стары аб'ект. Таму абодва дзеянні выкарыстоўваюць адно значэнне. Стаўцеся да UUID як да ідэнтычнасці профілю.
Пераканайцеся, што профіль — гэта NetworkManager VPN, а не дэман пастаўшчыка з уласнай службай. Кліенту пастаўшчыка патрэбен свой падтрыманы інтэрфейс кіравання; nmcli не будзе кіраваць тунэлем, якім не валодае. Праверце тып злучэння, калі назва неадназначная. Тунэль, якім валодае іншы дэман, не з'явіцца ў тым жа спісе.
Спачатку праверце абедзве каманды ў тэрмінале
Запытайце злучэнне інтэрактыўна, завершыце ўзгоднены ўваход і дасягніце прыватнага рэсурсу, які вам сапраўды патрэбны. Затым адключыцеся адпаведнай камандай і пераканайцеся, што VPN апускаецца, не забіраючы з сабой ніжэйшае злучэнне Wi-Fi ці Ethernet.
nmcli --ask connection up uuid 11111111-2222-4333-8444-555555555555
nmcli connection down uuid 11111111-2222-4333-8444-555555555555
Выконвайце іх як два асобныя дзеянні. Яны змяняюць стан злучэння; яны не выдаляюць профіль і не рэдагуюць яго налады. Захавайце вывад тэрмінала першага запуску, каб ведаць, як выглядае звычайная паслядоўнасць запытаў. Гэты запіс робіць паводзіны скарота прадказальнымі.
Не правярайце адключэнне праз ваш адзіны шлях аддаленага адміністравання. Калі VPN нясе вашу сесію, паспяховае адключэнне таксама спыняе доступ, і для аднаўлення патрэбен шлях, які не залежыць ад тунэля. Трымайце лакальную кансоль або другое злучэнне даступнымі.
Прывяжыце два названыя скароты да аднаго UUID
У наладах клавіятуры працоўнага стала стварыце два ясна названыя дзеянні, напрыклад «Злучыць офісны VPN» і «Адключыць офісны VPN». Прызначце розныя спалучэнні клавіш і ўстаўце правераны UUID у абедзве каманды.
Называйце іх па намеры, а не па стане. Скарот з назвай «Пераключыць» робіць наступнае націсканне непрадказальным; «Злучыць» і «Адключыць» кожны апісвае менавіта тое, што будзе запытана. Гэта робіць спіс скаротаў самадакументаваным. Памылковае націсканне ўсё адно робіць нешта прадказальнае.
Калі працоўны стол выкарыстоўвае пускавыя элементы на аснове запісаў працоўнага стала, памятайце, што пускавы элемент не выдзяляе тэрмінал аўтаматычна. Каманда, якой патрэбен інтэрактыўны ўвод, будзе чакаць там, дзе ніхто не можа адказаць.
Змесціце запыт аўтэнтыфікацыі там, дзе вы яго бачыце
Без --ask nmcli запытвае ў запушчанага агента сакрэтаў адсутныя пасведчанні. Гэта правільны шлях, калі працоўны стол ужо апрацоўвае аўтэнтыфікацыю гэтага VPN і агент можа паказаць уласны запыт. Праверце звычайную каманду «Злучыць» з самога скарота, перш чым меркаваць, што яна працуе.
Калі VPN патрабуе ўзаемадзеяння ў тэрмінале, наладзьце скарот так, каб ён адкрываў тэрмінальнае прыкладанне працоўнага стала і выконваў інтэрактыўную каманду там. Аргументы запуску адрозніваюцца паміж тэрмінальнымі прыкладаннямі, таму выкарыстоўвайце дакументаваную форму ўсталяванага.
Для запісу працоўнага стала Terminal=true запытвае акно тэрмінала, а Terminal=false — не. Ні адно з гэтых налад не з'яўляецца прычынай змяшчаць пароль у камандным радку, даваць sudo без пароля або абыходзіць палітыку аўтэнтыфікацыі арганізацыі.
Праверце гатоўнасць пасля націскання клавішы
Націсканне клавішы азначае, што вы запыталі актывацыю. Яно не даказвае, што аўтэнтыфікацыя скончана, маршруты ўсталяваныя або прыватны DNS адказвае. Праверце стан злучэння, а затым фактычны прыватны рэсурс.
Чытайце стан праз кліент-уладальнік, а не праз супастаўленне перакладзенага сказа. Тэкст для людзей змяняецца з мовай, а на машыне можа быць болей за адзін VPN, таму супастаўленне радка можа паказаць не той профіль або прапусціць пераходны стан.
Калі іншая аўтаматызацыя зноў падключае VPN, узгадніце яе са скаротам «Адключыць». Два ўладальнікі, якія адмяняюць адзін аднаго, ствараюць злучэнне, што нібы ігнаруе націсканне клавішы, тады як сапраўдная праблема — канкуруючая палітыка.
Запішыце UUID, абедзве каманды і праверку гатоўнасці ў нататкі. Наступная замена профілю або абнаўленне працоўнага стала нашмат лягчэй дыягнастуецца, калі ідэнтыфікатар і меркаваны шлях запыту ўжо запісаныя.