Connection Limit Notifier/ru
From DD-WRT Wiki
English • Deutsch • Español • Français • Italiano • 日本語 • Polski • Português • Русский • Svenska • 中文(中国大陆) • 中文(台灣) • |
Уведомление об превышении предела числа подключений доступно в Mini и более функциональных сборках, начиная с ревизии SVN 12966. Сборка Micro не поддерживает протокол SMTP, поэтому и не может поддерживать уведомление.
Настройка уведомления производится довольно просто. На вкладке Security → Firewall в группе Connection Warning Daemon (название "Daemon" изменено на "Notifier" в ревизии SVN 12975):
- Включите службу уведомления Connection Warning Daemon, установив параметр Warning Daemon в значение Enable.
- Выберите максимальное количество подключений и введите его в поле Connection Limit (по умолчанию 500).
- Введите адрес электронной почты SMTP-сервера в поле Email SMTP Server (исходящая почта).
- Введите ваше имя пользователя и пароль для аутентификации для исходящей почты.
- Введите адрес электронной почты и полное имя пользователя (From:).
- Введите доменное имя и адрес электронной почты, на который будут приходить уведомления (To:).
[edit] Как это работает
Служба уведомления работает вместе со сторожевым таймером маршрутизатора DD-WRT. Она отправит электронное письмо (используя протокол ESMTP) для любого устройства, которое превысит предел числа подключений, указанный в конфигурации.
Если служба уведомлений отправляет электронное письмо, она будет игнорировать это устройство в течение следующих 10 минут. По истечении этого времени она отправит повторное сообщение, если предел всё ещё будет превышен. Если в течение этого времени другое устройство превысит предел, электронное письмо будет немедленно отправлено с указанием этого устройства. И снова будет игнорировать последующие нарушения этого устройства, пока не пройдет 10 минут.
[edit] Примеры уведомлений
Вы можете самостоятельно проверить, не превышен ли предел, введя "notifier" в командной строке или в скрипте планировщика Cron.
Если ввести в командной строке "notifier", при превышении предела вывод команды будет выглядеть примерно так:
root@redhawk-AP:~# notifier 220 vmsXXXXpub.XXXXX.net -- Server ESMTP (Sun Java(tm) System Messaging Server 6.3-7.04 (built Sep 26 2008; 32bit)) 250 2.0.0 OK. 250 SIZE 20971520 334 VXNlcm5dMwU6 334 UGFzgfaQcmQ6 235 2.7.0 LOGIN authentication successful. 250 2.5.0 Address Ok. 250 2.1.5 XXXXX@XXXXX.com OK. 354 Enter mail, end with a single ".". 250 2.5.0 Ok. 221 2.3.0 Bye received. Goodbye.
Если нет превышения предела, команда вернёт пустую строку.
В электронном письме содержится гораздо больше информации о том, кто или что превысил максимальный предел. Оно будет выглядеть примерно так:
From: "Router" <XXXXX@XXXXX.XXX> ip 192.168.0.10 has 552 open connections 544 open connections on port 80 1 open connections on port 61819 1 open connections on port 24 1 open connections on port 57 2 open connections on port 5129 1 open connections on port 28381 1 open connections on port 3132 1 open connections on port 993
[edit] Используемые переменные NVRAM
warn_to= (электронная почта, куда отправляются уведомления)
warn_from= (адрес электронной почты на SMTP-сервере для исходящей почты)
warn_domain= (доменное имя получателя писем)
warn_user= (имя пользователя SMTP-сервера для исходящей почты)
warn_pass= (пароль SMTP-сервера для исходящей почты)
warn_server= (SMTP-сервер для исходящей почты)
warn_fromfull= (название маршрутизатора или какой-либо другой идентификатор, указанный в поле Full Name конфигурации маршрутизатора)
warn_connlimit= (предел числа подключений)
warn_enabled=1 (0, чтобы отключить уведомление о превышении предела соединений)