Instalação e Configuração do GenieAC em
Cliente TR-069 (Relatório Técnico 069) é uma implementação do CWMP (CPE WAN Management Protocol) para gerenciar dispositivos de usuários finais de forma centralizada. Este CWMP é executado em uma rede IP usando HTTP ou HTTPS para se comunicar com dispositivos ACS (Sistema de configuração automática), onde ACS é um sistema usado para monitorar, configurar e atualizar o firmware de dispositivos remotos.
Em geral, a função do TR-069 é mais amplamente usada em ISPs para gerenciamento de dispositivos do usuário final. Alguns dispositivos que estão atualmente começando a implementar as funções do TR-069, como FTTH CPE/ONT, WIMAX CPE, também podem ser usados para monitoramento de VoIP ou CFTV. E no próprio MikroTik, a função Cliente TR-069 também foi adicionada a partir do RouterOS versão 6.38.
Para melhorar seu bash e entender o comando a seguir, visite: Como melhorar a produtividade no seu Debian após a instalação
1 | # apt -y install wget; wget remontti.com.br/debian; bash debian; su – |
Repositório
Adicione contrib non-free aos repositórios
1 | # vim /etc/apt/sources.list |
Ajuste:
12345678 | deb http://deb.debian.org/debian/ bookworm main non-free-firmware contrib non-freedeb-src http://deb.debian.org/debian/ bookworm main non-free-firmware contrib non-freedeb http://security.debian.org/debian-security bookworm-security main non-free-firmware contrib non-freedeb-src http://security.debian.org/debian-security bookworm-security main non-free-firmware contrib non-freedeb http://deb.debian.org/debian/ bookworm-updates main non-free-firmware contrib non-freedeb-src http://deb.debian.org/debian/ bookworm-updates main non-free-firmware contrib non-free |
Atualize o repositório:
1 | # apt update |
Se tiver algum pacote para atualização também faça:
1 | # apt upgrade -y |
Instale os firmware-linux*
1 | # apt install firmware-linux firmware-linux-free firmware-linux-nonfree -y |
Reinicie seu servidor para carregar os novos módulos do kernel
1 | # reboot |
Pacotes requisitos
1 | # apt -y install gnupg gnupg2 curl wget rsyslog |
Repositório MongoDB
123456 | # curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \ gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg –dearmor# echo “deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] \ http://repo.mongodb.org/apt/debian bookworm/mongodb-org/7.0 main” \ > /etc/apt/sources.list.d/mongodb-org-7.0.list |
Recarregue o repositório, e instale o MongoDB vamos
12 | # apt update# apt -y install mongodb-org |
Ative o serviço para iniciar com o boot, inicie o serviço e verifique se o mesmo iniciou com êxito.
123 | # systemctl enable mongod# systemctl start mongod# systemctl status mongod |
Node.js
12 | # apt -y install nodejs npm –no-install-recommends# apt -y install node-mongodb |
Instalação do GenieACS
Procure se o pacote existe:
1 | # npm search -g genieacs |
1234 | NAME | DESCRIPTION | AUTHOR | DATE | VERSION | KEYWORDS genieacs | A TR-069 Auto… | =zaidka | 2024-03-28 | 1.2.12 | TR-069 CWMP ACS@anlix-io/genieacs-sim | TR-069 client… | =anlix-io | 2024-01-15 | 1.14.0 | TR-069 CWMP ACS Simulatorgenieacs-sim | TR-069 client… | =zaidka | 2017-02-05 | 0.9.0 | TR-069 CWMP ACS |
Instale o genieacs
1 | # npm install -g genieacs |
1234 | added 220 packages in 5s18 packages are looking for funding run `npm fund` for details |
Crie um usuário do sistema para executar daemons GenieACS
1 | # useradd –system –no-create-home –user-group genieacs |
Crie um diretório para salvar extensões e arquivo de ambiente
Usaremos o diretório /opt/genieacs/ext/ para armazenar scripts de extensão (se houver).
12 | # mkdir /opt/genieacs# mkdir /opt/genieacs/ext |
Crie o arquivo /opt/genieacs/genieacs.envpara que irá conter as opções de configuração, que passamos ao GenieACS como variáveis de ambiente.
1 | # vim /opt/genieacs/genieacs.env |
Adicione:
1234567 | GENIEACS_CWMP_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-cwmp-access.logGENIEACS_NBI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-nbi-access.logGENIEACS_FS_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-fs-access.logGENIEACS_UI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-ui-access.logGENIEACS_DEBUG_FILE=/var/log/genieacs/genieacs-debug.yamlNODE_OPTIONS=–enable-source-mapsGENIEACS_EXT_DIR=/opt/genieacs/ext |
Gere um segredo JWT seguro e anexe a /opt/genieacs/genieacs.env:
123 | # node -e “console.log(\”GENIEACS_UI_JWT_SECRET=\” + require(‘crypto’).\ randomBytes(128).toString(‘hex’))” \ >> /opt/genieacs/genieacs.env |
Defina a propriedade e as permissões do arquivo:
12 | # chown genieacs: /opt/genieacs -R# chmod 600 /opt/genieacs/genieacs.env |
Criar diretório de logs
12 | # mkdir /var/log/genieacs# chown genieacs: /var/log/genieacs |
Configure os serviços no systemd
1 | # systemctl edit –force –full genieacs-cwmp |
Adicione:
1234567891011 | [Unit]Description=GenieACS CWMPAfter=network.target[Service]User=genieacsEnvironmentFile=/opt/genieacs/genieacs.envExecStart=/usr/local/bin/genieacs-cwmp[Install]WantedBy=default.target |
1 | # systemctl edit –force –full genieacs-nbi |
Adicione:
1234567891011 | [Unit]Description=GenieACS NBIAfter=network.target[Service]User=genieacsEnvironmentFile=/opt/genieacs/genieacs.envExecStart=/usr/local/bin/genieacs-nbi[Install]WantedBy=default.target |
1 | # systemctl edit –force –full genieacs-fs |
Adicione:
1234567891011 | [Unit]Description=GenieACS FSAfter=network.target[Service]User=genieacsEnvironmentFile=/opt/genieacs/genieacs.envExecStart=/usr/local/bin/genieacs-fs[Install]WantedBy=default.target |
1 | # systemctl edit –force –full genieacs-ui |
Adicione:
1234567891011 | [Unit]Description=GenieACS UIAfter=network.target[Service]User=genieacsEnvironmentFile=/opt/genieacs/genieacs.envExecStart=/usr/local/bin/genieacs-ui[Install]WantedBy=default.target |
Configure o logrotate para rotação dos log gerados
1 | # vim /etc/logrotate.d/genieacs |
Adicione:
1234567 | /var/log/genieacs/*.log /var/log/genieacs/*.yaml { daily rotate 30 compress delaycompress dateext} |
Ative e inicie serviços, e revise a mensagem de status de cada um para verificar se os serviços estão sendo executados com êxito.
1234 | # systemctl daemon-reload# systemctl enable genieacs-cwmp genieacs-nbi genieacs-fs genieacs-ui# systemctl start genieacs-cwmp genieacs-nbi genieacs-fs genieacs-ui# systemctl status genieacs-cwmp genieacs-nbi genieacs-fs genieacs-ui –no-pager |
Acesse em seu navegador: http://IP:3000
Clique em: ABRACADABRA!
Clique em: Open Sesame!
Entre com: admin/admin
