Консольный доступ pfSense - консоль, SSH, восстановление
Консольный доступ к pfSense предоставляет административные функции, доступные без веб-интерфейса: от базовой диагностики до полного сброса к заводским настройкам. Консоль является критически важным инструментом при потере доступа к GUI, восстановлении после сбоев и первоначальной настройке сетевых интерфейсов. Параметры последовательной консоли и SSH настраиваются в разделе расширенных настроек .
Способы доступа к консоли
pfSense предоставляет три способа доступа к консольному меню:
| Способ | Применение | Требования |
|---|---|---|
| Клавиатура и монитор | Физический сервер с видеовыходом | VGA/HDMI-подключение, USB/PS2-клавиатура |
| Последовательная консоль | Безголовые системы, встраиваемые устройства | Кабель DB-9/RJ-45, терминальная программа |
| SSH | Удалённое администрирование | Включённый SSH-демон, сетевая связность |
Подключение через клавиатуру и монитор
Стандартный способ для серверов и рабочих станций с видеовыходом. После загрузки pfSense отображает консольное меню непосредственно на подключённом мониторе. Дополнительная настройка не требуется.
Подключение через последовательную консоль
Для безголовых систем и встраиваемых устройств (Netgate 1100, 2100, 4100 и аналогичные) последовательная консоль является основным интерфейсом управления.
Параметры подключения
| Параметр | Значение |
|---|---|
| Скорость (Baud Rate) | 115200 (по умолчанию) |
| Биты данных | 8 |
| Стоп-биты | 1 |
| Чётность | Нет (None) |
| Управление потоком | Нет (None) |
Терминальные программы
| Платформа | Программа | Пример команды |
|---|---|---|
| Linux | minicom, screen, picocom | screen /dev/ttyUSB0 115200 |
| macOS | screen, CoolTerm | screen /dev/tty.usbserial 115200 |
| Windows | PuTTY, Tera Term | Выбрать Serial, указать COM-порт и скорость |
| FreeBSD | cu, tip | cu -l /dev/cuaU0 -s 115200 |
При использовании USB-адаптера последовательного порта убедитесь, что драйвер установлен и устройство определяется операционной системой.
Настройка в pfSense
Последовательная консоль включается в System > Advanced > Admin Access:
- Установите флажок Serial Terminal
- Выберите скорость в поле Serial Speed (115200 для большинства устройств)
- При необходимости измените Primary Console на Serial
- Сохраните настройки и перезагрузите систему
Warning:
На устройствах Netgate с последовательной консолью в качестве единственного интерфейса не изменяйте Primary Console на Video - это приведёт к потере доступа к консольному меню.
Подключение через SSH
SSH обеспечивает удалённый доступ к консольному меню и командной оболочке через защищённое соединение.
Включение SSH
SSH включается двумя способами:
Через веб-интерфейс:
- Перейдите в System > Advanced > Admin Access
- Установите флажок Enable Secure Shell
- Выберите метод аутентификации в SSHd Key Only
- При необходимости измените порт в SSH Port
- Сохраните настройки
Через консольное меню:
- Подключитесь к консоли (клавиатура или последовательный порт)
- Выберите пункт 14) Enable/Disable Secure Shell (sshd)
Аутентификация по ключам
Для production-сред рекомендуется использовать аутентификацию только по ключам:
- Сгенерируйте ключевую пару на клиентской машине:
ssh-keygen -t ed25519 -C "admin@firewall"- В веб-интерфейсе pfSense перейдите в System > User Manager
- Откройте настройки пользователя
- Вставьте содержимое файла
id_ed25519.pubв поле Authorized SSH Keys - В System > Advanced > Admin Access установите SSHd Key Only в значение Public Key Only
После этого аутентификация по паролю будет отключена. Убедитесь, что ключ работает, прежде чем отключать парольный доступ.
Подключение по SSH
# Стандартное подключение
ssh admin@192.168.1.1
# С указанием нестандартного порта
ssh -p 2222 admin@192.168.1.1
# С указанием ключа
ssh -i ~/.ssh/id_ed25519 admin@192.168.1.1После подключения отображается консольное меню, идентичное локальной консоли, за исключением дополнительного пункта 0) Logout.
Консольное меню
Консольное меню предоставляет набор административных функций, доступных без веб-интерфейса. После загрузки системы меню отображается автоматически.
Полный список пунктов меню
0) Logout (только SSH)
Завершает SSH-сессию. Пункт отображается только при подключении через SSH и отсутствует при локальном доступе.
1) Assign Interfaces
Перезапускает мастер назначения интерфейсов. Позволяет:
- Создавать VLAN-интерфейсы
- Назначать физические и VLAN-интерфейсы ролям WAN, LAN, OPT
- Переназначать интерфейсы при замене сетевых адаптеров
Используется при первоначальной настройке и при изменении физической конфигурации сети. Подробнее о настройке интерфейсов - в разделе интерфейсы pfSense .
2) Set interface(s) IP address
Настраивает IP-адреса на интерфейсах WAN, LAN и OPT. Функции:
- Назначение статического IP-адреса, маски подсети и шлюза
- Включение/отключение DHCP-клиента на интерфейсе
- Переключение GUI с HTTPS на HTTP (при проблемах с сертификатом)
- Восстановление правила Anti-Lockout на LAN-интерфейсе
- Настройка диапазона DHCP-сервера на LAN
Этот пункт часто используется для восстановления доступа к веб-интерфейсу, когда IP-адрес LAN был изменён некорректно.
3) Reset admin account and password
Сбрасывает учётную запись и пароль администратора. Возможности:
- Сброс пароля пользователя admin к значению по умолчанию
- Восстановление удалённой учётной записи admin
- Повторная активация заблокированной учётной записи
- Возврат аутентификации к локальной базе данных (если был настроен LDAP/RADIUS и сервер недоступен)
Начиная с версии 24.03, при первом подключении к консоли после установки или сброса к заводским настройкам система принудительно требует установить новый пароль admin.
4) Reset to factory defaults
Возвращает конфигурацию к заводским настройкам и удаляет установленные пакеты. Эта операция необратима - перед выполнением убедитесь, что резервная копия конфигурации сохранена.
5) Reboot system
Выполняет корректное завершение работы и перезагрузку операционной системы. Предпочтительный способ перезагрузки, обеспечивающий корректное сохранение состояния.
6) Halt system
Корректно останавливает систему. В зависимости от оборудования выполняет полное выключение питания или останов процессора. Всегда используйте этот пункт перед физическим отключением питания - прямое обесточивание может привести к повреждению файловой системы.
7) Ping host
Отправляет три ICMP-запроса на указанный хост для проверки связности. Для IPv4-адресов и доменных имён используется ping, для IPv6 - ping6. Базовый инструмент диагностики сетевых проблем.
8) Shell
Открывает командную оболочку (tcsh или sh). Предоставляет полный доступ к операционной системе FreeBSD, включая:
- Просмотр и редактирование конфигурационных файлов
- Запуск диагностических утилит (
ifconfig,netstat,tcpdump) - Управление сервисами
- Выполнение скриптов
Warning:
Некорректные действия в оболочке могут привести к неработоспособности системы. Используйте shell только при понимании выполняемых команд. Для возврата в консольное меню введите
exit.
9) pfTop
Отображает в реальном времени таблицу состояний межсетевого экрана с информацией об активных соединениях и объёме переданных данных. Позволяет:
- Определить наиболее активные соединения
- Диагностировать проблемы с пропускной способностью
- Проверить работу NAT и правил межсетевого экрана
10) Filter Logs
Отображает записи журнала межсетевого экрана в реальном времени в необработанном формате. Содержит больше деталей, чем журнал в веб-интерфейсе, и полезен для оперативной диагностики заблокированного трафика. Для расширенного мониторинга рассмотрите интеграцию с системами SIEM .
11) Restart GUI
Перезапускает процесс веб-сервера nginx. Используйте при зависании веб-интерфейса, когда страницы не загружаются или возвращают ошибки.
12) PHP shell + pfSense tools
Запускает интерпретатор PHP в контексте работающей системы. Предназначен для разработчиков и опытных администраторов, позволяя:
- Выполнять PHP-код с доступом к внутренним функциям pfSense
- Читать и модифицировать конфигурацию программно
- Диагностировать проблемы на уровне приложения
13) Upgrade from console
Запускает скрипт обновления pfSense до последней доступной версии. Аналогичен обновлению через GUI, но не требует веб-интерфейса. Подробнее об обновлении - в разделе обновление pfSense .
14) Enable/Disable Secure Shell (sshd)
Переключает состояние SSH-демона. Быстрый способ включить или отключить SSH без доступа к веб-интерфейсу.
15) Restore recent configuration
Отображает список резервных копий конфигурации из истории с временными метками и описаниями изменений. Позволяет восстановить предыдущую конфигурацию при ошибочных изменениях. Каждое сохранение в веб-интерфейсе автоматически создаёт запись в истории.
16) Restart PHP-FPM
Перезапускает PHP-демон для nginx. Используйте, если веб-сервер запущен, но PHP-скрипты не выполняются (пустые страницы, ошибки 502/504).
Сценарии восстановления
Потеря доступа к веб-интерфейсу
Если доступ к GUI утрачен, выполните следующие действия через консоль:
- Подключитесь к консоли (клавиатура, последовательный порт или SSH, если SSH работает)
- Пункт 2 - проверьте и при необходимости исправьте IP-адрес LAN-интерфейса
- При запросе Do you want to revert to HTTP as the webConfigurator protocol? ответьте
y, если проблема связана с HTTPS/сертификатом - При запросе Do you want to enable the DHCP server on LAN? проверьте настройки DHCP
- При запросе Anti-Lockout Rule ответьте
yдля восстановления правила доступа
Сброс пароля администратора
- Подключитесь к физической консоли
- Выберите пункт 3) Reset admin account and password
- Следуйте инструкциям для установки нового пароля
- Войдите в веб-интерфейс с новым паролем
Восстановление после неудачного изменения конфигурации
- Подключитесь к консоли
- Выберите пункт 15) Restore recent configuration
- Из списка резервных копий выберите конфигурацию, предшествующую ошибочному изменению
- Подтвердите восстановление
- Система перезагрузится с восстановленной конфигурацией
Полный сброс к заводским настройкам
В случае невозможности восстановления конфигурации:
- Подключитесь к консоли
- Убедитесь, что резервная копия конфигурации сохранена на внешнем носителе
- Выберите пункт 4) Reset to factory defaults
- Подтвердите операцию
- После перезагрузки выполните настройку с нуля или импортируйте резервную копию через веб-интерфейс
Безопасность консольного доступа
Физическая безопасность
Физический доступ к консоли предоставляет полный контроль над системой, включая сброс пароля и доступ к оболочке. Меры защиты:
- Размещайте межсетевой экран в запираемом серверном шкафу
- Ограничивайте доступ в серверное помещение
- Используйте Console menu protection (System > Advanced > Admin Access) для парольной защиты консоли
- Для устройств с последовательной консолью обеспечьте защиту терминального сервера
Безопасность SSH
- Не открывайте SSH-порт на WAN-интерфейсе без крайней необходимости
- Используйте правила межсетевого экрана для ограничения источников SSH-подключений
- Включите аутентификацию только по ключам
- Регулярно просматривайте логи SSH-подключений
- Рассмотрите использование fail2ban через пакет pfBlockerNG для защиты от перебора
Журналирование
Все действия через консольное меню, SSH-подключения и события аутентификации записываются в системные логи. Для централизованного сбора и анализа логов настройте пересылку syslog на внешний сервер или интеграцию с SIEM-системой.