Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
abills:docs:modules:ipn:ru [2015/10/27 16:13] asmodeus [Контроль доступа и нарезка трафика] |
abills:docs:modules:ipn:ru [2017/12/11 15:12] (текущий) anton [traffic2sql] |
||
---|---|---|---|
Строка 108: | Строка 108: | ||
^$conf{IPN_USERMENU}=1; | Включить в пользовательском интерфейсе меню открытия доступа | | ^$conf{IPN_USERMENU}=1; | Включить в пользовательском интерфейсе меню открытия доступа | | ||
^$conf{IPN_CLUBMONITOR}=1; | Включить клуб монитор. Упрощённый интерфейс мониторинга активных сессий и меню создания карточек доступа| | ^$conf{IPN_CLUBMONITOR}=1; | Включить клуб монитор. Упрощённый интерфейс мониторинга активных сессий и меню создания карточек доступа| | ||
+ | ^$conf{IPN_DAILY_RESTART}=1; |Рестартовать сессии каждый день | | ||
^$conf{IPN_DEPOSIT_OPERATION}=1; | Снимать деньги модулем IPN. При включении этой опции деньги со счёта снимаются в реальном времени после каждого обновления статистики.| | ^$conf{IPN_DEPOSIT_OPERATION}=1; | Снимать деньги модулем IPN. При включении этой опции деньги со счёта снимаются в реальном времени после каждого обновления статистики.| | ||
^$conf{IPN_FW_FIRST_RULE}=20000; | Номер первого правила в брандмауэре | | ^$conf{IPN_FW_FIRST_RULE}=20000; | Номер первого правила в брандмауэре | | ||
Строка 265: | Строка 266: | ||
CMD="${SUDO} /usr/abills/libexec/linkupdown ipn up getif %LOGIN %IP %DEBUG > /dev/null 2>&1"; | CMD="${SUDO} /usr/abills/libexec/linkupdown ipn up getif %LOGIN %IP %DEBUG > /dev/null 2>&1"; | ||
if [ "${NAS_TYPE}" = "mikrotik" ]; then CMD="/usr/abills/libexec/linkupdown mikrotik up - %LOGIN %IP NAS_HOST=${NAS_MNG_IP_PORT} NAS_ADMIN=${NAS_MNG_USER}"; | if [ "${NAS_TYPE}" = "mikrotik" ]; then CMD="/usr/abills/libexec/linkupdown mikrotik up - %LOGIN %IP NAS_HOST=${NAS_MNG_IP_PORT} NAS_ADMIN=${NAS_MNG_USER}"; | ||
- | elif [ "${NAS_MNG_IP_PORT}" != "" ]; then CMD="/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_dsa.${NAS_MNG_USER} ${NAS_MNG_USER}@${NAS_MNG_IP_PORT} \"${CMD}\""; fi; | + | elif [ "${NAS_MNG_IP_PORT}" != "" ]; then CMD="/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_rsa.${NAS_MNG_USER} ${NAS_MNG_USER}@${NAS_MNG_IP_PORT} \"${CMD}\""; fi; |
eval "${CMD}"'; | eval "${CMD}"'; | ||
Строка 271: | Строка 272: | ||
CMD="${SUDO} /usr/abills/libexec/linkupdown ipn down getif %LOGIN %IP %DEBUG > /dev/null 2>&1"; | CMD="${SUDO} /usr/abills/libexec/linkupdown ipn down getif %LOGIN %IP %DEBUG > /dev/null 2>&1"; | ||
if [ "${NAS_TYPE}" = "mikrotik" ]; then CMD="/usr/abills/libexec/linkupdown mikrotik down - %LOGIN %IP NAS_HOST=${NAS_MNG_IP_PORT} NAS_ADMIN=${NAS_MNG_USER}"; | if [ "${NAS_TYPE}" = "mikrotik" ]; then CMD="/usr/abills/libexec/linkupdown mikrotik down - %LOGIN %IP NAS_HOST=${NAS_MNG_IP_PORT} NAS_ADMIN=${NAS_MNG_USER}"; | ||
- | elif [ "${NAS_MNG_IP_PORT}" != "" ]; then CMD="/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_dsa.${NAS_MNG_USER} ${NAS_MNG_USER}@${NAS_MNG_IP_PORT} \"${CMD}\""; fi; | + | elif [ "${NAS_MNG_IP_PORT}" != "" ]; then CMD="/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_rsa.${NAS_MNG_USER} ${NAS_MNG_USER}@${NAS_MNG_IP_PORT} \"${CMD}\""; fi; |
eval "${CMD}"'; | eval "${CMD}"'; | ||
</code> | </code> | ||
Строка 281: | Строка 282: | ||
if [ "${NAS_TYPE}" = "mikrotik_dhcp" ]; then CMD="/usr/abills/libexec/linkupdown mikrotik up - %LOGIN %IP NAS_HOST=${NAS_MNG_IP_PORT} | if [ "${NAS_TYPE}" = "mikrotik_dhcp" ]; then CMD="/usr/abills/libexec/linkupdown mikrotik up - %LOGIN %IP NAS_HOST=${NAS_MNG_IP_PORT} | ||
NAS_ADMIN=${NAS_MNG_USER}"; | NAS_ADMIN=${NAS_MNG_USER}"; | ||
- | elif [ "${NAS_MNG_IP_PORT}" != "" ]; then CMD="/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_dsa.${NAS_MNG_USER} | + | elif [ "${NAS_MNG_IP_PORT}" != "" ]; then CMD="/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_rsa.${NAS_MNG_USER} |
${NAS_MNG_USER}@${NAS_MNG_IP_PORT} \"${CMD}\""; fi; | ${NAS_MNG_USER}@${NAS_MNG_IP_PORT} \"${CMD}\""; fi; | ||
eval "${CMD}"'; | eval "${CMD}"'; | ||
Строка 289: | Строка 290: | ||
if [ "${NAS_TYPE}" = "mikrotik_dhcp" ]; then CMD="/usr/abills/libexec/linkupdown mikrotik down - %LOGIN %IP NAS_HOST=${NAS_MNG_IP_PORT} | if [ "${NAS_TYPE}" = "mikrotik_dhcp" ]; then CMD="/usr/abills/libexec/linkupdown mikrotik down - %LOGIN %IP NAS_HOST=${NAS_MNG_IP_PORT} | ||
NAS_ADMIN=${NAS_MNG_USER}"; | NAS_ADMIN=${NAS_MNG_USER}"; | ||
- | elif [ "${NAS_MNG_IP_PORT}" != "" ]; then CMD="/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_dsa.${NAS_MNG_USER} | + | elif [ "${NAS_MNG_IP_PORT}" != "" ]; then CMD="/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_rsa.${NAS_MNG_USER} |
${NAS_MNG_USER}@${NAS_MNG_IP_PORT} \"${CMD}\""; fi; | ${NAS_MNG_USER}@${NAS_MNG_IP_PORT} \"${CMD}\""; fi; | ||
eval "${CMD}"'; | eval "${CMD}"'; | ||
Строка 329: | Строка 330: | ||
abills_shaper_enable="YES" | abills_shaper_enable="YES" | ||
+ | abills_ipn_if="eth0,eth2" | ||
+ | abills_nat_enable=":192.168.0.0/24:eth1" | ||
+ | |||
+ | ^eth0,eth2 | интерфейс в локальную сеть к которому подключены пользователи | | ||
+ | ^eth1 | интерфейс наружу | | ||
+ | ^192.168.0.1 | локальный IP сервера | | ||
+ | ^192.168.0.0/255.255.255.0| локальная сеть| | ||
+ | |||
+ | |||
+ | или альтернативный скрипт | ||
\\ | \\ | ||
Строка 356: | Строка 367: | ||
/sbin/iptables -A FORWARD -j DROP | /sbin/iptables -A FORWARD -j DROP | ||
- | ^eth0,eth2 | интерфейс в локальную сеть к которому подключены пользователи | | ||
- | ^eth1 | интерфейс наружу | | ||
- | ^192.168.0.1 | локальный IP сервера | | ||
- | ^192.168.0.0/255.255.255.0| локальная сеть| | ||
==sudo== | ==sudo== | ||
Строка 393: | Строка 400: | ||
- Создать пользователя abills_admin на удалённом сервере. | - Создать пользователя abills_admin на удалённом сервере. | ||
- | - Скопировать созданный публичный ключ **abills/Certs/id_dsa.abills_admin.pub** в **/home/abills_admin/.ssh/authorized_keys** на удалённом сервере. | + | - Скопировать созданный публичный ключ **abills/Certs/id_rsa.abills_admin.pub** в **/home/abills_admin/.ssh/authorized_keys** на удалённом сервере. |
- Сделать копию биллинга на удалённом сервере | - Сделать копию биллинга на удалённом сервере | ||
- Создать правила для выполнения команд с правами суперпользователя на удалённом сервере | - Создать правила для выполнения команд с правами суперпользователя на удалённом сервере | ||
Строка 429: | Строка 436: | ||
Запуск скрипта обработки статистики **/etc/crontab** | Запуск скрипта обработки статистики **/etc/crontab** | ||
<code> | <code> | ||
- | */5 * * * * root /usr/abills/libexec/traffic2sql 8 flowdir=/usr/abills/var/log/ipn/ | + | */5 * * * * root /usr/abills/libexec/traffic2sql [NAS_IDS] flowdir=/usr/abills/var/log/ipn/ |
</code> | </code> | ||
Параметры: | Параметры: | ||
traffic2sql [NAS_IDS] [Options] | traffic2sql [NAS_IDS] [Options] | ||
+ | \\ | ||
+ | **Пример вызова для серверов с ID 1,2,3:** | ||
+ | <code> | ||
+ | /usr/abills/libexec/traffic2sql 1,2,3 flowdir=/usr/abills/var/log/ipn/ | ||
+ | </code> | ||
Опции: | Опции: | ||
Строка 442: | Строка 454: | ||
^ FLOWTOOLS_IP_AGGREGATION | Агрегация потоков по IP адресам. Поднимает скорость анализа. | | ^ FLOWTOOLS_IP_AGGREGATION | Агрегация потоков по IP адресам. Поднимает скорость анализа. | | ||
^ FLOWTOOLS_FT_BACKUP=dir | Переносить проанализированные файлы в бекапный каталог. Используется для отладки. | | ^ FLOWTOOLS_FT_BACKUP=dir | Переносить проанализированные файлы в бекапный каталог. Используется для отладки. | | ||
- | ^ debug | Режим отладки (1..6) **режим 5 и 6 В БАЗУ ДАННЫЕ НЕ ВНОСИТ** | | + | ^ DEBUG | Режим отладки (1..6) **режим 5 и 6 В БАЗУ ДАННЫЕ НЕ ВНОСИТ** | |
^ DETAIL_ONLY | Складывать в базу только детализацию для активных клиентов (присутствующих в /Monitoring), сам подсчет трафика и ведение сессий не производится. | | ^ DETAIL_ONLY | Складывать в базу только детализацию для активных клиентов (присутствующих в /Monitoring), сам подсчет трафика и ведение сессий не производится. | | ||
^ UNKNOWN_IP_LOG | Включить учёт адресов, не относящихся к активным пользователям | | ^ UNKNOWN_IP_LOG | Включить учёт адресов, не относящихся к активным пользователям | | ||
Строка 453: | Строка 465: | ||
^ VIRUS_ALERT=1000 | Опция разрешает отслеживать заражённые хосты которые рассылаю вирусы. В данной опцие указывается количество мелких пакетов до размером 150 байт за единицу времени при котором хост попадает в чёрный список | | ^ VIRUS_ALERT=1000 | Опция разрешает отслеживать заражённые хосты которые рассылаю вирусы. В данной опцие указывается количество мелких пакетов до размером 150 байт за единицу времени при котором хост попадает в чёрный список | | ||
^ LOG_FILE='...' | Файл ведения лога работы анализатора | | ^ LOG_FILE='...' | Файл ведения лога работы анализатора | | ||
+ | ^ TRANSACTION=1 | Вносить все даные одной транзакцией (ускоряет работу) | | ||
====Периодические процессы==== | ====Периодические процессы==== | ||
Строка 485: | Строка 498: | ||
====Включение активных пользователей==== | ====Включение активных пользователей==== | ||
- | Данная команда автоматически включает всех пользователей с положительным депозитом или правами получать сервис. Активируются только те пользователи у которых прописан IP адрес сервиса Internet. Также обязательно на IPN серверах доступа прописать пулы адресов для таких пользователей чтобы система знала на каких серверах доступа активировать абонентов. | + | Данная команда автоматически включает всех пользователей с положительным депозитом и правами получать сервис (статус услуги активно). Активируются только те пользователи у которых прописан IP адрес сервиса Internet. Также обязательно на IPN серверах доступа прописать пулы адресов для таких пользователей чтобы система знала на каких серверах доступа активировать абонентов. Данную команду стоит запускать через crontab с промежутком раз в 5 минут. |
# /usr/abills/libexec/periodic monthly MODULES=Ipn LOGON_ACTIVE_USERS | # /usr/abills/libexec/periodic monthly MODULES=Ipn LOGON_ACTIVE_USERS | ||
Строка 521: | Строка 534: | ||
====Отчёты==== | ====Отчёты==== | ||
- | * [[abills:docs:manual:admin:ipn:ipn_detail|Детализация трафика]] | + | * [[abills:docs:manual:admin:ipn:ipn_detail|Детализация трафика]] - Детализация трафика абонентов |
+ | * [[abills:docs:manual:admin:ipn:ipn_ft_queue|FT queue]] - отчёт обработки файлов трафика | ||
+ | * [[abills:docs:manual:admin:ipn:ipn_unknow_ips|Неизвестный IP]] - Лог неучтённого трафика | ||
+ | |||