Восстановление пароля

Если забыт пароль администратора системы (пользователя admin), его можно сбросить в значение по умолчанию ("admin") путём прямой модификации записи в БД. Для этого на сервере системы WNAM от пользователя root необходимо выполнить команды:

mongo wnam_db
db.webinterfaceusers.update( { _id: "admin"} , { $set : { "password" : "d2abaa37a7c3db1137d385e1d8c15fd2"} } ) 

Уменьшение размера базы лог-событий

Поскольку по умолчанию все объекты в БД MongDB хранятся неограниченное время, в нагруженной системе возможна генерация очень большого числа событий, которые занимают место в коллекции логов (cmdServiceLogs). СУБД Mongodb обладает способностью автоматически удалять объекты из коллекции, если превышено время их жизни. Для установки времени жизни сообщений в логах, равное 14 дням (14 дней - это 60*60*24*14 = 1209600 секунд), следует создать новый индекс:

mongo wnam_db
db.cmdServiceLogs.createIndex( { "time": 2 }, { expireAfterSeconds: 1209600 } );

Резервное копирование

Для выполнения резервного копирования необходимо создать скрипт и вызывать его раз в сутки (предпочтительнее ночью):

rm -rf /backup/wnam_db
mongodump -d wnam_db -o /backup
mv /backup/wnam_db /backup/wnam_db_`date +"%d-%m-%Y"`

Крайне желательно, чтобы раздел /backup/ находился на физически другом жёстком диске.

Используемые TCP/IP порты

Для работы системой WNAM используются порты и протоколы, которые необходимо настроить на межсетевом экране используемого сервера или промежуточных межсетевых экранах. Описание портов представлено в таблице.

Протокол и портНаправлениеНазначение
tcp/80к серверу

веб-интерфейс администратора, пользовательские страницы портала (авторизация и реклама)

tcp/443к серверу

пользовательские страницы портала (авторизация и реклама) при использовании портала HTTPS (Mikrotik)

udp/1812к серверузапросы авторизации от RADIUS-клиентов к RADIUS-серверу
udp/1813к серверусообщения аккаунтинга от RADIUS-клиентов к RADIUS-серверу
udp/1700, udp/3799от серверазапросы PoD и CoA к серверам доступа Cisco ISG, Cisco WLC, Alcatel-Lucent
udp/2000от серверазапросы китайского портального протокола (аналог CoA) к серверам доступа Huawei, DCN, Ruijie, H3C, Maipu
tcp/8728от серверазапросы на определение DHCP-идентификаторов абонентов (к маршрутизаторам Mikrotik через API)
tcp/443, tcp/3000от сервераавторизация абонента и запросы на определение их DHCP-идентификаторов (к контроллеру Bluesocket)
tcp/443от серверапроверка действительности лицензии системы WNAM на серверах компании ООО "Нетамс" (если нет offline-лицензии)
tcp/20001к серверутрафик запросов от скриптов wnam-* (например, работы с freeradius) до сервера системы WNAM (обычно через localhost)
udp/20001к серверу

сообщения подтверждения звонков авторизации от агента, установленного на сервере Asterisk,

либо DHCP-привязки от ISC-DHCPD / Kea,

либо коллектора DHCP трафика для подсистемы профилирования

udp/20002к серверутрафик статистики Netflow v5 от маршрутизаторов (серверов) доступа
tcp/27017от сервератрафик обращений к БД MongoDB, если она работает на соседнем с системой WNAM сервере

Дополнительно, если в системе используется механизм корпоративной авторизации, понадобится сетевой доступ, представленный в таблице.

Протокол и портНаправлениеНазначение
tcp/88от сервера

Kerberos трафик от сервера системы WNAM до серверов контроллеров домена ОС Windows

tcp/389, tcp/389от сервераLDAP, LDAPs трафик от сервера системы WNAM до серверов контроллеров домена ОС Windows
tcp/80от сервераHTTP трафик от сервера системы WNAM до серверов ОС Windows PKI для проверки CRL списков отзывов сертификатов
tcp/9080от сервера

ADCTool трафик от сервера системы WNAM до отдельно стоящего сервера с ADCTool

(если таковой не работает совместно с системой WNAM на одном сервере на localhost)

