...
- Для корректной работы необходим веб сервер который умеет отвечать на HEAD запросы и корректно передает заголовок Last-Modified
- Скрипт установит новый архив, если веб-сервер передаст заголовок Last-Modified с измененным значением. Иными словами - проверяется совпадение дата и времени модификации архива на сервере
Чтобы скрипт проверял обновление периодически, установите скрипт в систему (например в директорию /etc) и включите периодический запуск скрипта через CRON, Блок кода в скрипте с проверкой обновлений раз в 5 минут:
Ограничение UI для учетных записей через
...
web-acl
...
Модуль позволяет установить правила ограничения доступа к определенным элементам web-интерфейса для отдельных пользователей.
Доступны 2 варианта внесения ограничений:Вариант редактирования
| Section |
|---|
|
| Column |
|---|
Установка файломРедактирование напрямую: |
| Column |
|---|
|
| Code Block |
|---|
| language | bash |
|---|
| title | Пример использования |
|---|
| collapse | true |
|---|
| # установкавсе файлаполя luci-aclв изнастройках архиваwan EasyCustomтолько в каталог /etc/config/luci-acl
INSTALL_FILE "luci-acl" "/etc/config/luci-acl" |
|
|
| Section |
|---|
|
| Column |
|---|
Редактирование напрямую: |
| Column |
|---|
|
| Code Block |
|---|
| language | bash |
|---|
| title | Пример использования |
|---|
| collapse | true |
|---|
|
# запрет на чтение и редактирование страницы cwmp для пользовательской учетной записи
CONFIG_SET luci-acl.@user[0].deny='admin/status/log' 'admin/services/easycwmp'
# запрет на редактирование страницы vlan для пользовательской учетной записи
CONFIG_SET luci-acl.@user[0].readonly='admin/network/vlan/advanced' |
EasyWRT имеет два встроенных пользователя:
- Admin - административная учетная запись, имеет цифровой идентификатор - 0
- User - пользовательская учетная запись, имеет цифровой идентификатор - 2
Политики применяются к пользователям на основе цифрового идентификатора. Конфигурация /etc/config/luci-acl поддерживает две основные политики:
- readonly - запрет только редактирования
- deny - запрет и чтения и редактирования указанной страницы
Внешнее оформление UI
| Warning |
|---|
Для отображения новых стилей, после установки архива ezcustom, нужно обновить вкладку со сбросом кэша: Ctrl + F5 |
Для большей совместимости с новыми версиями ПО мы не рекомендуем глубокую кастомизацию, по этому рассмотрим пример кастомизации UI на основе изменения стилей интерфейса через style.css
...
Для просмотра и редактирования стилей WEB-UI EasyWRT:
- Перейдите на страницу управления роутером в браузере
- Авторизуйтесь на роутере
- Перейдите в инструменты разработчика на странице (возможность и способ перехода может различаться в зависимости от браузера)
- Измените стили нужных элементов
- Перейдите в "источники" из инструментов разработчика, скачайте измененные стили.
| Column |
|---|
Image Removed |
| Column |
|---|
Image Removed
|
Для загрузки новых стилей, укажите команду в файле custom с названием файла .css:
| Code Block |
|---|
|
INSTALL_STYLES "style.css" |
Для изменения логотипа новый файл логотипа должен быть векторным изображением с расширением .svg
После выбора логотипа и проверки его расширения, укажите его загрузку командой в файле custom:
| Code Block |
|---|
|
INSTALL_LOGO "logo.svg" |
...
| Column |
|---|
Image Removed
|
| Column |
|---|
Image Removed
|
| Column |
|---|
Image Removed
|
Пример кастомизации
| Section |
|---|
|
для чтения
CONFIG_ADD web-acl rule
CONFIG_ADD_LIST web-acl.@rule[-1].uid='2'
CONFIG_ADD_LIST web-acl.@rule[-1].model='network.wan'
CONFIG_ADD_LIST web-acl.@rule[-1].readonly='*'
# все поля в настройках vlan только для чтения
CONFIG_ADD web-acl rule
CONFIG_ADD_LIST web-acl.@rule[-1].uid='2'
CONFIG_ADD_LIST web-acl.@rule[-1].model='network.vlan'
CONFIG_ADD_LIST web-acl.@rule[-1].readonly='*'
# скрыть ссылку на CWMP в сайдбаре
CONFIG_ADD web-acl rule
CONFIG_ADD_LIST web-acl.@rule[-1].uid='2'
CONFIG_ADD_LIST web-acl.@rule[-1].path='*'
CONFIG_ADD_LIST web-acl.@rule[-1].disable='#service-cwmp'
# скрыть страницу CWMP
CONFIG_ADD web-acl rule
CONFIG_ADD_LIST web-acl.@rule[-1].uid='2'
CONFIG_ADD_LIST web-acl.@rule[-1].path='/admin/web/service/cwmp'
CONFIG_ADD_LIST web-acl.@rule[-1].disable='*/*' |
|
|
EasyWRT имеет два встроенных пользователя:
- Admin - административная учетная запись, имеет цифровой идентификатор - 0
- User - пользовательская учетная запись, имеет цифровой идентификатор - 2
Политики применяются к пользователям на основе цифрового идентификатора. Конфигурация /etc/config/web-acl поддерживает несколько основных политик:
- readonly - запрет только редактирования
- disable - запрет и чтения и редактирования указанной страницы
Если в поле mode/readonly/disable указать *, то правило будет действовать для всех элементов модели/страницы
Дополнительные политики:
- model - список моделей для которых будут действовать правила (Если в поле model указать *, то правило будет действовать для всех моделей)
- path - список url для которых будут действовать правила (Если в поле path указать *, то правило будет действовать для всех страниц)
Внешнее оформление UI
...
| Warning |
|---|
Для отображения новых стилей, после установки архива ezcustom, нужно обновить вкладку со сбросом кэша: Ctrl + F5 |
Для большей совместимости с новыми версиями ПО мы не рекомендуем глубокую кастомизацию, по этому рассмотрим пример кастомизации UI на основе изменения стилей интерфейса через style.css
| Section |
|---|
|
Для просмотра и редактирования стилей WEB-UI EasyWRT: - Перейдите на страницу управления роутером в браузере
- Авторизуйтесь на роутере
- Перейдите в инструменты разработчика на странице (возможность и способ перехода может различаться в зависимости от браузера)
- Измените стили нужных элементов
- Перейдите в "источники" из инструментов разработчика, скачайте измененные стили.
| Column |
|---|
Image Added |
| Column |
|---|
Image Added
|
|
Для загрузки новых стилей, укажите команду в файле custom с названием файла .css:
| Code Block |
|---|
|
INSTALL_STYLES "style.css" |
Для изменения логотипа новый файл логотипа должен быть векторным изображением с расширением .svg
После выбора логотипа и проверки его расширения, укажите его загрузку командой в файле custom:
| Code Block |
|---|
|
INSTALL_LOGO "logo.svg" |
| Section |
|---|
|
| Column |
|---|
Image Added
|
| Column |
|---|
Image Added
|
| Column |
|---|
Image Added
|
|
Пример кастомизации
...
| Section |
|---|
|
Рассмотрим использование EasyCustom на примере тестового технического требования. | Column |
|---|
Загрузить созданный архив можно двумя способами: - Через WEB-UI, по пути Управление → Конфигурация → Восстановить резервную копию;
- Через ACS, загрузив файл как обычный конфигурационный файл (по аналогии с резервной копией).
| Expand |
|---|
| title | Пример требований к кастомизации |
|---|
|
- Учетная записать администратора:
- Логин: Admin1
- Пароль зашифрован: AdminPass
- Учетная запись пользователя:
- Логин: User1
- Пароль зашифрован: UserPass
- Ограничить доступ к пунктам WEB-UI:
- CWMP: чтение и запись
- Расширенная настройка VLAN: запись
- NTP
- NTP-клиент: включить
- NTP-сервер: включить
- Добавить в списки NTP-серверы:
- Параметры удаленного доступа
- Доступ на WAN по SSH: включить
- Доступ с подсети 10.1.1.0/24
- Доступ с адреса 10.10.10.10
- Порт 23
- Доступ на WAN по HTTP: включить
- Доступ с подсети 10.1.1.0/24
- Доступ с адреса 10.10.10.10
- Порт 81
- Доступ на WAN по HTTPS: включить
- Доступ с подсети 10.1.1.0/24
- Доступ с адреса 10.10.10.10
- Порт 444
- CWMP
- Режим работы CWMP: static
- Периодическое информирование ACS-сервера: включить
- Интервал информирования ACS-сервера: 4000
- Адрес ACS-сервера: http://10.1.1.6:7547/
- CWMP-порт: 7547
- STUN
- STUN-запросы : включить
- Адрес STUN-сервера: 192.168.1.1
- Порт STUN-сервера: 19303
- Порт STUN-клиента: 25565
- Интервал отправки сообщений: 120
- Имя пользователя STUN: Admin
- Пароль: Admin
- IGMP-proxy
- IGMP-proxy: включить
- fastleave: включить
- respawn: включить
- UPnP
- UPnP: включить
- Дополнительное журналирование: включить
- Защищенный режим: включить
- Сервисы деактивации аварий
- Перезапуск WAN : включить
- Проверка доступности шлюза: включить
- Интервал проверки: 35
- Количество попыток: 4
- Обнаружение петель: включить
- Время отключения порта при обнаружении петли: 10 секунд
- Настройки сети
- LAN
- LAN-IP: 192.168.1.111
- DHCP
- Минимальный адрес аренды: 10
- Максимальное количество адресов для аренды: 143
- Максимальное время аренды: 11h
- WAN
- Тип соединения: static
- Адрес: 10.1.1.111
- Шлюз: 10.1.1.1
- Маска: 255.255.255.0
- DNS: 8.8.8.8, 8.8.4.4
- Hostname: SNR-CPE-Router
- MTU: 1500
- Туннелированное подключение: включить
- Тип: PPPoE
- Логин: Admin
- Пароль: Admin
- Использовать маршрут по умолчанию: включить
- Wi-Fi
- Диапазон 2.4 Ghz
- Имя сети: Network-2GHz
- Тип шифрования: WPA2-PSK
- Пароль: Password123
- Автовыбор канала: включить
- Тип: По количеству станций
- Исключить каналы: 12, 13, 14
- Ширина канала: 20 Mhz
- PMF: Обязательно
- Диапазон 5 Ghz
- Имя сети: Network-5Ghz
- Тип шифрования: WPA2-PSK
- Пароль: Password123
- Автовыбор канала: включить
- Тип: По количеству станций
- Исключить каналы: 132, 136, 140, 144, 149, 153, 157, 161, 165
- Ширина канала: 20 Mhz
- PMF: Обязательный
- Стили
- W4N-N
- Стиль интерфейса: Голубой
- Логотип: Ягоды
- MD2
- Стиль интерфейса: Коричневый
- Логотип: Арбуз
- ME2-Lite
- Стиль интерфейса: Розовый
- Логотип: Пончик
- AX1
- Стиль интерфейса: Желтый
- Логотип: Сыр
- AX2
- Стиль интерфейса: Серый
- Логотип: Яблоко
- Обновление архива
- Проверка обновлений каждые 5 минут
|
|
|
| Column |
|---|
_SET system.ntp.server='new1.ntp.net'
# добавление еще двух ntp-серверов в список
CONFIG_ADD_LIST system.ntp.server='new2.ntp.net- Создаем каталог /etc
- В /etc создаем каталог /ezcustom
- В /etc/ezcustom создаем текстовый файл "custom" без расширения , сохраняем с форматом окончания строк Unix.
- В /etc/ezcustom добавим подготовленные файлы стилей, логотипов и ограничений UI, по необходимости
- По вышеописанным требованиям, отредактируем файл custom, используя ранее перечисленные команды
| Code Block |
|---|
| | language | bash |
|---|
| title | Содержимое скрипта custom |
|---|
| collapse | true |
|---|
| # НАСТРОЙКА УЧЕТНОЙ ЗАПИСИ АДМИНИСТРАТОРА
# логин
ADMIN_USERNAME "Admin1"
# hash пароля
SET_PASSWD_HASH "Admin1" '$1$GyDkBMuw$DMAIDu9YL8DyDTaVkiahS1'
# НАСТРОЙКА УЧЕТНОЙ ЗАПИСИ ПОЛЬЗОВАТЕЛЯ
# логин
USER_USERNAME "User1"
# hash пароля
SET_PASSWD_HASH "User1" '$1$uhqRRzgo$LYXc1oYdHrHoh4BErjSEL/'
# УСТАНОВКА ФАЙЛА ОГРАНИЧЕНИЙ WEB-ИНТЕРФЕЙСА luci-acl
# установка файла luci-acl ограничений в web-ui
INSTALL_FILE "luci-acl" "/etc/config/luci-acl"
#ИЗМЕНЕНИЕ КОНТАКТНЫХ ДАННЫХ В WEB-UI
# телефон службы поддержки клиентов оператора связи
CONFIG_SET system.@system[0].snr_custom_support_phone='8-800-123-45-67'
# сайт/интернет-ресурс оператора связи
CONFIG_SET system.@system[0].snr_custom_support_url='http://support.myisp.com'
# НАСТРОЙКИ NTP
# включение ntp-клиента
CONFIG_SET system.ntp.enabled='1'
# включение ntp-сервера
CONFIG_SET system.ntp.enable_server='1'
# замена стандартного ntp сервера (0.ru.pool.ntp.org)
CONFIG- ранее перечисленные команды
| Code Block |
|---|
| language | bash |
|---|
| title | Содержимое скрипта custom |
|---|
| collapse | true |
|---|
| # НАСТРОЙКА УЧЕТНОЙ ЗАПИСИ АДМИНИСТРАТОРА
# логин
ADMIN_USERNAME "Admin1"
# hash пароля
SET_PASSWD_HASH "Admin1" '$1$GyDkBMuw$DMAIDu9YL8DyDTaVkiahS1'
# НАСТРОЙКА УЧЕТНОЙ ЗАПИСИ ПОЛЬЗОВАТЕЛЯ
# логин
USER_USERNAME "User1"
# hash пароля
SET_PASSWD_HASH "User1" '$1$uhqRRzgo$LYXc1oYdHrHoh4BErjSEL/'
# УСТАНОВКА ФАЙЛА ОГРАНИЧЕНИЙ WEB-ИНТЕРФЕЙСА luci-acl
# установка файла luci-acl ограничений в web-ui
INSTALL_FILE "luci-acl" "/etc/config/luci-acl"
#ИЗМЕНЕНИЕ КОНТАКТНЫХ ДАННЫХ В WEB-UI
# телефон службы поддержки клиентов оператора связи
CONFIG_SET system.@system[0].snr_custom_support_phone='8-800-123-45-67'
# сайт/интернет-ресурс оператора связи
CONFIG_SET system.@system[0].snr_custom_support_url='http://support.myisp.com'
# НАСТРОЙКИ NTP
# включение ntp-клиента
CONFIG_SET system.ntp.enabled='1'
# включение ntp-сервера
CONFIG_SET system.ntp.enable_server='1'
# замена стандартного ntp сервера (0.ru.pool.ntp.org)
CONFIG_SET system.ntp.server='new1.ntp.net'
# добавление еще двух ntp-серверов в список
CONFIG_ADD_LIST system.ntp.server='new2.ntp.net'
CONFIG_ADD_LIST system.ntp.server='new3.ntp.net'
# НАСТРОЙКА ПРАВИЛ ДЛЯ ДОСТУПА НА WAN ПО SSH
# название правила
CONFIG_SET firewall.ssh.name='Allow-SSH'
# включение доступа по SSH на wan
CONFIG_SET firewall.ssh.enabled='1'
# зона доступности
CONFIG_SET firewall.ssh.src='wan'
# указываем новый порт 23 в конфиге dropbear и firewall
CONFIG_SET dropbear.@dropbear[0].Port='23'
CONFIG_SET firewall.ssh.dest_port='23'
# протокол подключения
CONFIG_SET firewall.ssh.proto='tcp'
# тип правила
CONFIG_SET firewall.ssh.target='ACCEPT'
# разрешаем доступ с подсетей
CONFIG_ADD_LIST firewall.ssh.src_ip='10.10.10.10'
CONFIG_ADD_LIST firewall.ssh.src_ip='10.1.1.0/24'
# НАСТРОЙКА ПРАВИЛА ДЛЯ ДОСТУПА НА WAN ПО HTTP
# название правила
CONFIG_SET firewall.http.name='Allow-HTTP'
# включение доступа по HTTP на wan
CONFIG_SET firewall.http.enabled='1'
# зона доступности
CONFIG_SET firewall.http.src='wan'
# удаляем секцию стандартного конфига порта 80 в uhttpd для http
CONFIG_DELETE uhttpd.main.listen_http
# указываем новый порт 88 в конфиге uhttpd и firewall
CONFIG_ADD_LIST uhttpd.main.listen_http='0.0.0.0:88'
CONFIG_ADD_LIST uhttpd.main.listen_http='[::]:88'
CONFIG_SET firewall.http.dest_port='88'
# протокол подключения
CONFIG_SET firewall.http.proto='tcp'
# тип правила
CONFIG_SET firewall.http.target='ACCEPT'
# разрешаем доступ с подсетей
CONFIG_ADD_LIST firewall.http.src_ip='10.10.10.10'
CONFIG_ADD_LIST systemfirewall.ntphttp.serversrc_ip='new310.1.ntp1.net0/24'
# НАСТРОЙКА ПРАВИЛПРАВИЛА ДЛЯ ДОСТУПА НА WAN ПО SSHHTTPS
# название правила
CONFIG_SET firewall.sshhttps.name='Allow-SSHHTTPS'
# включение доступа по SSHHTTPS на wan
CONFIG_SET firewall.sshhttps.enabled='1'
# зона доступности
CONFIG_SET firewall.sshhttps.src='wan'
# указываемудаляем новыйсекцию портстандартного 23конфига впорта конфиге443 dropbearв и firewall
CONFIG_SET dropbear.@dropbear[0].Port='23'uhttpd для https
CONFIG_SETDELETE firewalluhttpd.sshmain.dest_port='23'listen_https
# протокол подключения
CONFIG_SET firewall.ssh.proto='tcp'
# тип правила
CONFIG_SET firewall.ssh.target='ACCEPT'
# разрешаем доступ с подсетейуказываем новый порт 444 в конфиге uhttpd и firewall
CONFIG_ADD_LIST firewalluhttpd.sshmain.srclisten_iphttps='100.100.100.100:444'
CONFIG_ADD_LIST firewalluhttpd.sshmain.srclisten_ip='10.1.1.0/24'
# НАСТРОЙКА ПРАВИЛА ДЛЯ ДОСТУПА НА WAN ПО HTTP
# название правила
CONFIG_SET firewall.http.name='Allow-HTTP'
# включение доступа по HTTP на wanhttps='[::]:444'
CONFIG_SET firewall.httphttps.enableddest_port='1444'
# зонапротокол доступностиподключения
CONFIG_SET firewall.httphttps.srcproto='wantcp'
# удаляем секцию стандартного конфига порта 80 в uhttpd для httpтип правила
CONFIG_DELETESET uhttpdfirewall.main.listen_httphttps.target='ACCEPT'
# указываемразрешаем новыйдоступ порт 88 в конфиге uhttpd и firewallс подсетей
CONFIG_ADD_LIST uhttpdfirewall.mainhttps.listensrc_httpip='010.010.010.0:8810'
CONFIG_ADD_LIST uhttpdfirewall.mainhttps.listensrc_http='[::]:88'ip='10.1.1.0/24'
# НАСТРОЙКА CWMP-ДЕМОН
# включение CWMP-демона в режиме static
CONFIG_SET firewall.http.dest_port='88easycwmp.@local[0].enable='3'
# протокол подключениявключение периодического информирования ACS-сервера
CONFIG_SET firewall.http.proto='tcpeasycwmp.@acs[0].periodic_enable='1'
# типадрес правилаACS-сервера
CONFIG_SET firewall.http.target='ACCEPTeasycwmp.@acs[0].url='http://10.1.1.6:7547'
# разрешаем доступ с подсетейCWMP-порт
CONFIG_ADD_LISTSET firewall.http.src_ip='10.10.10.10'
CONFIG_ADD_LIST firewall.http.src_ip='10.1.1.0/24easycwmp.@local[0].port='7547'
# интервал информирования ACS-сервера
CONFIG_SET easycwmp.@acs[0].periodic_interval='4000'
# НАСТРОЙКА ПРАВИЛА ДЛЯ ДОСТУПА НА WAN ПО HTTPSSTUN
# порт названиеклиента правилаstun
CONFIG_SET firewalltr069_stun.httpsstun.nameclient_port='Allow-HTTPS25565'
# включение доступа по HTTPS на wanstun-запросы
CONFIG_SET firewalltr069_stun.httpsstun.enabledenable='1'
# интервал зонаотправки доступностиstun-сообщений
CONFIG_SET firewalltr069_stun.httpsstun.srcmin_keepalive='wan'
# удаляем секцию стандартного конфига порта 443 в uhttpd для https120'
# пароль stun
CONFIG_DELETESET uhttpdtr069_stun.main.listen_httpsstun.password='Admin'
# указываем новый порт 444 в конфиге uhttpd и firewallадрес stun-сервера
CONFIG_ADD_LIST uhttpd.main.listen_https='0.0.0.0:444'
CONFIG_ADD_LIST uhttpd.main.listen_https='[::]:444'SET tr069_stun.stun.server_address='192.168.1.1'
# порт stun-сервера
CONFIG_SET firewalltr069_stun.httpsstun.destserver_port='44419303'
# имя протоколпользователя подключенияstun
CONFIG_SET firewalltr069_stun.httpsstun.protousername='tcpAdmin'
# тип правила НАСТРОЙКА IGMP-PROXY
# включение igmp-proxy
CONFIG_SET firewall.https.targetigmpproxy.@igmpproxy[0].enable='ACCEPT1'
# разрешаем доступ с подсетейвключение fastleave
CONFIG_ADD_LISTSET firewall.https.src_ip='10.10.10.10'
CONFIG_ADD_LIST firewall.https.src_ip='10.1.1.0/24igmpproxy.@igmpproxy[0].quickleave='1'
# включение respawn
CONFIG_SET igmpproxy.@igmpproxy[0].respawn='1'
# НАСТРОЙКА CWMP-ДЕМОНUPnP
# включение CWMP-демона в режиме staticupnp
CONFIG_SET easycwmp.@local[0].enableupnpd.config.enabled='3'
# включение периодического информирования ACS-сервера1'
CONFIG_SET easycwmp.@acs[0].periodic_enableupnpd.config.enable_upnp='1'
# включить адрес ACS-серверадополнительное журналирование upnp
CONFIG_SET easycwmp.@acs[0].url='http://10.1.1.6:7547'
# CWMP-портupnpd.config.log_output='1'
# разрешить перенаправление только для запрашивающих IP-адресов
CONFIG_SET easycwmp.@local[0].port='7547'
# интервал информирования ACS-сервераupnpd.config.secure_mode='1'
# СЕРВИСЫ ДЕАКТИВАЦИИ АВАРИЙ
# восстановить работу WAN при поднятии интерфейса
CONFIG_SET easycwmp.@acs[0].periodic_interval='4000'
# НАСТРОЙКА STUN
# порт клиента stuncpe-tools.services.wan_arping_watchdog='1'
# проверка доступности шлюза через ARP-запросы и перезапрос реквизитов по dhcp
CONFIG_SET tr069_stun.stun.client_port='25565cpe-tools.services.wan_arping_interval='35'
# включениеколичество stunARP-запросызапросов
CONFIG_SET tr069_stun.stun.enable='1cpe-tools.services.wan_arping_attempts='4'
# включение интервалрежима отправкиобнаружения stun-сообщенийпетель
CONFIG_SET tr069_stun.stun.min_keepalive='120cpe-tools.services.lpdet_interval='1'
# пароль stunвремя в секундах до отключения порта при обнаружении петель
CONFIG_SET tr069_stun.stun.password='Admin'cpe-tools.services.lpdet_shutdown='10'
# НАСТРОЙКА LAN-ip
# адресизменение stunLAN-сервераip
CONFIG_SET tr069_stunnetwork.stunlan.server_addressipaddr='192.168.1.1111'
# порт stun-сервера
CONFIG_SET tr069_stun.stun.server_port='19303'НАСТРОЙКА DHCP LAN
# имяминимальный пользователяадрес stunаренды
CONFIG_SET tr069_stundhcp.stunlan.usernamestart='Admin10'
# максимальное НАСТРОЙКА IGMP-PROXY
# включение igmp-proxyколичество адресов для аренды
CONFIG_SET igmpproxy.@igmpproxy[0].enabledhcp.lan.limit='1143'
# включение fastleave максимальное время аренды (минимум 2m)
CONFIG_SET igmpproxy.@igmpproxy[0].quickleavedhcp.lan.leasetime='111h'
# включение respawnНАСТРОЙКИ WAN
# dns-серверы для wan
CONFIG_SET igmpproxy.@igmpproxy[0].respawn='1'
# НАСТРОЙКА UPnP
# включение upnp
CONFIG_SET upnpd.config.enabled='1'network.wan.dns='8.8.8.8 8.8.4.4'
# адрес шлюза
CONFIG_SET network.wan.gateway='10.1.1.1'
# адрес WAN
CONFIG_SET upnpdnetwork.configwan.enable_upnpipaddr='10.1.1.111'
# включить дополнительное журналирование upnpмаска
CONFIG_SET upnpdnetwork.configwan.log_outputnetmask='1255.255.255.0'
# разрешитьтип перенаправление толькосоединения для запрашивающих IP-адресовWAN
CONFIG_SET upnpdnetwork.configwan.secure_modeproto='1static'
# СЕРВИСЫ ДЕАКТИВАЦИИ АВАРИЙ
# восстановить работу WAN при поднятии интерфейсаhostname роутера
CONFIG_SET cpe-toolsnetwork.services.wan_arping_watchdog='1'wan.hostname='SNR-CPE-ROUTER'
# проверкаНАСТРОЙКИ доступностиVPN шлюзаPPPOE через ARP-запросы и перезапрос реквизитов по dhcpНА WAN
# маршрут по умолчанию
CONFIG_SET cpe-toolsnetwork.services.wan_arping_intervalvpn.defaultroute='351'
# включение vpn количествона ARP-запросовwan
CONFIG_SET cpe-toolsnetwork.services.wan_arping_attemptsvpn.disabled='40'
# включение режима обнаружения петель
CONFIG_SET cpe-toolsnetwork.servicesvpn.lpdet_intervalifname='1eth1'
# пароль времяпользователя в секундах до отключения порта при обнаружении петельтуннеле
CONFIG_SET cpe-toolsnetwork.servicesvpn.lpdet_shutdownpassword='10Admin'
# НАСТРОЙКАтип LAN-ip
# изменение LAN-ipvpn-соединения
CONFIG_SET network.lanvpn.ipaddrproto='192.168.1.111'
pppoe'
# НАСТРОЙКАлогин DHCP LAN
#пользователя минимальныйв адрес арендытуннеле
CONFIG_SET dhcpnetwork.lanvpn.startusername='10Admin'
# максимальное количество адресов для арендыДОПОЛНИТЕЛЬНЫЕ НАСТРОЙКИ WAN
# mac-адрес WAN-порта
CONFIG_SET dhcpnetwork.lanwan.limitmacaddr='143F8:F0:82:1E:8C:A3'
# максимальноеизменение времяmtu аренды (минимум 2m)на wan
CONFIG_SET dhcpnetwork.lanwan.leasetimemtu='11h1500'
# НАСТРОЙКИ WAN WI-FI 2.4Ghz
# dns-серверыизменение дляSSID wan2.4Ghz
CONFIGWIFI_SET network.wan.dns='8.8.8.8 8.8.4.4'
# адрес шлюза
CONFIG_SET network.wan.gateway='10.1.1.1'
# адрес WAN
CONFIG_SET network.wan.ipaddr='10.1.1.111'
# маска
CONFIG_SET network.wan.netmask='255.255.255.0'
# тип соединения для WAN
CONFIG_SET network.wan.proto='static'
# hostname роутера
CONFIG_SET network.wan.hostname='SNR-CPE-ROUTER'
# НАСТРОЙКИ VPN PPPOE НА WAN
# маршрут по умолчанию
CONFIG_SET network.vpn.defaultroute='1'
# включение vpn на wan
CONFIG_SET network.vpn.disabled='0'
CONFIG_SET network.vpn.ifname='eth1'
# пароль пользователя в туннеле
CONFIG_SET network.vpn.password='Admin'
# тип vpn-соединения
CONFIG_SET network.vpn.proto='pppoe'
# логин пользователя в туннеле
CONFIG_SET network.vpn.username='Admin'
# ДОПОЛНИТЕЛЬНЫЕ НАСТРОЙКИ WAN
# mac-адрес WAN-порта
CONFIG_SET network.wan.macaddr='F8:F0:82:1E:8C:A3'
# изменение mtu на wan
CONFIG_SET network.wan.mtu='1500'
# НАСТРОЙКИ WI-FI 2.4Ghz
# изменение SSID 2.4Ghz_2GHZ "SSID1" "Network-2GHz"
# изменение пароля 2.4Ghz
WIFI_SET_2GHZ "WPAPSK1" "Password123"
# вкл. автовыбора 2.4Ghz (тип: 1-по количеству станций, 2-по уровню шума, 3-по загрузке QBSS)
# интервал указывается в часах
WIFI_SET_2GHZ "Channel1" "0"
WIFI_SET_2GHZ "AutoChannelSelect" "1"
WIFI_SET_2GHZ "ACSCheckTime" "24"
# исключение каналов из автовыбора (указывать каналы через ";")
WIFI_SET_2GHZ "AutoChannelSkipList" "12;13;14"
# ручной выбор канала (если выключен автовыбор)
WIFI_SET_2GHZ "Channel1" "10"
# тип шифрования 2.4Ghz
WIFI_SET_2GHZ "AuthMode" "WPA2PSK"
# PMF 2.4 GHz тип "обязательно"
# ( Если "PMFMFPC = 1" + "PMFMFPR = 0", то будет тип "опционально".)
# ( Если "PMFMFPC = 0" + "PMFMFPR = 0", то будет тип "выключить".)
WIFI_SET_2GHZ "PMFMFPC" "1"
WIFI_SET_2GHZ "SSID1PMFMFPR" "Network-2GHz1"
# изменение пароляPMF 2.4Ghz4 GHz тип "обязательно" (coming soon with next update)
WIFI_SET_PMF_2GHZ "WPAPSK1" "Password123"mandatory"
# вкл.ШИРИНА автовыбораКАНАЛА 2.4Ghz4 (тип: 1-по количеству станций, 2-по уровню шума, 3-по загрузке QBSS)
# интервал указывается в часах
WIFI_SET_2GHZ "Channel1" "0"
WIFI_SET_2GHZ "AutoChannelSelect" "1"
WIFI_SET_2GHZ "ACSCheckTime" "24"
# исключение каналов из автовыбора (указывать каналы через ";"GHz = 20 Mhz
# ( Если "HT_BW = 1" + "VHT_BW = 0" + "HT_BSSCoexistence = 0", то будет ширина 40 Mhz )
WIFI_SET_2GHZ "AutoChannelSkipListHT_BW" "12;13;14"
# ручной выбор канала (если выключен автовыбор)"0"
WIFI_SET_2GHZ "Channel1VHT_BW" "10"
# тип шифрования 2.4Ghz0"
WIFI_SET_2GHZ "AuthModeHT_BSSCoexistence" "WPA2PSK0"
# PMFширина 2.4канала GHz20 тип "обязательно"
# ( Если "PMFMFPC = 1" + "PMFMFPR = 0", то будет тип "опционально".)
# ( Если "PMFMFPC = 0" + "PMFMFPR = 0", то будет тип "выключить".)МГц (coming soon with next update)
WIFI_SET_BW_2GHZ "20"
# НАСТРОЙКИ WI-FI 5Ghz
# изменение SSID 5Ghz
WIFI_SET_2GHZ5GHZ "PMFMFPCSSID1" "1"Network-5Ghz"
# изменение пароля 5GHz
WIFI_SET_2GHZ5GHZ "PMFMFPRWPAPSK1" "1Password123"
# PMF 2.4 GHz тип "обязательно" (coming soon with next updateвкл/выкл автовыбора 5Ghz (тип: 1-по количеству станций, 2-по уровню шума, 3-по загрузке QBSS)
WIFI_SET_PMF_2GHZ5GHZ "AutoChannelSelect" "mandatory1"
# ШИРИНАисключение КАНАЛАканалов 2.4из GHz = 20 Mhz
# ( Если "HT_BW = 1" + "VHT_BW = 0" + "HT_BSSCoexistence = 0", то будет ширина 40 Mhz автовыбора (указывать каналы через ";")
WIFI_SET_5GHZ "AutoChannelSkipList" "132;136;140;144;149;153;157;161;165"
# ручной выбор канала (если выключен автовыбор)
WIFI_SET_2GHZ5GHZ "HT_BWChannel1" "036"
WIFI_SET_2GHZ "VHT_BW" "0"
WIFI_SET_2GHZ "HT_BSSCoexistence" "0"
# ширина канала 20 МГц (coming soon with next update)
WIFI_SET_BW_2GHZ "20"
# НАСТРОЙКИ WI-FI 5Ghz
# изменение SSID 5Ghz
# PMF 5 GHz тип "обязательно"
# ( Если "PMFMFPC = 1" + "PMFMFPR = 0", то будет тип "опционально".)
# ( Если "PMFMFPC = 0" + "PMFMFPR = 0", то будет тип "выключить".)
WIFI_SET_5GHZ "SSID1PMFMFPC" "Network-5Ghz"
# изменение пароля 5GHz1"
WIFI_SET_5GHZ "WPAPSK1PMFMFPR" "Password1231"
# вкл/выклPMF автовыбора5 5GhzGHz (тип: 1-по количеству станций, 2-по уровню шума, 3-по загрузке QBSS "обязательно" (coming soon with next update)
WIFI_SET_PMF_5GHZ "AutoChannelSelect" "1"mandatory"
# исключение каналов из автовыбора (указывать каналы через ";")
WIFI_SET_5GHZ "AutoChannelSkipList" "132;136;140;144;149;153;157;161;165"
# ручной выбор канала (если выключен автовыбор)
WIFI_SET_5GHZ "Channel1" "36"
# PMF 5 GHz тип "обязательно" ШИРИНА КАНАЛА 5 GHz = 20 Mhz
# ( Если "HT_BW = 1" + "VHT_BW = 0" + "HT_BSSCoexistence = 0", то будет ширина 40 Mhz.)
# ( Если "PMFMFPCHT_BW = 1" + "PMFMFPRVHT_BW = 0" + "HT_BSSCoexistence = 1", то будет тип "опционально".) ширина 20/40 Mhz. )
# ( Если "HT_BW = 1" + "PMFMFPCVHT_BW = 01" + "PMFMFPRHT_BSSCoexistence = 01", то будет тип "выключить".) будет ширина 80 Mhz. )
WIFI_SET_5GHZ "HT_BW" "0"
WIFI_SET_5GHZ "PMFMFPCVHT_BW" "10"
WIFI_SET_5GHZ "PMFMFPRHT_BSSCoexistence" "1"
# PMFширина 5канала GHz тип "обязательно"20 МГц (coming soon with next update)
WIFI_SET_PMF_5GHZ "mandatory"
# ШИРИНА КАНАЛА 5 GHz = 20 Mhz
# ( Если "HT_BW = 1" + "VHT_BW = 0" + "HT_BSSCoexistence = 0", то будет ширина 40 Mhz.)
# ( Если "HT_BW = 1" + "VHT_BW = 0" + "HT_BSSCoexistence = 1", то будет ширина 20/40 Mhz. )
# ( Если "HT_BW = 1" + "VHT_BW = 1" + "HT_BSSCoexistence = 1", то будет ширина 80 Mhz. )
WIFI_SET_5GHZ "HT_BW" "0"
WIFI_SET_5GHZ "VHT_BW" "0"
WIFI_SET_5GHZ "HT_BSSCoexistence" "1"
# ширина канала 20 МГц (coming soon with next update)
WIFI_SET_BW_5GHZ "20"
# УСЛОВИЕ УЧЕТА МОДЕЛИ SNR-CPE
if MODEL_IS "SNR-CPE-ME2-Lite"
then
INSTALL_LOGO "donut.svg"
INSTALL_STYLES "pink.css"
fi
if MODEL_IS "SNR-CPE-MD2"
then
INSTALL_LOGO "arbuz.svg"
INSTALL_STYLES "brown.css"
fi
if MODEL_IS "SNR-CPE-W4N-N"
then
INSTALL_LOGO "yagoda.svg"
INSTALL_STYLES "blue.css"
fi
if MODEL_IS "SNR-CPE-AX1"
then
INSTALL_LOGO "cheese.svg"
INSTALL_STYLES "yellow.css"
fi
if MODEL_IS "SNR-CPE-AX2"
then
INSTALL_LOGO "apple.svg"
INSTALL_STYLES "dark.css"
fiBW_5GHZ "20"
# УСЛОВИЕ УЧЕТА МОДЕЛИ SNR-CPE
if MODEL_IS "SNR-CPE-ME2-Lite"
then
INSTALL_LOGO "donut.svg"
INSTALL_STYLES "pink.css"
fi
if MODEL_IS "SNR-CPE-MD2"
then
INSTALL_LOGO "arbuz.svg"
INSTALL_STYLES "brown.css"
fi
if MODEL_IS "SNR-CPE-W4N-N"
then
INSTALL_LOGO "yagoda.svg"
INSTALL_STYLES "blue.css"
fi
if MODEL_IS "SNR-CPE-AX1"
then
INSTALL_LOGO "cheese.svg"
INSTALL_STYLES "yellow.css"
fi
if MODEL_IS "SNR-CPE-AX2"
then
INSTALL_LOGO "apple.svg"
INSTALL_STYLES "dark.css"
fi
# Ограничение UI для учетных записей через web-acl
# все поля в настройках wan только для чтения
CONFIG_ADD web-acl rule
CONFIG_ADD_LIST web-acl.@rule[-1].uid='2'
CONFIG_ADD_LIST web-acl.@rule[-1].model='network.wan'
CONFIG_ADD_LIST web-acl.@rule[-1].readonly='*'
# все поля в настройках vlan только для чтения
CONFIG_ADD web-acl rule
CONFIG_ADD_LIST web-acl.@rule[-1].uid='2'
CONFIG_ADD_LIST web-acl.@rule[-1].model='network.vlan'
CONFIG_ADD_LIST web-acl.@rule[-1].readonly='*'
# скрыть ссылку на CWMP в сайдбаре
CONFIG_ADD web-acl rule
CONFIG_ADD_LIST web-acl.@rule[-1].uid='2'
CONFIG_ADD_LIST web-acl.@rule[-1].path='*'
CONFIG_ADD_LIST web-acl.@rule[-1].disable='#service-cwmp'
# скрыть страницу CWMP
CONFIG_ADD web-acl rule
CONFIG_ADD_LIST web-acl.@rule[-1].uid='2'
CONFIG_ADD_LIST web-acl.@rule[-1].path='/admin/web/service/cwmp'
CONFIG_ADD_LIST web-acl.@rule[-1].disable='*/*'
# УСТАНОВКА ФАЙЛА ПРОВЕРКИ ОБНОВЛЕНИЙ АРХИВА КАСТОМИЗАЦИИ
# check for configuration update every 5 min
# установка скрипта my_update.sh в каталог /etc
# проверка раз в 5 минут
INSTALL_FILE "my_update.sh" "/etc/my_update.sh"
SET_CRONTAB <<EOF
*/5 * * * * sh "/etc/my_update.sh"
EOF |
| Warning |
|---|
| Не добавляйте пробелы и комментарии после команд! Это помешает их выполнению |
|
...