Подготовка к установке
Для установки SoftWLC в минимальной конфигурации нам понадобится сервер со следующими параметрами:
- Оперативная память не менее 10 Гб
- CPU >= 2200MHz
- Память жесткого диска >= 35Gb
- Выход в Интернет
- Операционная система Astra 1.7.4
Подробнее о требованиях к серверу смотрите здесь
Проверяем оперативную память:
free -m
total used free shared buffers cached
Mem: 7985 409 7575 0 12 228
-/+ buffers/cache: 168 7816
Swap: 0 0 0
Проверяем CPU:
lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 2
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 60
Stepping: 3
CPU MHz: 3294.301
BogoMIPS: 6588.60
L1d cache: 32K
L1d cache: 32K
L2d cache: 6144K
NUMA node0 CPU(s): 0,1
Проверяем память жесткого диска:
df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 12K 3.9G 1% /dev
tmpfs 799M 436K 799M 1% /run
/dev/sda1 40G 1.4G 37G 4% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
none 5.0M 0 5.0M 0% /run/lock
none 3.9G 0 3.9G 0% /run/shm
none 100M 0 100M 0% /run/user
none 901G 113G 789G 13% /vagrant
Проверяем версию ОС:
cat /etc/lsb-release
DISTRIB_ID="AstraLinux"
DISTRIB_DESCRIPTION="Astra Linux 1.7 x86-64"
DISTRIB_RELEASE=1.7_x86-64
DISTRIB_CODENAME=1.7_x86-64
Проверяем выход в Интернет:
ping eltex.nsk.ru
PING eltex.nsk.ru (62.109.0.175) 56(84) bytes of data.
64 bytes from mail.eltex.nsk.ru (62.109.0.175): icmp_seq=1 ttl=55 time=52.8 ms
64 bytes from mail.eltex.nsk.ru (62.109.0.175): icmp_seq=2 ttl=55 time=47.6 ms
64 bytes from mail.eltex.nsk.ru (62.109.0.175): icmp_seq=3 ttl=55 time=46.4 ms
64 bytes from mail.eltex.nsk.ru (62.109.0.175): icmp_seq=4 ttl=55 time=46.5 ms
64 bytes from mail.eltex.nsk.ru (62.109.0.175): icmp_seq=5 ttl=55 time=46.3 ms
^C
--- eltex.nsk.ru ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 46.398/47.977/52.889/2.516 ms
Начиная с версии 1.28 SoftWLC точки доступа realtek (WEP-200l,WEP/WOP-2L/30L, WEP-1L, WOP-30LS/30L-ex) необходимо обновить на версию 2.3.0 и выше, точки доступа wep-3ax на версию 1.11 и выше.
Инструкция по обновлению: v1.33_Обновление ПО ТД через SoftWLC
Запросить данное ПО можно через Service Desk или через заявку на нашем официальном сайте.
Установка
Подключение репозиториев Элтекс
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/eltex.gpg] http://archive.eltex-co.ru/wireless softwlc-1.31-astra-1.7 main" | sudo tee -a /etc/apt/sources.list.d/eltex.list
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/eltex.gpg] http://archive.eltex-co.ru/wireless softwlc-1.31-common main" | sudo tee -a /etc/apt/sources.list.d/eltex.list
Добавление цифровой подписи
sudo wget -O - http://archive.eltex-co.ru/wireless/repo.gpg.key | sudo apt-key add -
--2020-09-17 05:01:57-- http://archive.eltex-co.ru/wireless/repo.gpg.key
Распознаётся archive.eltex-co.ru (archive.eltex-co.ru)... 172.16.5.22
Подключение к archive.eltex-co.ru (archive.eltex-co.ru)|172.16.5.22|:80... соединение установлено.
HTTP-запрос отправлен. Ожидание ответа... 200 OK
Длина: 1704 (1,7K) [application/octet-stream]
Сохранение в каталог: ««STDOUT»».
- 100%[========================================================================================================================>] 1,66K --.-KB/s in 0s
/2020-09-17 05:01:57 (142 MB/s) - записан в stdout [1704/1704]
OK
Получение ключа GPG
sudo wget https://nginx.org/keys/nginx_signing.key
Добавление ключа GPG в набор ключей apt sources
sudo apt-key add nginx_signing.key
Подключение репозиториев Nginx
sudo echo "deb http://nginx.org/packages/debian/ buster nginx" > /etc/apt/sources.list.d/nginx.list # данный репозиторий нужно выбирать в зависимости от версии ОС. (bionic/buster/focal/jammy)
Поиск и установка обновлений пакетов
sudo apt-get update
...
Fetched 12.1 MB in 19s (624 kB/s)
Reading package lists... Done
Устанавливаем БД Mysql необходимой версии
sudo
apt-get install -y libmecab2sudo
apt-get install -y daemonsudo
apt-get install -y mysql-client=5.7.42-1debian10sudo
apt-get install -y mysql-common=5.7.42-1debian10 --allow-downgradessudo
apt-get install -y mysql-community-server=5.7.42-1debian10sudo
apt-get install -y libmysqlclient20=5.7.42-1debian10
Устанавливаем OpenJDK 17
sudo apt install temurin-17-jdk
Прописываем использование OpenJDK 8 по умолчанию (на случай, если доступны другие пакеты)
sudo update-alternatives --set java /usr/lib/jvm/temurin-17-jdk-amd64/bin/java
Установка дополнительных пакетов
sudo apt-get --yes install libcurl4
sudo apt-get --yes install libssl1.1
sudo apt-get --yes install expect psmisc ntp tftp-hpa tftpd-hpa snmpd syslog-ng snmp curl libpcap0.8 fping vsftpd lockfile-progs libstdc++6 zlib1gsudo apt-get --yes install net-tools
Установка syslog
sudo
apt-get install syslog-ng-mod-sql
sudo
systemctl restart syslog-ng
Установка tomcat9
sudo apt-get --yes install tomcat9
Настройка БД для syslog
Подключаемся к mysql через команду mysql -uroot -proot
и вводим команды ниже
Создаем необходимые таблицы в БД
mysql --login-path=local -uroot -proot -se 'SHOW DATABASES LIKE '\''Syslog'\'';'
mysql --login-path=local -DSyslog -uroot -proot -se 'SHOW TABLES LIKE '\''SystemEvents'\'';'
mysql --login-path=local -DSyslog -uroot -proot -se 'SHOW CREATE TABLE SystemEvents;'
Добавление права на доступ к Бд Syslog javauser-у
mysql -uroot -proot -e 'GRANT ALL ON Syslog.* TO '\''javauser'\''@'\''localhost'\'' IDENTIFIED BY '\''javapassword'\'''
mysql -uroot -proot -e 'GRANT ALL ON Syslog.* TO '\''javauser'\''@'\''127.0.0.1'\'' IDENTIFIED BY '\''javapassword'\'''
В файл конфигурации для syslog-ng-mod-sql etc/syslog-ng/conf.d/10-mysql.conf добавляем следующие строки
### Configuration file for syslog-ng-mod-sql
### Changes are preserved
source src_rem { udp(port(514));
tcp(port(514)); };
destination d_mysql {
program("/usr/bin/mysql --user=javauser --password='javapassword' Syslog < /var/log/mysql.pipe");
pipe ("/var/log/mysql.pipe"
template("insert into SystemEvents (Message, Facility,FromHost, FromHostIp, Priority, DeviceReportedTime,
ReceivedAt, InfoUnitID, SysLogTag) values ('$MSGONLY', $FACILITY_NUM, '$HOST_FROM', INET_ATON('$SOURCEIP'),
$PRI, '$S_YEAR-$S_MONTH-$S_DAY $S_HOUR:$S_MIN:$S_SEC', '$R_YEAR-$R_MONTH-$R_DAY $R_HOUR:$R_MIN:$R_SEC',
1, '$TAGS');")
template-escape(yes)); };
log { source(src_rem); destination(d_mysql); };
Перезапускаем syslog
sudo service syslog-ng restart
Указываем переменную окружения JAVA_HOME для tomcat
sudo echo "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> /etc/default/tomcat9 # версия tomcat в зависимости от ОС
Установка часового пояса
cp /usr/share/zoneinfo/Asia/Novosibirsk /etc/localtime
sudo ln -s /usr/share/java/ecj.jar /var/lib/tomcat9/lib #версия tomcat в зависимости от ОС
Выделение дополнительной оперативной памяти для Java
sudo echo "JAVA_OPTS=\"${JAVA_OPTS} -server -Xms512m -Xmx2048m -XX:-UseParallelGC -XX:+UseConcMarkSweepGC -XX:+AggressiveOpts\"" >> /etc/default/tomcat9 # версия tomcat в зависимости от ОС
Для корректной работы tomcat9
sudo apt-get install libecj-java
Изменяем порт tomcat с 8080 на 8081
sudo sed -i 's/8080/8081/' /etc/tomcat9/server.xml # версия tomcat в зависимости от ОС
Установка пакета для интерпретации MAC-адресов в имена вендоров
sudo apt-get install eltex-oui-list
Установка фреймворка для работы службы SOAP/XML (Apache Axis)
sudo apt-get install eltex-axis
Установка схемы в БД MySQL для службы 'eltex-ems'
sudo apt-get install eltex-ems-db
...
Enter your MySQL administrator password: root
Enable remote access to database? (y/N) y
...
Select default language for EMS:
1. Russian
2. English (default)
Enter number: 1
Using locale ru_RU
mysql: [Warning] Using a password on the command line interface can be insecure.
Select access control type:
1 - Role based
2 - Domain based (default)
Enter number: 2
Using domain based access control
Enter root domain name (default is 'root'): root
Please restart EMS manually with "service eltex-ems restart"
Установка модифицированной схемы в БД MySQL для службы RADIUS
sudo apt-get install eltex-radius-db
...
Enter your MySQL administrator login (default is 'root'): root
Enter your MySQL administrator password: root
Creating database ...
mysql: [Warning] Using a password on the command line interface can be insecure.
. . .
mysql: [Warning] Using a password on the command line interface can be insecure.
Preparing database ...
mysql: [Warning] Using a password on the command line interface can be insecure.
mysql: [Warning] Using a password on the command line interface can be insecure.
Enter root domain name (default is 'root'): root
mysql: [Warning] Using a password on the command line interface can be insecure.
Tariff 'default' has been successfully created
mysql: [Warning] Using a password on the command line interface can be insecure.
Do you want to add ThreeYearsRadacct monitor to cron? [Y/n] Y
CRON server will be restarted with "service cron restart"
Please restart RADIUS server manually with "service eltex-radius restart"
По окончанию установки в системе будет создан тарифный план "Hotspot Default" для портальной авторизации с параметрами:
- Код тарифа: default
- Домен: root
- Установлен флаг портальной аутентификации
- Продолжительность: 10 минут
- Лимит скорости Downstream и Upstream 1 Мбит/c
Этот тариф привязывается к порталу Default в Конструкторе порталов
Установка БД авторизации сервисов eltex-wifi-cab, eltex-radius-nbi, eltex-portal-constructor
sudo apt-get install eltex-auth-service-db
...
Enter your mysql administrator login (default is 'root'): root
Enter your mysql administrator password: root
Creating database 'eltex_auth_service'
Create remote database user? (y/N) y
Database 'eltex_auth_service' successfully created
Enter root domain [root]:
Create default auth-user:
Set login [admin]:
Set password [password]:
Default auth-user 'admin' created successfully
Set service user password [softwlc]:
Service user 'softwlc_service' created successfully. Please, check it at '/etc/eltex-wifi-cab/system.xml' on your 'Eltex Wi-Fi customer cabinet' host.
Create default auth-nas (for eltex-wifi-cab):
Set eltex-wifi-cab ip address (leave empty if 127.0.0.1):
Default auth-nas '127.0.0.1' created successfully
Установка пакета eltex-ems
sudo apt-get install eltex-ems
...
Replace config files:
- /etc/default/tftpd-hpa:
Replace /etc/default/tftpd-hpa? (type 'd' to view diff) [y/N/d] y
File /etc/default/tftpd-hpa is overwritten.
Restarting tftpd-hpa..
- /etc/vsftpd.conf:
Replace /etc/vsftpd.conf? (type 'd' to view diff) [y/N/d] y
File /etc/vsftpd.conf is overwritten.
Restarting vsftpd..
- /etc/snmp/snmpd.conf:
Replace /etc/snmp/snmpd.conf? (type 'd' to view diff) [y/N/d] y
File /etc/snmp/snmpd.conf is overwritten.
Restarting snmpd..
- /etc/rsyslog.conf:
Replace /etc/rsyslog.conf? (type 'd' to view diff) [y/N/d] y
File /etc/rsyslog.conf is overwritten.
- /etc/rsyslog.d/50-default.conf:
Replace /etc/rsyslog.d/50-default.conf? (type 'd' to view diff) [y/N/d] y
File /etc/rsyslog.d/50-default.conf is overwritten.
- /etc/rsyslog.d/mysql.conf:
Replace /etc/rsyslog.d/mysql.conf? (type 'd' to view diff) [y/N/d] y
File /etc/rsyslog.d/mysql.conf is overwritten.
Restarting service rsyslog..
Установка пакета eltex-radius
sudo apt-get install eltex-radius
Установка пакета eltex-radius-nbi для стыка SoftWLC с вышестоящими OSS/BSS
sudo apt-get install eltex-radius-nbi
...
Do you want to generate server certificate? [y/N]: y
Skip generating server certificate
- Reconfigure file '/etc/eltex-radius-nbi/radius_nbi_config.txt'
SoftWLC Northbound is installed. Tomcat service will be restarted...
To check the service works, open the URL:
http://localhost:8080/axis2/services/RadiusNbiService?wsdl
To read documentation, visit the following URL:
http://localhost:8080/eltex-radius-nbi/asciidoc/
Обрабатываются триггеры для libc-bin (2.23-0ubuntu11) …
Установка пакета eltex-ngw
sudo apt-get install eltex-ngw
Создание базы данных уведомлений eltex-ngw
sudo eltex-ngw create-db-user
...
Creating database user "javauser"
Enter your mysql administrator login (default is 'root'): root
Enter your mysql administrator password (root):
Database user created
Установка пакета eltex-apb
sudo apt-get install eltex-apb
Установка сервиса ААА (Authentication Authorization and Accounting) для Wi-Fi пользователей, подключающихся при помощи BRAS
sudo apt-get install eltex-pcrf
Установка сервиса журналирования 'Hotspot' учетных записей
sudo apt-get install eltex-logging-service
Установка сервиса для управления учетными записями Hotspot-пользователей
sudo apt-get install eltex-mercury
Установка портала для авторизации клиентов WiFi в схеме 'Hotspot'
sudo apt-get install eltex-portal
Установка конструктора порталов
sudo apt-get install eltex-portal-constructor
Создание базы данных портала
sudo
bash /usr/lib/eltex-portal/db_utils.sh create_db_user
Установка личного кабинета B2B, интерфейса управления
sudo apt-get install eltex-wifi-cab
Установка сервиса удаления сессии пользователя
sudo apt-get install eltex-disconnect-service
Установка API для управляемого предоставления услуги Wi-Fi
sudo apt-get install eltex-johnny
Установка сервиса проверки подлинности пользователя через токены
sudo apt-get install eltex-doors
Создание базы данных eltex-doors
sudo bash /usr/lib/eltex-doors/db_utils.sh create_db_user
Установка менеджера задач
sudo apt-get install eltex-bruce
Установка сервиса выполнения задач и создания отчетов по ним
sudo apt-get install eltex-jobs
Получение конфигурации nginx
sudo wget http://archive.eltex-co.ru/wireless/nginx/conf/softwlc_1.27_nginx.conf -O softwlc_1.27_nginx.conf
Установка Nginx
sudo apt-get install nginx
Копирование конфигурации nginx в нужный каталог
cp softwlc_1.27_nginx.conf /etc/nginx/conf.d/softwlc.conf
Перезапуск сервисов Nginx и tomcat9
sudo service nginx restart
sudo service tomcat9 restart
После установки всех сервисов Eltex, следует перезагрузить все сервисы или перезагрузить весь сервер на который устанавливался контроллер.
Начиная с версии 1.28 SWLC управление точками доступа realtek (wep-200l,wep/wop-2l/30l, wep-1l, wop-30ls/30l-ex) доступно только с версии 2.3.0 и выше, точкими доступа esdk (wep-3ax) с версии 1.11 и выше
Установка лицензии для Eltex EMS
Лицензионный файл для пакета Eltex EMS license.xml содержит информацию количестве и типе устройств, с которыми может работать EMS. Данный файл предоставляется Коммерческими подразделениями компании Элтекс или ее партнерами.
cp licence.xml /usr/lib/eltex-ems/conf/licence/
service eltex-ems restart