GenieACS
GenieACS is a high performance Auto Configuration Server (ACS) for remote
management of TR-069 enabled devices. It utilizes a declarative and fault
tolerant configuration engine for automating complex provisioning scenarios at
scale. It’s battle-tested to handle hundreds of thousands and potentially
millions of concurrent devices.
Quick Start
Install Node.js and MongoDB.
Refer to their corresponding documentation for installation instructions. The
supported versions are:
- Node.js: 12.3+
- MongoDB: 3.6+
Install GenieACS from NPM:
sudo npm install -g genieacs
To build from source instead, clone this repo or download the source archive
then cd into the source directory then run:
npm install
npm run build
Finally, run the following services (found under ./dist/bin/
if building from
source):
genieacs-cwmp
This is the service that the CPEs will communicate with. It listens on port 7547
by default. Configure the ACS URL in your devices accordingly.
You may optionally use genieacs-sim
as a dummy TR-069 simulator if you don’t have a CPE at hand.
genieacs-nbi
This is the northbound interface module. It exposes a REST API on port 7557 by
default. This one is only required if you have an external system integrating
with GenieACS using this API.
genieacs-fs
This is the file server from which the CPEs will download firmware images and
such. It listens on port 7567 by default.
genieacs-ui
This serves the web based user interface. It listens on port 3000 by default.
You must pass —ui-jwt-secret argument to supply the secret key used for
signing browser cookies:
genieacs-ui --ui-jwt-secret secret
The UI has plenty of configuration options. When you open GenieACS’s UI in a
browser you’ll be greeted with a database initialization wizard to help you
populate some initial configuration.
Visit docs.genieacs.com for more documentation and
a complete installation guide for production deployments.
Support
The forum is a good place to get guidance and help
from the community. Head on over and join the conversation!
For commercial support options, please visit
genieacs.com.
License
Copyright 2013-2021 GenieACS Inc. GenieACS is released under the
AGPLv3 license terms.
Время на прочтение5 мин
Количество просмотров9K
Данная статья является логическим продолжением экспериментов с тестовым сервером FreeACS. Тогда я влюбился в этот инструмент, и обещал немногочисленным комментаторам довести дело до продакшн. Так что, сегодня мы установим сервер, настроим до рабочего состояния и прикрутим ssl-сертификат. А во второй части — разберем настройки и режимы, прогоним основные рабочие сценарии обслуживания устройств Mikrotik и слегка коснемся автоконфигурации IP-телефонов.
Перед стартом, хочу кратко напомнить основные постулаты:
1. Протокол TR-069 используется десятками миллионов устройств, и, де факто, является стандартом для обновления ПО, диагностики и конфигурации сетевого оборудования. В документации FreeACS, необходимые системные требования к серверу начинаются с 50 тыс. обслуживаемых устройств, и заканчиваются на 2 млн. Это могучий специализированный инструмент.
2. Системы управления конфигурациями (SCM), такие как Ansible, могут быть использованы, в том числе, для удаленного выполнения команд и скриптов в RouterOS, но не являются альтернативой ACS.
3. Проблемы безопасности TR-069 кратко описаны здесь, и состоят в том, что протокол предполагает использование шифрования, но не обязывает. Поэтому 80% устройств передают данные открыто, а часть использует самоподписанные сертификаты. Не надо так.
Часть1. Установка FreeACS + SSL
0. Подготовка
Ресурсы: Минимум 4 GB RAM, 10 GB HDD, Centos 7/8
Домен: Сервер будет доступен из Интернет, поэтому необходимо купить домен или добавить DNS-запись поддомена, указывающую на внешний ip-адрес FreeACS. И соответственно настроить FQDN имя хоста.
Сертификат: Если у вас уже есть рабочий домен и доступен какой-то из способов проверки подлинности сертификата — можно сразу выпустить сертификат. Я использовал самый дешевый Sectigo Positive SSL, доступный повсеместно за 500-1000 руб./год
Если рабочего домена нет — выпустим сертификат после установки сервера, с проверкой по Хэш-файлу. Идеи с Letsencrypt и иже с ним — «экономия на спичках».
1. Установка FreeACS
Как и в предыдущей статье, проще всего это сделать скриптом.
wget https://raw.githubusercontent.com/freeacs/freeacs/master/scripts/install_centos.sh
chmod +x install_centos.sh
./ install_centos.sh
Скрипт установит все необходимое. Останется лишь немного доработать.
# Установить часовой пояс
timedatectl set-timezone Asia/Novosibirsk
# Установить Xorg-fonts. Без этого, в веб-интерфейсе не будет графиков
yum -y install xorg-x11-fonts-misc
# MySQL часовой пояс и лимиты. Без этого в веб-интерфейсе будет UTC и файлы не загрузятся
# /etc/my.cnf
default-time-zone='+07:00'
max_allowed_packet=32M
innodb_buffer_pool_size=1024M
Проверьте работу веб-интерфейса по http://<серый адрес хоста>, смените дефолтный пароль и можно ехать дальше
2. Nginx
Пора настроить Nginx. Если вы еще не получили сертификат — давайте его получать и подтверждать.
Например, вы купили домен mydomain.ru, настроили DNS запись acs и заказали сертификат для acs.mydomain.ru с подтверждением владения по Хэш-файлу.
Поставщик предоставит информацию, типа:
Хеш файл должен быть доступен по адресу:
http://mydomain.ru/.well-known/pki-validation/5C7E984684D01FAF787171DB395A6F4A.txt
Содержимое файла:
75D5AB94B09B408A2A7DD93696BA69B736CA8A5E0DFD80DBB45186EF70AB1A77
comodoca.com
Т.е. проверка сертификата поддомена acs проходит через подтверждение владением доменом 2-го уровня, и если на нем у вас уже есть какой-то веб-ресурс, то файл надо разместить там.
Если такого нет, то Хэш-файл можно разместить на сервере с FreeACS, предварительно изменив DNS-запись mydomain.ru. Надо создать директорию с данным файлом:
mkdir -p /var/www/.well-known/pki-validation
vi /var/www/.well-known/pki-validation/5C7E984684D01FAF787171DB395A6F4A.txt
#сюда аккуратно скопировать содержимое
И добавить дополнительную секцию server в конфиге Nginx. Удобно сделать нестандартный порт, чтобы потом открыть наружу по http только нужное
# /etc/nginx.conf
...
server {
listen 8044;
server_name mydomain.ru;
location /.well-known/pki-validation/ {
root /var/www/;
}
...
После рестарта Nginx и проброса 80 внешнего порта на порт 8044 хоста FreeACS, файл .http://mydomain.ru/.well-known/pki-validation/5C7E984684D01FAF787171DB395A6F4A.txt должен быть виден из интернета. А значит, как только пройдет проверка, поставщик выдаст вам сертификат, цепочку промежуточных сертификатов и закрытый ключ. Будет что-то типа acs_mydomain_ru.crt, acs_mydomain_ru.ca-bundle и 11005566.key
Для Nginx сертификаты надо слепить, ключ переименовать, и оба файла положить в /etc/pki
cat acs_mydomain_ru.crt acs_mydomain_ru.ca-bundle > acs_mydomain_ru.chained.crt
mv 11005566.key acs_mydomain_ru.key
cp acs_mydomain_ru.chained.crt /etc/pki
cp acs_mydomain_ru.key /etc/pki
Теперь добавим ssl в конфиг Nginx. Порт для проксирования TR-069 будет тоже нестандартным 8099.
На данном этапе, весь конфиг будет выглядеть как-то так:
events {
worker_connections 19000;
}
http {
client_max_body_size 32m;
server {
listen 8099 ssl;
server_name acs.mydomain.ru;
# SSL
ssl_certificate /etc/pki/acs_mydomain_ru.chained.crt ;
ssl_certificate_key /etc/pki/acs_mydomain_ru.key;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
#ssl connections for CPE
location /tr069/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header HTTPS YES;
proxy_headers_hash_max_size 512;
proxy_headers_hash_bucket_size 128;
proxy_pass http://localhost:8085/tr069/;
}
}
server {
#SSL hash check
listen 8044;
server_name mydomain.ru;
location /.well-known/pki-validation/ {
root /var/www/;
}
}
server {
listen 80;
server_name 10.110.0.117;
location = / {
return 301 /web/index;
proxy_headers_hash_max_size 512;
proxy_headers_hash_bucket_size 128;
}
location /tr069/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_headers_hash_max_size 512;
proxy_headers_hash_bucket_size 128;
proxy_pass http://localhost:8085/tr069/;
}
location /web/ {
proxy_pass http://localhost:8081/web/;
proxy_headers_hash_max_size 512;
proxy_headers_hash_bucket_size 128;
}
location /monitor/ {
proxy_pass http://localhost:8090/monitor/;
}
location /webservice/ {
proxy_pass http://localhost:8088/webservice/;
}
location /syslog/ {
proxy_pass http://localhost:8086/syslog/;
}
location /core/ {
proxy_pass http://localhost:8083/core/;
}
location /stun/ {
proxy_pass http://localhost:8087/stun/;
}
}
}
Перезапускаем Nginx. Пробрасываем 8099 на хост с FreeACS. Теперь у нас есть сервер, который может обслуживать клиентов TR-069 по адресу: .https://acs.mydomain.ru:8099/tr069/prov
Откройте этот адрес в браузере из Интернет. Если в ответ выдается 404 с валидным сертификатом, то пора пробовать подключать устройства.
Для начала надо включить автоопределение моделей устройств.
#/opt/freeacs-tr069/config/application-config.conf
# Discovery Mode can be set to true if you want to automatically add a new
# unittype and unit. This mode is violating the security of the system,
# because it allows unknown units to connect and then changes will be performed
# in the database. So use this option with caution, preferably when you want to
# add a new unittype to the system. Default is false.
#discovery.mode = false
discovery.mode = true
Потом эту опцию можно будет отключить, завести второй сервер для обучения новым моделям, а потом переносить на прод через экспорт/импорт, но для старта она очень полезна.
На вашем пробном Mikrotik надо импортировать сертификат, который мы делали для Nginx — acs_mydomain_ru.chained.crt в System/Certificates/Import.
Затем поставить пакет tr069-client и указать ACS URL: .https://acs.mydomain.ru:8099/tr069/prov Username:<серийный номер>. И готово.
По нажатию Apply, устройство соединится с сервером по https, в окошке изменится Periodic inform interval, а на сервере появится новый Unit type и, соответственно, Unit
На этом первая часть закончена. У нас есть рабочий сервер автоконфигурации, обслуживающий устройства по защищенному соединению на отдельном порту, который легко мониторить. Во второй части будут картинки, скрипты и опыт боевой работы с устройствами.
Спасибо всем, кто читал. Буду рад любым комментариям и поправкам.
Содержание
- Как использовать ACS сервер TR-069 в Windows
- Как установить и настроить ACS сервер TR-069 на Windows
- Подробное руководство по установке и настройке ACS сервера TR-069 на Windows
- Почему ACS сервер TR-069 важен для управления сетевыми устройствами
- Преимущества использования ACS сервера TR-069 на Windows
- Шаги по настройке ACS сервера TR-069 на Windows
Как использовать ACS сервер TR-069 в Windows
ACS сервер TR-069 для Windows – это инновационное решение, которое предоставляет удобные и эффективные способы управления сетевыми устройствами. В современном мире подключение различных устройств к сети становится все более распространенным. И чтобы обеспечить оптимальную работу всех этих устройств и упростить процесс их управления, необходимо иметь мощный и надежный сервер ACS.
TR-069 (Technical Report 069) — это стандарт, который определяет протокол и данные, необходимые для управления сетевыми устройствами, такими как маршрутизаторы, точки доступа Wi-Fi, модемы и другие. ACS сервер TR-069 для Windows предоставляет централизованный доступ к этим устройствам, позволяя настраивать, обновлять и управлять ими в удобном и эффективном режиме.
При использовании ACS сервера TR-069 для Windows вы получаете множество преимуществ. Во-первых, вы сможете легко настраивать и обновлять сетевое оборудование из единого интерфейса, что позволяет сэкономить время и упростить процесс. Во-вторых, сервер ACS позволяет мониторить состояние и производительность устройств, таким образом, вы сможете оперативно реагировать на любые проблемы или сбои в сети.
ACS сервер TR-069 для Windows также предоставляет возможности для удаленного управления устройствами. Это означает, что вы можете управлять сетевыми устройствами, находясь в любом месте с доступом в Интернет. Такая функция особенно полезна для IT-специалистов и администраторов сети, так как она позволяет минимизировать затраты на обслуживание и устранение неполадок.
В итоге, ACS сервер TR-069 для Windows является незаменимым инструментом для управления сетевыми устройствами. Он обеспечивает простоту использования, удобство и эффективность в управлении большим количеством устройств, что является важным фактором в современном информационном мире. Установите ACS сервер TR-069 для Windows и упростите процесс управления вашим сетевым оборудованием уже сегодня!
Как установить и настроить ACS сервер TR-069 на Windows
Шаг 1: Загрузка и установка ACS сервера TR-069
Первым шагом является загрузка и установка ACS сервера TR-069 на ваш компьютер, работающий под управлением операционной системы Windows. Вы можете найти ACS сервер TR-069 на официальном сайте вендора или на других надежных источниках. Ознакомьтесь с требованиями к системе, чтобы убедиться, что ваш компьютер соответствует этим требованиям. После загрузки программы ACS сервера TR-069 запустите установочный файл и следуйте инструкциям на экране для завершения установки.
Шаг 2: Конфигурация ACS сервера TR-069
После успешной установки ACS сервера TR-069 на ваш компьютер перейдите к его конфигурации. Откройте приложение ACS сервера TR-069 и перейдите к разделу настроек. В этом разделе вам потребуется ввести информацию о вашей сетевой инфраструктуре, включая IP-адреса, порты и другие параметры. Убедитесь, что вы правильно вводите эти данные, чтобы обеспечить корректное функционирование ACS сервера TR-069.
Шаг 3: Подключение клиентских устройств
После того, как ACS сервер TR-069 настроен, вы можете начать подключать клиентские устройства к серверу. Для этого вам может потребоваться перевести устройства в режим автоматической настройки или ввести соответствующие настройки на устройствах вручную. После подключения устройств ACS сервер TR-069 получит доступ к ним и вы сможете управлять ими удаленно.
Подробное руководство по установке и настройке ACS сервера TR-069 на Windows
Первым шагом в установке ACS сервера TR-069 является загрузка необходимого программного обеспечения. Вы можете найти его на официальном сайте производителя или использовать установщик, который был предоставлен вам. После завершения загрузки запустите установщик и следуйте инструкциям на экране для установки сервера на вашей системе Windows.
После установки ACS сервера TR-069 на вашем компьютере, вам необходимо выполнить настройку и настройку сервера. Вам понадобится доступ к панели управления сервером для этого. Запустите панель управления, используя соответствующую ярлык на рабочем столе или в меню «Пуск».
В панели управления вы найдете различные опции и настройки для настройки ACS сервера TR-069. Вам потребуется указать IP-адрес сервера и порт для обмена данными с удаленными устройствами. Также вы можете настроить параметры безопасности, чтобы гарантировать защиту сервера и данных в сети. Во время настройки обратите внимание на рекомендации и руководства пользователя, чтобы оптимально настроить сервер.
После завершения настройки и настройки ACS сервера TR-069, вы можете начать использовать его для управления удаленными устройствами в сети. Вам предоставляется возможность удаленной настройки и обновления устройств, а также мониторинг и диагностика проблем. ACS сервер TR-069 упрощает управление сотнями или даже тысячами устройств в вашей сети, обеспечивая гладкую работу и минимизацию времени простоя.
Почему ACS сервер TR-069 важен для управления сетевыми устройствами
ACS сервер TR-069 позволяет провайдерам интернет-услуг эффективно управлять своими сетевыми устройствами. Он обеспечивает удаленный доступ и контроль за устройствами в сети, позволяя провайдерам выполнять такие задачи, как настройка, мониторинг, обновление и диагностика устройств. Благодаря TR-069 провайдеры могут предложить более качественное обслуживание своим клиентам, обеспечивая непрерывную работу и безопасность их сетевых устройств.
Дополнительные преимущества ACS сервера TR-069 включают возможность управления устройствами множества различных производителей и моделей, что является важным фактором, учитывая разнообразие существующих устройств. TR-069 также упрощает и автоматизирует процессы обновления программного обеспечения и конфигурации устройств, что значительно экономит время и силы. Кроме того, сервер TR-069 обеспечивает защиту сетевых устройств от несанкционированного доступа и вредоносных программ, что является критическим фактором в современных условиях растущих угроз кибербезопасности.
- Универсальность
- Эффективность
- Удобство использования
В целом, ACS сервер TR-069 играет важную роль в управлении сетевыми устройствами, предоставляя провайдерам интернет-услуг эффективный инструмент для удаленного управления и контроля за устройствами в сети. Он обеспечивает провайдерам возможность предлагать своим клиентам надежное, безопасное и качественное обслуживание, что делает его неотъемлемой частью инфраструктуры IoT.
Преимущества использования ACS сервера TR-069 на Windows
Во-первых, ACS сервер TR-069 на Windows обладает высокой степенью совместимости. Он совместим с широким спектром устройств и производителей, что позволяет провайдерам предоставлять услуги управления и настройки множества различных устройств, в том числе роутеров, модемов, IP-телефонов и цифровых приемников. Это особенно актуально в современном мире, где существует множество различных типов и моделей устройств, поддерживаемых абонентами.
Во-вторых, ACS сервер TR-069 на Windows обеспечивает безопасность и защиту данных. Провайдеры могут управлять правами доступа и уровнями безопасности, чтобы предотвратить несанкционированный доступ к устройствам и конфиденциальной информации абонентов. ACS сервер также позволяет провайдерам устанавливать и обновлять программное обеспечение на устройствах, что помогает предотвратить уязвимости и обеспечивает защиту от вредоносных программ и вирусов.
Шаги по настройке ACS сервера TR-069 на Windows
-
Установка ACS сервера: Первым шагом является загрузка и установка ACS сервера на вашем компьютере под управлением Windows. После установки, вы можете запустить программу и приступить к настройке.
-
Настройка общих параметров: В процессе установки ACS сервера, вам будет предложено указать общие параметры для сервера, такие как порт, на котором будет работать сервер, а также имя и пароль администратора. Установите эти параметры в соответствии с вашими предпочтениями и требованиями системы.
-
Добавление устройств: Для управления устройствами в вашей домашней сети, вы должны добавить их в ACS сервер. Это можно сделать путем указания IP-адреса каждого устройства и других соответствующих параметров. После добавления устройств, вы сможете отслеживать и управлять ими с помощью ACS сервера.
-
Настройка политик и сервисов: ACS сервер позволяет настраивать политики и сервисы для устройств в домашней сети. Вы можете определить правила и условия для доступа к определенным ресурсам, установить ограничения на скорость или установить график работы для устройств. Эти настройки позволяют вам контролировать и оптимизировать работу сети.
Настройка ACS сервера TR-069 на Windows может быть немного сложной задачей, но следуя вышеуказанным шагам, вы сможете внедрить и настроить сервер эффективно. Управление устройствами в домашней сети станет более удобным и эффективным, позволяя вам контролировать и оптимизировать работу сети в соответствии с вашими требованиями и предпочтениями.
Одной из основных функций ACS сервера является возможность автоматической настройки сетевого оборудования. С помощью протокола TR-069 сервер может отправлять и получать информацию о состоянии устройств, осуществлять удаленное управление и поддерживать связь с устройствами через интернет. Это позволяет операторам эффективно управлять сетью, обнаруживать и исправлять возникшие проблемы, а также проводить диагностику устройств.
ACS сервер TR-069 также обладает множеством других полезных функций. Например, он позволяет управлять уровнем доступа пользователей к различным функциям устройств, создавать отчеты о работе и использовании сетевого оборудования, а также контролировать обновления программного обеспечения на устройствах.
Кроме того, ACS сервер TR-069 на Windows обеспечивает высокую степень безопасности и защиты данных. Он использует авторизацию и шифрование данных, чтобы гарантировать, что только авторизованные пользователи имеют доступ к устройствам и информации о них. Это особенно важно в условиях развития Интернета вещей, где защита данных становится все более актуальной задачей.
В целом, ACS сервер TR-069 на Windows представляет собой мощный инструмент для удаленного управления и настройки сетевых устройств. Он облегчает работу операторам, повышает эффективность сети и обеспечивает безопасность данных. Это делает его незаменимым инструментом для провайдеров интернет-услуг, а также для организаций, которые активно используют сетевое оборудование в своей деятельности.
Technical support and remote management of customer-premises equipment (CPE) devices have become essential for Communication service providers (CSPs), Internet service providers (ISPs), and network operators. TR-069, or the CPE WAN Management Protocol (CWMP), is a standardised protocol designed to facilitate the remote management of these devices. In this article, we’ll guide you through configuring TR-069 ACS on your device and connecting it to the ACS server.
Step 1: Access your device’s interface
-
Verify the device’s manual whether it offers a graphical user interface (GUI) or command line interface (CLI) and what port number is used.
-
Find out the device’s IP: WAN IP or local IP if connecting via WiFi/LAN.
-
Enter the device’s IP in your web browser or connect via SSH or Telnet.
-
provide respective credentials: available in the device’s manual or use previously configured ones.
Step 2: Configure ACS URL, ACS Username, and ACS Password
-
Locate the TR-069 settings. These may be found under the «Management» or «Advanced» settings tab.
-
Enter the following details provided by your ISP or ACS server administrator:
-
ACS URL: The server address where your device will connect to the ACS server.
-
ACS Username: The username required to authenticate your device with the ACS server.
-
ACS Password: The password required to authenticate your device with the ACS server.
-
-
Save your settings.
Step 3: Configure Connection Request Username and Connection Request Password
-
Still in the TR-069 settings, locate the «Connection Request» or «Connection Credentials» section.
-
Enter the following details provided by the ACS server administrator:
-
Connection Request Username: The username required for the ACS server to authenticate when initiating a connection request to your device.
-
Connection Request Password: The password required for the ACS server to authenticate when initiating a connection request to your device.
-
Step 4: Enable Periodic Inform and Set the Interval
-
Locate the «Periodic Inform» settings within the TR-069 settings.
-
Enable the «Periodic Inform» option by checking the box or toggling the switch.
-
Set the «Periodic Inform Interval» to 300 seconds (or 5 minutes) to ensure your device regularly connects to the ACS server.
-
Save your settings.
Step 5: Verify WAN Configuration (if necessary)
Some devices may require reconfiguration of WAN connections to enable TR-069 service on top of existing Internet or VoIP configurations. An example of such a device is the Huawei 8245H. If this applies to your device, consult your device’s documentation in reconfiguring your WAN connections.
Are you looking for a top-class ACS server that will match your needs perfectly? Discover our solutions for small&medium organizations and enterprises!
Итак, зачем всё это? Для порядка! и автоматизации.
Одна из головных болей провайдера это большой парк абонентских (оконечных) устройств (или даже “зоопарк”). Типичный дешёвый wi-fi роутер имеет небольшой срок ненадёжной службы и привносит с собой достаточно плотное общение абонента со службой технической поддержки оператора.
Чтобы нивелировать коэффициент энтропии в своей сети, снизить число обращений в ТП и повысить качество работы сети, большая часть операторов связи пришли к тому, что ставят “свои” преднастроенные роутеры. Некоторые так же ограничивают права абонента на управление ключевыми настройками маршрутизата.
Список моделей “своих” ограничен, в нём модели прошедшие тестирование специалистами оператора. Таким образом абонент получает гарантированно работающее как нужно CPE и количество жалоб в ТП снижается.
Однако в данном случае приходится тратить ресурсы, человеко-часы на преднастройку что становится дорогим и замедляющим фактором при высоком темпе подключений.
Беспроводные маршрутизаторы на базе операционной системы Wive-NG-HQ позволяют значительно повысить качество предоставляемого абоненту сервиса за счет высокой надежности и производительности. А преднастройку и последующую поддержку можно автоматизировать за счет использования протокола CWMP. Для этого необходимо развернуть сервер автоконфигурации (ACS).
В качестве ACS-сервера будет выступать программное обеспечение GenieACS, это open source продукт, распространяется по лицензии GNU AFFERO GENERAL PUBLIC. Так же, если не обходимо, разработчики за скромную плату оказывают поддержку по развёртыванию, интеграции и работе с SLA. Из проприетарных стоит обратить внимание на Friendly ACS.
Установка.
В качестве операционной системы выступает Debian Linux стабильной ветки.
root@shelter:~$ uname -a Linux shelter 4.19.0-10-amd64 #1 SMP Debian 4.19.132-1 (2020-07-24) x86_64 GNU/Linux
Замечание: так как mongodb и nodejs давно не поддерживают 32 разрядные архитектуры, категорически не рекомендую их использовать.
Замечание2: “не сиди под рутом!”. у автора это одна из пагубных привычек, от которой с переменным успехом избавляется.
Первым делом установим необходимые пакеты. Процедура тривиальная, не требующая каких-то особых комментариев.
root@shelter:~$ aptitude install build-essential zlib1g-dev libssl-dev libreadline7 libyaml-dev sudo unzip redis-server mongodb libsqlite3-dev curl joe tmux ruby
Далее для корректной работы нам нужен NodeJS версии 14, а в stable ветке идёт 10 версии.
У ребят из NodeSource поддерживается репозиторий с различными версиями Node.js. Что бы установить нужную нам свежую версию, подключим архив PPA. Это альтернативный репозиторий, совместимый с apt. NodeSource предоставляет архивы PPA для версий Node с 0.10 и до 12.
Давайте установим РРА. После этого у вас на сервере появится новый репозиторий, и вы сможете установить нужный пакет через apt.
root@shelter:~$ curl -sL https://deb.nodesource.com/setup_12.x -o nodesource_setup.sh
Скачали. запускаем:
root@shelter:~$ bash nodesource_setup.sh
Архив PPA будет добавлен в source-list. После запуска установочного сценария nodesource можно установить пакет nodejs:
root@shelter:~$ apt update root@shelter:~$ apt install nodejs
Пакет nodejs содержит бинарный файл nodejs и npm (потому вам не придётся устанавливать npm отдельно).
Проверяем версию:
root@shelter:~$ node -v v12.8.0
Для отслеживания обновлений npm использует конфигурационный файл в домашнем каталоге. Файл создается при первом запуске npm. Проверяем, что менеджер npm установлен и может использовать требуемый файл:
root@shelter:~$ npm -v 6.10.2
И заключительный шаг, устанавливаем ACS с помощью npm:
root@shelter:~$ npm install -g --unsafe-perm genieacs
Готово. Сервер ACS установлен. Однако он не готов к работе, не может самостоятельно стартовать, писать логи и т.п.
Постинсталяционная настройка. Перейти