tcp/49к серверуTACACS+ запросы от сетевого оборудования для авторизации доступа администратора
tcp/9092к серверу Трафик кластера Kafka в случае кластеризации системы WNAM по новой модели (>1.6.3638)

Обновление операционной системы (для всех версии)

При обновлении ОС сервера следует обратить внимание на обновление СУБД MongoDB. Эта СУБД не поддерживает обновление "перескоком" через несколько версий (например с 3.6 до 4.4). Её можно обновить только последовательно (3.6-4.0-4.2-4.4), поэтому гораздо проще сделать полный дамп (mongodump -d wnam_db) всей БД, а потом произвести её переустановку с удалением файлов базы в /var/lib/mongodb/. После установки последней версии необходимо сделать восстановление базы (mongorestore -d wnam_db dump).

Внимание! Обновление MongoDB до версий 5, 6, 7 и т.п. требует применения процессоров с поддержкой инструкции AVX. На очень старых процессорах MongoDB версии выше 4.4.х работать не будет. Проверьте ваш сервер через grep avx /proc/cpuinfo

Обновление системы (с версии 1.6 на новый релиз 1.6)

Подробное описание обновления системы WNAM представлено в соответствующем разделе настоящей документации (обновление системы).

Обновление системы (до версии 1.6)

Если требуется обновление с версии 1.5, следует обратить внимание, что freeradius больше не поддерживается, и его надо отключить. Если после обновления слетит лицензия и все настройки в "Конфигурация" → "Общие настройки", следует выполнить их ручное восстановление через консоль сервера БД командами:

mongo wnam_db
db.settings.remove({"_id" : "settingsid"})
doc=db.settings.find()
doc._id = "settingsid"
db.settings.insert(doc)

После восстановления настроек требуется перезапустить систему WNAM.

Обновление системы (версия 1.5)

Перед обновлением необходимо сделать бэкап дистрибутива, используя команды:

cd /home/wnam
cp wnam.war wnam.war.prev

В интерфейсе администратора системы WNAM в разделе "Конфигурация" → "Общие настройки" следует скопировать лицензионный ключ. Затем необходимо перейти на сайт https://www.netams.com/download/ , ввести ключ и получить ссылку для скачивания дистрибутива.

Далее по полученной ссылке необходимо скачать дистрибутив на сервер:

wget -O /tmp/wnam.war http://www.netams.com/cgi/download.cgi?token=zsmehgiuwsprehmbhxjprgvlqgcunjyg ! эту временную ссылку взять с сайта загрузки, при вводе лицензионного ключа 
Остановите WNAM:
systemctl stop wnam

Далее следует проверить, что сервер остановлен, используя команду:

ps ax | grep wnam

Затем необходимо перенести дистрибутив:

mv /tmp/wnam.war /home/wnam
chmod +x /home/wnam/wnam.war
chown wnam:wnam /home/wnam/wnam.war

А затем обновить конфигурацию сервисов:

systemctl daemon-reload

И запустить систему WNAM:

systemctl start wnam

После запуска системы следует проверить, что дистрибутив загружается:

tail -f /home/wnam/logs/console.log /home/wnam/logs/wnam.log 

После выполненных действий следует проверить работу веб-интерфейса, а затем - авторизацию абонентов.

Обновление системы (версии с 1.2 до 1.4)

Обновление системы WNAM с версии 1.2 до версии 1.3 требует перехода с java7 на java8 и перехода tomcat7 на tomcat8. Обязательно следует удалить старые пакеты и проверить, что работают новые. 

Для обновления java до версии 8 в Debian Jessie необходим репозиторий backports. Далее следует добавить строку в конец файла /etc/apt/sources.list

deb http://http.debian.net/debian jessie-backports main

 и выполнить:

apt-get update
apt-get install openjdk-8-jre-headless openjdk-8-jdk
update-java-alternatives -s java-1.8.0-openjdk-amd64

При обновлении версии java необходимо убедиться, что старая версия не используется по умолчанию. Подробная информация по установке ПО представлено в соответствующем разделе настоящей документации (инструкция по установке).

Далее необходимо произвести резервное копирование БД системы, как написано выше (при помощи mongodump).

Затем создать резервную копию приложения WNAM, которое установлено в папке веб-приложений:

cp /var/lib/tomcat7/webapps/ROOT.war /root/ROOT.war.`date +"%d-%m-%Y"`

