Если вы забыли пароль пользователя admin, его можно сбросить в значение по умолчанию ("admin") путём прямой модификации записи в базе данных. Для этого на сервере WNAM от пользователя root выполните команды:
mongo wnam_db
db.webinterfaceusers.update( { _id: "admin"} , { $set : { "password" : "d2abaa37a7c3db1137d385e1d8c15fd2"} } )
Поскольку по умолчанию все объекты в базе данных mongdb хранятся неограниченное время, в нагруженной системе возможна генерация очень большого числа событий, которые занимают место в коллекции логов (cmdServiceLogs).
Mongodb обладает способностью автоматически удалять объекты из коллекции, если превышено время их жизни.
Для установки времени жизни сообщений в логах =14 дней создайте новый индекс:
mongo wnam_db
db.cmdServiceLogs.createIndex( { "time": 2 }, { expireAfterSeconds: 1209600 } );
14 дней - это 60*60*24*14 = 1209600 секунд.
Для выполнения резервного копирования создайте скрипт, и вызывайте его раз в сутки (ночью):
rm -rf /backup/wnam_db
mongodump -d wnam_db -o /backup
mv /backup/wnam_db /backup/wnam_db_`date +"%d-%m-%Y"`
Желательно, чтобы раздел /backup/ находился на физически другом жёстком диске.
Для работы WNAM используются следующие порты и протоколы, которые необходимо настроить на межсетевом экране вашего сервера, или промежуточных межсетевых экранах:
Протокол и порт | Направление | Назначение |
---|---|---|
tcp/80 | к серверу | веб-интерфейс администратора |
tcp/443 | к серверу | пользовательские страницы портала (авторизация и реклама) при использовании портала HTTPS (Mikrotik) |
udp/1812 | к серверу | запросы авторизации от RADIUS-клиентов к RADIUS-серверу |
udp/1813 | к серверу | сообщения аккаунтинга от RADIUS-клиентов к RADIUS-серверу |
tcp/8728 | от сервера | запросы на определение DHCP-идентификаторов абонентов (к маршрутизаторам Mikrotik через API) |
tcp/443, tcp/3000 | от сервера | авторизация абонента и запросы на определение их DHCP-идентификаторов (к контроллеру Bluesocket) |
tcp/443 | от сервера | проверка действительности лицензии WNAM на серверах ООО "Нетамс" |
tcp/20001 | к серверу | трафик запросов от скриптов wnam-* (например, работы с freeradius) до сервера WNAM (обычно через localhost) |
udp/20001 | к серверу | трафик статистики от unix-агентов, которые разбирают HTTP трафик в поиске посещенных URL |
udp/20002 | к серверу | трафик статистики Netflow v5 от маршрутизаторов (серверов) доступа |
Внимание! Обновление WNAM с версии 1.2 до версии 1.3 требует перехода с java7 на java8 и tomcat7 на tomcat8. Обязательно удалите старые пакеты и проверьте, что работают новые.
Проведите резервное копирование базы данных системы, как написано выше (при помощи 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/wnam.war в его целевое место, под именем ROOT.war:
cp /root/wnam.war /var/lib/tomcat7/webapps/ROOT.war
Внимание! Надо не забыть переименовать файл дистрибутива!
Запустите веб-сервер:
service tomcat7 start
Распаковка нового приложения произойдет автоматически, вам не требуется ничего распаковывать самостоятельно.
Проверьте, что приложение корректно запустилось, просмотрев в конец лог-файла /var/log/tomcat7/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, необходимо также проверить и обновить страницы портала пользователя.