Вы собираетесь отредактировать туннель, по которому проходит ваш собственный сеанс, поэтому работа, которая вас спасет, произойдет до изменения, а не во время шифрования после него. Сеть безопасности не находится на странице VPN: это экран восстановления, консоль или второй путь, который не проходит через редактируемое устройство. Я планирую все три на одном и том же интерфейсе маршрутизатора, который собираюсь редактировать, и использую путь один раз, пока все еще работает. Это пошаговое руководство, которому я следую, по порядку.

Выполните процедуру восстановления до того, как она вам понадобится

Откройте страницу, которая отменит ваши изменения. В pfSense это «Диагностика» > «Резервное копирование и восстановление»; в OpenWrt это Система > Резервное копирование/Прошивка; в OPNsense это Система > Конфигурация > Резервные копии, где также сохраняются предыдущие версии, к которым вы можете вернуться без файла. Вы пока ничего не восстанавливаете. Вы проверяете, открывается ли эта страница по тому пути, который у вас будет при изменении, требует ли она перезагрузки после этого и не отклоняет ли она архив, записанный другой версией прошивки. Netgate документирует собственный поток экспорта и восстановления в docs.netgate.com.

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

Если платформа загружает архивы только из одной и той же версии, обратите внимание: обновление прошивки и редактирование VPN в одном окне оставляют у вас файл, который маршрутизатор не примет.

Найди способ миновать туннель

Второй сеанс SSH с того же ноутбука на тот же публичный адрес не является вторым путем; оба умирают вместе. Независимый путь — один из следующих: последовательная консоль или консоль KVM, гипервизор или облачная консоль, VLAN управления, доступная с хоста, который не находится за туннелем, второй модем WAN или LTE с собственным административным правилом или человек на месте.

Проверьте выбранный путь, пока маршрутизатор исправен. Войдите в систему, откройте страницу VPN и остановитесь перед сохранением. Если правило блокировки позволяет ему попасть только на панель управления, у вас еще есть время это исправить, и исправление должно находиться над правилом запрета в порядке правил.

Большинство маршрутизаторов привязывают службу администрирования к интерфейсу или семейству адресов, поэтому внеполосный маршрут должен прибыть туда, где прослушивает эта служба. Расширение привязки окна работает, но само по себе является изменением пути, от которого вы зависите.

Экспортируйте файл и напишите триггер

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

Рассматривайте этот файл как учетные данные. Он хранит закрытые ключи, общие секреты, материалы сертификатов и хэши паролей, поэтому зашифруйте или храните их с той же осторожностью, что и вход в маршрутизатор.

Затем напишите одно предложение: если я не могу открыть новый сеанс управления из [[PATH]] в течение N минут после изменения, я восстанавливаю [[FILE]] и перезагружаюсь. Предложение ограничивает область действия до одной переменной. Изменения маршрута, DNS и брандмауэра, совершенные вместе, быстро сохраняются и медленно разделяются пополам, когда вы получаете еще одну попытку.

Используйте таймер фиксации, если он есть на платформе

Некоторые платформы отменят изменение за вас, если вы не подтвердите его. Безопасный режим RouterOS, включаемый с помощью Ctrl+X в терминале, отменяет изменения, сделанные в этом сеансе, когда сеанс завершается. Junos откатывает подтвержденный неподтвержденный коммит. Пары Cisco IOS перезагружаются с отменой перезагрузки. Корпоративные межсетевые экраны обычно инициируют ожидающие изменения с помощью таймера автоматического возврата. OpenWrt и большинство потребительских прошивок не имеют ничего эквивалентного, поэтому таймер должен быть внешним: запланированное восстановление, задание cron, которое заменяет файл обратно и перезапускает службу, или перезагрузка в предыдущую конфигурацию.

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

Таймер не заменяет экспортированный файл. Это терпит неудачу в том случае, который здесь наиболее важен: сеанс сохраняется, плоскость управления — нет, и ничто никогда не приводит к возврату.

Проверьте совершенно новое соединение, а не открытое

Установленный сеанс часто продолжает работать, несмотря на изменения, которые блокируют каждое новое рукопожатие, поскольку его состояние уже существует, а политика оценивается при создании соединения. После изменения создайте новые подключения с удаленной стороны: новый сеанс SSH, новое подтверждение VPN от клиента, обычную загрузку страницы на LAN-адрес маршрутизатора.

# run these from the remote machine, in a new shell
ssh -o ConnectTimeout=8 admin@"$ROUTER_WAN"
nc -vz "$ROUTER_WAN" 443
dig +short example.internal "@$ROUTER_LAN"

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

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

Закройте двери, которые вы открыли для окна

Удалите временное правило администратора с любым источником, одноразовую учетную запись, расширенную привязку, разрешающее правило DNS и журнал отладки. Это удаление само по себе является изменением пути, от которого вы зависите, поэтому после него повторно запустите тест нового соединения с удаленной стороны.

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

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

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

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