При этом копировать все папки самого развернутого приложения (/var/lib/tomcat7/webapps/ROOT/*) не требуется, так как вся информация, включая настройки и шаблоны страниц, хранится в БД.

Далее следует проверить, что все скрипты и базовые конфигурационные файлы, которые используются, соответствуют актуальным версиям, расположенным по адресу: http://www.netams.com/files/wnam/misc/. Особое внимание следует уделить скрипту-связке WNAM и FreeRADIUS: wnam-freeradius-bridge.pl. При необходимости следует скопировать его в /etc/freeeradius и перезапустить сервис:

service freeradius restart

После перезапуска сервиса следует остановить веб-сервис tomcat:

service tomcat7 stop

и удалить старое приложение и старые лог-файлы:

rm -rf /var/lib/tomcat7/webapps/* /var/log/tomcat7/*

Необходимо переписать новый дистрибутив системы WNAM из предварительно загруженного на сервер скаченного файла /root/ROOT.war в его целевое место:

cp /root/ROOT.war /var/lib/tomcat8/webapps/ROOT.war

и запустить веб-сервер:

service tomcat8 start

Распаковка нового приложения произойдет автоматически, не потребуется ничего распаковывать самостоятельно.

Далее следует проверить, что приложение корректно запустилось, просмотрев в конец лог-файла /var/log/tomcat8/wnam.log, там должны появиться подобные строки:

23:33:52.370 DEBUG [c.n.w.s.s.UserAuthenticationProvider:56] - UserAuthenticationProvider init at 26.10.2015 23:33:52
23:33:52.657 DEBUG [com.netams.wnam.services.OuiService:30] - OuiService start
23:33:53.025 DEBUG [com.netams.wnam.services.OuiService:70] - OUI cache load: 368 ms., size=20653
23:33:53.133 DEBUG [com.netams.wnam.services.SmsService:63] - gammu_path=
23:33:53.139 INFO [com.netams.wnam.services.SmsService:124] - SmsService started
23:33:53.141 DEBUG [c.netams.wnam.manager.LicenseManager:98] - LicenseManager start
23:33:53.146 DEBUG [c.netams.wnam.manager.LicenseManager:117] - License key: XXXX-XXXX-XXXX-XXXX
23:33:53.148 DEBUG [c.netams.wnam.manager.LicenseManager:177] - checkLicenseKeyOnServer key='XXXX-XXXX-XXXX-XXXX'
23:33:53.642 DEBUG [c.netams.wnam.manager.LicenseManager:225] - checkLicenseKeyOnServer returned license with key XXXX-XXXX-XXXX-XXXX
23:33:53.642 DEBUG [c.netams.wnam.manager.LicenseManager:136] - checkForLicensing: valid license key XXXX-XXXX-XXXX-XXXX
23:33:53.643 DEBUG [c.netams.wnam.manager.LicenseManager:159] - checkForLicensing: issued='Wed Sep 09 13:07:18 MSK 2015', expires='Tue Oct 01 13:06:07 MSK 2024', isTrialPeriodEnded=false
23:33:53.749 INFO [c.n.wnam.services.BluesocketService:56] - BluesocketService started
23:33:53.761 INFO [c.n.wnam.services.LinuxCPService:84] - LinuxCPService started
23:33:53.769 DEBUG [c.n.wnam.services.StatisticService:98] - StatisticService start
23:33:53.775 INFO [c.netams.wnam.services.UnifiService:69] - UnifiService started
23:33:53.782 DEBUG [c.n.wnam.services.WnamFlowService:62] - WnamFlowService start
23:33:53.800 DEBUG [c.n.wnam.services.WnamCmdService:124] - WnamCmdService start
23:33:53.818 DEBUG [c.n.wnam.services.NetFlowV5Service:66] - NetFlowV5Service start

В лог-файле не должно быть никаких сообщений со словами Exception. Если всё в порядке, и веб-интерфейс системы WNAM открывается, то работу по обновлению можно считать законченной. Рекомендуется проверить работу авторизации на одной из существующих площадок и получить подтверждение от абонентов или сотрудников.

Если необходим переход со старой версии системы WNAM, необходимо также проверить и обновить страницы портала пользователя.


Обновление системы WNAM с версии ранее 1.3.1052 на более позднюю версию требует: