nmcli увесь час запытвае пароль VPN: захавайце сакрэт лакальна
Сеанс працоўнага стала адказвае на запыт агентам сакрэтаў. Па SSH ніхто гэтага не робіць, таму змясціце ўліковыя даныя ў файл ключа і перазагрузіце профіль.
Той жа профіль, два сеансы: ён падключаецца з працоўнага стала і завісае па SSH на запыце, на які нішто не можа адказаць. Нішто не зламана і ніводная налада не страчана. NetworkManager запытвае ўліковыя даныя ў агента сакрэтаў, а агент сакрэтаў — гэта кампанент працоўнага стала, якога няма ў сеансе, які вы выкарыстоўваеце.
Выканайце паслядоўнасць ніжэй, і тунель узнімецца без графічнага інтэрфейсу, з той агаворкай, што захаванне сакрэту змяняе, хто можа карыстацца гэтым профілем.
Пацвердзіце дыягназ, перш чым нешта змяняць
Розніца паміж інтэрактыўнай і неінтэрактыўнай актывацыяй — гэта ўвесь дыягназ. Калі nmcli --ask connection up спраўляецца, а звычайная актывацыя завісае, профіль правільны, і крыніца сакрэту адсутнічае. Гэта адно параўнанне ратуе вас ад перапісвання працоўнай канфігурацыі.
nmcli -f NAME,UUID,TYPE connection show
nmcli connection show "Office IPsec" | grep -i flags
Чытайце сцягі, а не здагадвайцеся пра іх. Значэнні, якія азначаюць "спытаць агента", — гэта тое, што вы шукаеце, а дакладныя назвы ключоў адрозніваюцца паміж плагінамі VPN, бо яны жывуць ва ўласным слоўніку даных плагіна. Профіль FortiSSL і профіль IPsec не абавязкова выкарыстоўваюць адныя і тыя ж назвы, таму працуйце з вываду свайго профілю.
Таксама пераканайцеся, што пакет плагіна для гэтага пратаколу ўсталяваны. Адсутны плагін выглядае як невядомы тып злучэння або як памылка актывацыі, якая нічога не кажа пра паролі, і пагоня за сакрэтам у такім стане двойчы марнуе тую ж гадзіну. Адзін запыт да пакетаў таннейшы за цэлы паўдзень рэдагавання файлаў ключоў.
Перанясіце сакрэт у файл ключа
Файл злучэння знаходзіцца ў /etc/NetworkManager/system-connections/. Сакрэты там па змаўчанні не захоўваюцца, і ў гэтым сэнс сцягоў, якія вы толькі што прачыталі. Змяненне сцяга на нуль паведамляе NetworkManager, што значэнне захоўваецца разам з профілем, а не запытваецца ў час актывацыі.
[vpn]
password-flags=0
[vpn-secrets]
password=YOUR-VPN-PASSWORD
Для профілю з двума сакрэтамі ўзор паўтараецца: адзін сцяг на сакрэт у раздзеле [vpn], а значэнні ў [vpn-secrets]. Профіль IPsec звычайна нясе папярэдне агульны ключ разам з уліковымі данымі карыстальніка, і плагін называе іх інакш, чым звычайнае поле пароля, таму капіруйце назвы ключоў з вываду vpn.data, а не з паста блога, дзе выкарыстоўваўся іншы плагін. Адна памылка ў назве ключа стварае профіль, які загружаецца, а затым не праходзіць аўтэнтыфікацыю, што чытаецца як няправільны пароль. Параўнайце свой файл з працоўным профілем таго ж плагіна, перш чым зноў падключацца.
Бярыце ў лапкі значэнні, якія змяшчаюць прабелы, лапкі або знак долара. Значэнне без лапок са знакам $ будзе прачытана літаральна або разгорнута ў залежнасці ад таго, дзе яно разбіраецца, і выніковая памылка аўтэнтыфікацыі выглядае як няправільны пароль.
Затым выпраўце ўласніка і рэжым файла. Гэтыя файлы ключоў чытае прывілеяваная служба, і файл, які могуць чытаць іншыя карыстальнікі, лічыцца ненадзейным, што і з'яўляецца звычайнай прычынай таго, што адрэдагаваны профіль выглядае праігнараваным. Уласнік root, рэжым 600, без выключэнняў.
Перазагрузіце, потым актывуйце
Файл чытаецца пры загрузцы злучэння, таму рэдагавання недастаткова. Перазагрузіце профілі і затым відавочна падніміце злучэнне.
sudo nmcli connection reload
sudo nmcli connection up "Office IPsec"
Калі перазагрузка не падхоплівае змяненне, гэта робіць поўны перазапуск службы, і ёсць паведамленні менавіта пра такое. Аддавайце перавагу перазагрузцы, калі іншыя каналы важныя, бо перазапуск службы перарывае ўсе кіраваныя злучэнні, а на аддаленым хосце гэта можа скончыць ваш сеанс раней, чым патрэбны тунель узнімецца.
Выкарыстоўвайце UUID, калі назвы неадназначныя. Машыны з некалькімі кліенцкімі профілямі назапашваюць амаль дублікаты, і актывацыя няправільнага стварае збой, які выглядае як праблема з уліковымі данымі.
Калі захаваны сакрэт не з'яўляецца праблемай
Профіль FortiSSL можа даць збой нават з правільнымі захаванымі ўліковымі данымі, бо кліент ніколі не давярае сертыфікату шлюза. Гэтая налада не ў галоўным дыялогу; яна за пашыранымі параметрамі VPN, дзе ўводзіцца дайджаст даверанага сертыфіката. Калі журнал згадвае сертыфікат, а не пароль, вы ў гэтай галіне, і ніякае рэдагаванне [vpn-secrets] не дапаможа.
Тут належаць яшчэ дзве праверкі. Пераканайцеся, што профіль не імпартаваны з файла, які ўсё яшчэ паказвае на шлях, нечытэльны для плагіна, і што профіль актыўны, а не састарэлы дублікат. Абедзве даюць збоі актывацыі, якія чытаюцца як памылкі аўтэнтыфікацыі.
Вырашыце, ці дапушчальна захаванне
Захаваныя PSK і пароль могуць чытаць усе, хто працуе ад імя root на гэтай машыне. На машыне, якой вы кіруеце, гэта разумны абмен за службу без графічнага інтэрфейсу. На агульным хосце гэта заслугоўвае размовы, бо профіль цяпер змяшчае ўліковыя даныя, якія раней абараняліся ключніцай працоўнага стала. Спытайце, хто яшчэ можа дасягнуць root на гэтым хосце, перад рашэннем, а не пасля таго, як змена ўжытая.
Калі палітыка забараняе захоўваць сакрэты VPN, не аслабляйце профіль, каб прымусіць працаваць заданне cron. Запускайце злучэнне з сеансу, дзе ёсць агент, або выкарыстоўвайце іншы механізм для аўтаматызацыі.
Нарэшце, запішыце, якія профілі нясуць сакрэты, каб ніхто не скапіраваў адзін на ноўтбук незаўважна. Каментар над раздзелам сакрэтаў з датай і прычынай дастатковы, і ён зберажэ камусьці няёмкую праверку пазней.