- Прошивка OpenWRT для роутеров
- Базовая настройка OpenWRT
- 1. Установить пароль пользователя root
- 2. Ограничить доступ по SSH только для интерфейса LAN
- 3. Настроить PPPoE подключение по WAN
- 4. Настроить WiFi
- 5. Добавить гостевой WiFi
- 6. Настроить динамический DNS NoIP
- 7. Настроить переадресацию портов (port forwarding)
- 8. Сохранить конфигурацию в архивный файл.
- Заключение
- Настройка маршрутизаторов на основе OpenWRT
- Возможные проблемы
Прошивка OpenWRT для роутеров
Данная статья может быть полезна продвинутым пользователям, которые хотят улучшить работу своего домашнего роутера, а также системным администраторам предприятий, перед которым стоит задача повысить надежность и безопасность удаленной работы сотрудников.
Как вы скорее всего знаете, ваш роутер – это маленький компьютер и него есть программное обеспечение, так называемая “прошивка” или “firmware”. Прошивку разрабатывает производитель роутера, однако существуют также альтернативные решения – проекты с открытым исходным кодом: OpenWRT, DD-WRT, Tomato.
Что нам даёт использование OpenWRT?
- Обновления (безопасность и новые фишки) выпускаются в разы чаще и поддержка сохраняется в разы дольше, чем у большинства производителей. Особенно актуально это стало в условиях карантина. Уязвимая “прошивка” роутера – одна из наиболее частых причин инцидентов при удаленной работе.
- “Родные” прошивки бывают нестабильными, особенно у дешевых роутеров. Так многие модели TP-Link зависали после нескольких дней беспрерывной работы.
- Вы привыкаете к одному интерфейсу пользователя и при последующей смене/апгрейде роутера, даже от другого производителя, чувствуете себя “как дома”.
- Вам не обязательно покупать дорогой роутер для реализации продвинутых “фишек”, таких как IPv6, родительский контроль, блокировка рекламы, VPN, гостевой WiFi, DNS шифрование, динамический DNS (DDNS) и т. д.
- Есть активное сообщество, которое поможет оперативнее, чем даже поддержка крупного производителя, да и многое уже описано.
- Преимущества открытого решения на базе Linux: возможность подключаться через SSH, автоматизировать настройку и управлять роутером с помощью скриптов, настройки хранятся в текстовых файлах (автоматизация, контроль версий), можно использовать роутер для других задач (умный дом, SFTP/Web сервер, закачка торрентов и т.п.).
Подробнее эти и другие причины описаны на сайте проекта.
Базовая настройка OpenWRT
Данная статья поможет вам настроить базовые функции OpenWRT, благодаря чему вы сможете быстро и безболезненно перейти на это решение. Вот перечень этих функций:
- Установить пароль пользователя root.
- Ограничить доступ по SSH только для интерфейса LAN.
- Настроить PPPoE подключение по WAN.
- Настроить WiFi.
- Добавить гостевой WiFi (без доступа в локальную сеть).
- Настроить динамический DNS NoIP.
- Настроить переадресацию портов (port forwarding).
- Сохранить конфигурацию в архивный файл.
Пункты 6 и 7 нужны, например, для того, чтобы подключаться из Интернета к домашнему компьютеру по SSH или SFTP (например, для синхронизация файлов с ноутбуком), а также для прямого подключения по Anydesk, которое работает быстрее, чем обычное.
Процесс “перепрошивки” на OpenWRT зависит от модели вашего роутера. Следует найти его в списке поддерживаемых устройств и следовать приведенным там рекомендациям.
Настройки можно делать с помощью SSH-подключения и скриптов, однако мы рассмотрим веб-интерфейс (который называется LuCI) как более наглядный и устойчивый к изменениям вариант.
1. Установить пароль пользователя root
2. Ограничить доступ по SSH только для интерфейса LAN
После этого шага имеет смысл сделать Logout и залогиниться снова, чтобы убрать предупреждение в верхней части экрана.
3. Настроить PPPoE подключение по WAN
Нажать кнопку “Edit” в строке “WAN”.
Protocol = PPPoE + нажмите кнопку "Switch protocol" PAP/CHAP username = ваш_логин_у_провайдера PAP/CHAP password = ваш_пароль_у_провайдера
4. Настроить WiFi
4.1 Нажать на кнопку “Edit” под “radio0 802.11nac”.
Channel = Auto ESSID = имя_вашего_wifi_5GHz
Перейти на вкладку Wireless Security.
Encryption = WPA2-PSK/WPA3-SAE Mixed Mode Key = пароль_вашего_wifi_5GHz
4.2 Нажать на кнопку “Edit” под “radio1 802.11bgn”.
Channel = Auto ESSID = имя_вашего_wifi_2.4GHz
Перейти на вкладку Wireless Security.
Encryption = WPA2-PSK/WPA3-SAE Mixed Mode Key = пароль_вашего_wifi_2.4GHz
Нажать кнопки “Enable” (слева от “Edit”) на обоих подключениях.
5. Добавить гостевой WiFi
Взято отсюда, плюс ужато и обновлено под новый интерфейс.
Делаем для 2.4 ГГц, но аналогично можно сделать и для 5ГГц.
5.1.1 Нажать кнопку “Add” в “radio1 802.11bgn”.
Channel = Auto ESSID = имя_вашего_гостевого_wifi network = выбрать "-- custom --" и ввести "guest"
5.1.2 Перейти на вкладку Wireless Security.
Encryption = WPA2-PSK/WPA3-SAE Mixed Mode Key = пароль_вашего_гостевого_wifi
5.2.1 Нажать на кнопку “Edit” в интерфейсе “GUEST”.
Protocol=Static address + нажать кнопку “Switch protocol” IPv4 address = 192.168.3.1 IPv4 netmask = 255.255.255.0
5.2.2 Перейти на вкладку “Firewall settings”.
Create / Assign firewall-zone = выбрать "-- custom --" и ввести "guest"
5.2.3 Перейти на вкладку “DHCP server”.
Нажать на кнопку "Setup DHCP server" и далее Save
5.3.1 Нажать на кнопку “Edit” в зоне “guest”.
Input = reject Allow forward to destination zones = WAN
Нажать на кнопку “Add” внизу.
Name = Guest DNS Protocol = TCP+UDP Source zone = guest Destination zone = Device(input) Destination port = 53 Save
Нажать на кнопку “Add” внизу.
Name = Guest DHCP Protocol = UDP Source zone = guest Destination zone = Device(input) Destination port = 67 Save
6. Настроить динамический DNS NoIP
Нажать кнопку “Update lists…”
Набрать “ddns” в поле “Filter”.
Установить пакеты “ddns-scripts”, “ddns-scripts-noip”, “luci-app-ddns”.
Сделать Logout и потом залогиниться снова.
6.2.1 Нажать кнопку “Edit” в строке “myddns_ipv4”.
Lookup Hostname = your.dyndns.domain.com DDNS Service provider = no-ip.com + нажать кнопку "Switch service" Domain = your.dyndns.domain.com Username = your_username Password = your_password
6.2.2 Нажать кнопку “Reload” в строке “myddns_ipv4”.
6.2.3 Нажать кнопку “Delete” в строке “myddns_ipv6” — если вам достаточно IPv4.
7. Настроить переадресацию портов (port forwarding)
Name = SSH Protocol = TCP+UDP External port = 22 Internal IP address = 192.168.1.2 Save
Name = Anydesk Protocol = TCP+UDP External port = 7070 Internal IP address = 192.168.1.2 Save
8. Сохранить конфигурацию в архивный файл.
Нажать на кнопку “Generate archive”.
Сохранить скачанный файл в надежном месте.
В этом же пункте меню можно загружать обновления прошивки – кнопка “Flash image…”.
Заключение
Таким образом, мы рассмотрели недорогие в применении меры повышения безопасности и стабильности работы домашних роутеров с помощью прошивки OpenWRT. В то же время, следует заметить, что ни одна разовая мера безопасности, включая внедрение дорогого оборудования и программного обеспечения, не даст гарантий отсутствия инцидентов безопасности. Если вам нужен действительно высокий уровень защищённости, то необходим комплексный системный подход, начиная с аудита вашей ИТ-инфраструктуры, в том числе, домашнего окружения.
Настройка маршрутизаторов на основе OpenWRT
- Для начала работы скачайте c сайта operwrt.org файл-прошивку openwrt-15.05-xxxxx-generic-xxxxxx-squashfs-factory.bin соответствующую вашей модели роутера и его аппаратной версии. Все прошивки 15.05
- Загрузите прошивку OpenWRT в маршрутизатор. О том, как это сделать для роутеров TP-Link, написано здесь. Инструкцию по замене прошивки для иных производителей маршрутизаторов можно найти на сайте разработчика OpenWRT или на их форуме.
- После обновления прошивки введите в браузер адрес 192.168.1.1. Вы увидите страницу входа. Просто нажмите кнопку Login и войдите в роутер.
- Далее вы попадете на страницу состояния роутера. Нажмите ссылку Go to password configuration …
- Введите новый пароль и его подтверждение в поля Password и Confirmation соответственно. Обязательно запишите пароль.
- Перейдем к настройке роутера. В меню выберите Network — Interfaces. В группе портов LAN нажмите кнопку Edit. В поле IPv4 address пропишите 192.168.99.1, это будет новый адрес вашего маршрутизатора. Меняем его для того, чтобы в будущем исключить возможные сетевые конфликты с другими роутерами в вашей сети. Которые с большой вероятностью у вас есть.
- Внимание, после применения параметров адрес роутера сменится на 192.168.99.1
- Перейдем к настройке WiFi точки доступа. Откройте страницу Network — WiFi. Нажмите кнопку Enable, тем самым вы активируете Wi-Fi, по умолчанию он отключен. После чего нажмите кнопку Edit.
- В поле ESSID введите название своего Wi-Fi хотспота, например, название вашего заведения. В поле mode оставьте значение Access Point.
- В названии хотспота возможно использовать только английские буквы, цифры и символы. Буквы кириллицы использовать нельзя.
- Перейдите на закладку Wireless Security, убедитесь, что в поле Encryption выбрано No Encryption.
- Теперь непосредственно перейдем к настройке самого хотспота. Для дальнейшей работы нам понадобится SSH-клиент Putty. Распакуйте и запустите Putty. Введите в поле Host Name адрес маршрутизатора 192.168.99.1, в типе соединения Connection type выберите SSH. Нажмите кнопку Open.
- В открывшемся окне введите имя root и пароль, который вы задали роутеру. Во время ввода пароля вы не увидите символов, которые набираете, это нормально.
- После входа в маршрутизатор по протоколу SSH вы увидите подобное приглашение.
- Теперь из вашего личного кабинета со страницы настройки точки доступа скопируйте в окно терминала скрипт автоматической настройки для OpenWRT. После чего нажмите Enter. Убедитесь, что ваш маршрутизатор подключен портом WAN к интернету, иначе скрипт автоматической настройки не загрузится и не сработает.
- На этом настройку Wi-Fi хотспота можно считать законченной.
Возможные проблемы
В базовые модели TP-Link после загрузки последней прошивки 15.05.1 не остается flash-памяти для загрузки пакета с хотспот-контроллером, это видно по ошибкам в консоли на последнем шаге. Для исправления ситуации используйте предыдущую версию OpenWRT 15.05.