- Прошивка OpenWRT для роутеров
- Базовая настройка OpenWRT
- 1. Установить пароль пользователя root
- 2. Ограничить доступ по SSH только для интерфейса LAN
- 3. Настроить PPPoE подключение по WAN
- 4. Настроить WiFi
- 5. Добавить гостевой WiFi
- 6. Настроить динамический DNS NoIP
- 7. Настроить переадресацию портов (port forwarding)
- 8. Сохранить конфигурацию в архивный файл.
- Заключение
- Пошаговая прошивка OpenWRT на роутер TP-LINK TL-WR741ND из Windows
- Шаг 0
- Шаг 1
- Шаг 2
- Шаг 3 или всё пропало
Прошивка 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 на роутер TP-LINK TL-WR741ND из Windows
Роутеры лишаются своих родных прошивок по разным причинам. Желание добавить функционал, припаять USB порт или просто добавить стабильности в работу роутера.
В моём случае роутер на последней стабильной родной прошивке при 1-5 WiFi и 1-2 Ethernet потребителях подвисал 1-2 раза в неделю. Это не очень страшно, но и перезагружать его надоело. Хотелось стабильности. После долгих поисков и чтения отзывов выбор пал на OpenWRT. В статье уже представлена пошаговая инструкция без проб и ошибок, которые мне пришлось пройти.
Шаг 0
Надеюсь взявшись за прошивку роутера вы понимаете, что на одном из шагов вы можете лишиться доступа в интернет. Так, что настоятельно советую полностью прочитать статью, заранее скачать все нужные файлы и уже после этого приступить к прошивке.
Шаг 1
- Переверните роутер и уточните версию железок в нём ориентируясь по наклейке на корпусе.
- Скачайте архив с последней прошивкой.
- Прошейте роутер прошивкой из архива обычным способом (System Tools -> Firmware Upgrade).
Шаг 2
Далее необходимо выбрать версию прошивки OpenWRT.
Следует использовать именно тот файл, который согласуется с версией железа вашей модели. Не пренебрегайте этим правилом! Возможны два варианта файловой системы для загрузки: JFFS2 и SquashFS. Судя по отзывам стоит остановить свой выбор на SquashFS-файлах. Слово factory в названии файла значит, что такой файл вы должны заливать на ваше устройство поверх заводской (родной) прошивки. файл со словом sysupgrade применим только для обновления OpenWRT, т.е. заливается после factory прошивки.
Качаем factory прошивку и шьём обычным способом (System Tools -> Firmware Upgrade).
Шаг 3 или всё пропало
После успешной прошивки мы получаем рабочий роутер с выключеным web-интерфейсом. Поэтому зайти в настройки через браузер уже не получиться. Дальнейшие действия таковы:
Открываем PuTTY, выбираем Telnet протокол, адрес 192.168.1.1 порт 23, жмём «Соединение».
Входим на роутер. Изначально вы под пользователем root без пароля.
Набираем команду:
Открываем WinSCP, выбираем SCP протокол, адрес 192.168.1.1 порт 22, User name: root, Password тот который задали раннее, жмём «Login».
На все смутные вопросы отвечаем да и видим окошко с файлами на вашем компьютере и на роутере. Далее берем вторую часть прошивки (та которая sysupgrade), переименовываем её в code.bin и забрасываем её на роутер в папку /tmp. Закрываем программу.
Открываем PuTTY, выбираем SSH протокол, адрес root@192.168.1.1 порт 22, жмём «Соединение». Набираем пароль который задали раннее для root. Входим в роутер и набираем команду для его прошивки:
Ждём пока роутер прошьётся и перезагрузится. Ориентируемся по лампочкам. Далее повторяем шаг:
Открываем PuTTY, выбираем Telnet протокол, адрес 192.168.1.1 порт 23, жмём «Соединение».
Входим на роутер. Изначально вы под пользователем root без пароля.
Набираем команду:
И два раза пишем новый пароль для пользователя root.
/etc/init.d/uhttpd enable /etc/init.d/uhttpd start
Эти две команды включают и ставят в автозагрузку web-интерфейс роутера.
Выключаем роутер, включаем роутер.
По адресу 192.168.1.1 вам доступен web-интерфейс LuCI. Заходим под пользователем root и паролем, который задали раннее для root.
UPD. После долгой эксплуатации замечен единственный глюк. При изменении MAC адреса на WAN порте, он через 1-2 дня сбрасывается на заводской. В остальном роутер проявляет чудеса стабильности.