Серые переключатели VPN в меню рабочего стола сообщают, что что-то не так, и ничего о том, что именно. Это наблюдение, а не диагноз. Три разные границы могут дать один и тот же мёртвый элемент управления: NetworkManager может не владеть устройством, сеансу может не хватать права изменить его, или плагин редактора VPN может быть вообще не установлен. Исправление не той границы — это путь, на котором пятиминутная починка превращается в целый день переустановки пакетов.

Три команды только для чтения разделяют случаи до того, как что-либо будет изменено.

Задайте три вопроса по порядку

nmcli device status
nmcli general permissions
nmcli connection show

Это команды проверки для системы, которая действительно использует NetworkManager, и их безопасно запускать обычным пользователем. Держите приватные данные подключения вне публичных журналов, если вы где-нибудь вставляете вывод.

Состояние устройства отвечает, управляется ли интерфейс и пригоден ли он к использованию. Представление прав отвечает, что разрешено вызывающему сеансу. Список подключений показывает, какие профили существуют; он не доказывает, что установлен подходящий редактор VPN или плагин импорта.

Владение и право — разные неисправности

Устройство, помеченное как неуправляемое, находится вне контроля NetworkManager, и никакое количество прав не даст работающего переключателя. Плагин ifupdown — одна из частых причин: его параметр managed определяет, как обрабатываются записи в файле interfaces, а оставшаяся секция может удерживать интерфейс под старым инструментом. Наличие файла не является указанием удалить его содержимое, а удаление записей, которые вы не писали, — хороший способ потерять связь.

Право — отдельная ось. NetworkManager авторизует вызывающих не-root через PolicyKit, и сообщённый ответ может быть yes, auth или no. Сеанс без агента аутентификации сообщает auth и затем молча терпит неудачу на рабочем столе, что выглядит как сломанный элемент управления, а не как отсутствующий агент.

Не исправляйте ни то, ни другое, запуская рабочий стол от root

Запуск всего сеанса от root, чтобы заработал один переключатель, меняет модель безопасности каждого приложения на машине. Это также скрывает основную неверную конфигурацию вместо того, чтобы её документировать. Если действие требует административной авторизации, так и задумано, и исправление относится к политике или к тому, как запускается агент.

Точно так же не запускайте вторую копию NetworkManager или конкурирующий демон. Два менеджера, спорящих об одном устройстве создают состояние, о котором трудно рассуждать и которое ещё труднее поддерживать. Если второй демон кажется единственным способом вернуть управление, исправлять нужно конфигурацию первого менеджера. Остановите лишний демон перед любыми другими изменениями, иначе следующий тест измерит их оба сразу.

Вопрос плагина — ещё и о редакторе

Создание или импорт VPN-подключения требует плагина, предоставляющего этот тип подключения, а на рабочем столе обычно нужна и интеграция с редактором. Пакет на стороне службы может присутствовать, пока формы редактора нет, поэтому пункт меню может существовать и всё равно не работать. Проверяйте обе половины по упаковке дистрибутива, а не предполагайте, что один пакет ставит всё.

Отдельный клиентский бинарник тоже не доказательство. Установка бинарника OpenVPN сама по себе не даёт редактору рабочего стола формы для создания профиля OpenVPN.

Исправьте ответственную границу, затем проверьте

Когда вы знаете, какая граница неверна, меняйте только её. Пометка устройства как управляемого, выдача права или установка пакета редактора — три разные операции с тремя разными профилями риска, и их смешение делает результат невозможным для атрибуции. Если владение должно перейти, делайте это при доступном консольном или внешнем доступе, потому что ошибка там может убрать сеть, которой вы пользуетесь для починки.

Затем проверьте на реальной учётной записи и реальном профиле: подтвердите маршрут, представление DNS и место хранения секрета. Включённые кнопки — это состояние интерфейса, а не доказательство, что туннель работает. Запишите в тикет состояние устройства, ответ о правах и версию плагина, чтобы следующий человек знал, какая граница действительно изменилась.

Похожие статьи