TR-069 – Instalação do GenieACS no Debian 11 Bullseye

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.

Requesitos:
Debian 11 Bullseye – Instalação Limpa

Leitura recomendada:
Configurando interface de rede no Debian 11
Como melhorar a produtividade no seu Debian após instalação

Ajustando o repositório

Adicione contrib non-free aos repositórios

Atualize o repositório:

Se tiver algum pacote para atualização também faça:

Intale os firmware-linux*

Reinicie seu servidor para carregar os novos módulos do kernel

Pré-requisitos:
– Node.js
– MongoDB

https://genieacs.com
http://docs.genieacs.com/

Instalção do Node.js

Repositório Node Js

Verifique a versão

Veja se não tem atualização

Exemplo colocando a para atualizar (Ajuste a versão)

Instalação do MongoDB

Adicione o repositorio do MongoD (Sim é Buster Bullseye até o momento out/2021 não tem)

Versão 5 (Recomendada)

Versão 4 (Alguns relatos que no vmware não teve jeito de fazer o mongodb iniciar e a v4 funcionou)

Atualize o repositório e instale o mongodb bem como a estensão do nodejs

Ative o serviço para iniciar com o boot, inicie o serviço e verifique se o mesmo iniciou com êxito.

Instalação do GenieACS

Procure se o pacote existe:

Instale o genieacs

Crie um usuário do sistema para executar daemons 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).

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.

Adicione:

Defina a propriedade e as permissões do arquivo:

Criar diretório de logs

Configure os serviços no systemd

Adicione:

Adicione:

Adicione:

Adicione:

Configure o logrotate para rotação dos log gerados

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.

Acesse em seu navegador: http://IP:3000

Clique em: ABRACADABRA!

Clique em: Open Sesame!

Entre com: admin/admin

Grupo do telegram: ACS/CWMP – TR069 – Brasil (PT-Br)

Gostou? Quer ajudar manter o blog? 🙂

Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!

Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato clique aqui.

Rudimar Remontti

Trabalho atualmente como Gerente de Redes em um Provedor de Internet no Rio Grande do Sul.

Você pode gostar...

31 Resultados

  1. Jocelio Almeida disse:

    Pra quem ta tentando de todo jeito subir no debian12 e não consegue segue umas modificações.. para SOMAR com o post, todos os creditos são do Rudmar

    Instalação do Genic ACS

    apt-get update
    apt-get upgrade -y

    apt-get install gnupg curl rsyslog -y

    curl -fsSL https://pgp.mongodb.com/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 bullseye/mongodb-org/7.0 main” | tee /etc/apt/sources.list.d/mongodb-org-7.0.list

    echo “deb http://security.ubuntu.com/ubuntu focal-security main” | tee /etc/apt/sources.list.d/focal-security.list

    apt update

    //// note que teve um erro com a chave pública para resolver

    apt-key adv –keyserver keyserver.ubuntu.com –recv-keys 871920D1991BC93C
    apt-key adv –keyserver keyserver.ubuntu.com –recv-keys 3B4FE6ACC0B21F32

    apt-get update

    ///// Instalando libssl1.1 e MongoDB 7.0:

    apt-get install libssl1.1
    apt-get install mongodb-org -y

    systemctl enable mongod –now

    Removendo as coisas do ubuntu

    rm /etc/apt/sources.list.d/focal-security.list

    apt-key del 3B4FE6ACC0B21F32
    apt-key del 871920D1991BC93C

    comente a a linha
    nano /etc/apt/sources.list.d/mongodb-org-7.0.list

    apt update

    /// Instalando o Node.JS

    curl -fsSL https://deb.nodesource.com/setup_lts.x | bash –
    apt install nodejs -y

    /// Instalando o GenieACS

    npm search -g genieacs
    npm install -g genieacs
    useradd –system –no-create-home –user-group genieacs

    mkdir /opt/genieacs && mkdir /opt/genieacs/ext && mkdir /var/log/genieacs

    echo ‘GENIEACS_CWMP_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-cwmp-access.log
    GENIEACS_NBI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-nbi-access.log
    GENIEACS_FS_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-fs-access.log
    GENIEACS_UI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-ui-access.log
    GENIEACS_DEBUG_FILE=/var/log/genieacs/genieacs-debug.yaml
    NODE_OPTIONS=–enable-source-maps
    GENIEACS_EXT_DIR=/opt/genieacs/ext
    GENIEACS_UI_JWT_SECRET=secret’ | tee /opt/genieacs/genieacs.env

    chown genieacs. /opt/genieacs -R
    chmod 600 /opt/genieacs/genieacs.env
    chown genieacs. /var/log/genieacs

    systemctl edit –force –full genieacs-cwmp
    Adicione:

    [Unit]
    Description=GenieACS CWMP
    After=network.target

    [Service]
    User=genieacs
    EnvironmentFile=/opt/genieacs/genieacs.env
    ExecStart=/usr/bin/genieacs-cwmp

    [Install]
    WantedBy=default.target

    systemctl edit –force –full genieacs-nbi
    Adicione:

    [Unit]
    Description=GenieACS CWMP
    After=network.target

    [Service]
    User=genieacs
    EnvironmentFile=/opt/genieacs/genieacs.env
    ExecStart=/usr/bin/genieacs-cwmp

    [Install]
    WantedBy=default.target

    systemctl edit –force –full genieacs-fs

    Adicione:

    [Unit]
    Description=GenieACS FS
    After=network.target

    [Service]
    User=genieacs
    EnvironmentFile=/opt/genieacs/genieacs.env
    ExecStart=/usr/bin/genieacs-fs

    [Install]
    WantedBy=default.target

    systemctl edit –force –full genieacs-ui
    Adicione:

    [Unit]
    Description=GenieACS UI
    After=network.target
    [Service]
    User=genieacs
    EnvironmentFile=/opt/genieacs/genieacs.env
    ExecStart=/usr/bin/genieacs-ui
    [Install]
    WantedBy=default.target

    echo ‘/var/log/genieacs/*.log /var/log/genieacs/*.yaml {
    daily
    rotate 30
    compress
    delaycompress
    dateext
    }’ | tee /etc/logrotate.d/genieacs

    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

  2. Emanuel disse:

    Alguém mais teve problemas pra trocar a senha de WI-FI em roteadores huawei?

  3. Carlos disse:

    Alguem me ajuda, estou parado neste erro e não consigo instalar o libssl11

    root@genieACS:/etc# apt install mongodb-org node-mongodb Lendo listas de pacotes… Pronto
    Construindo árvore de dependências… Pronto
    Lendo informação de estado… Pronto
    Alguns pacotes não puderam ser instalados. Isto pode significar que
    você solicitou uma situação impossível ou, se você está usando a
    distribuição instável, que alguns pacotes requeridos não foram
    criados ainda ou foram retirados da “Incoming”.
    A informação a seguir pode ajudar a resolver a situação:

    Os pacotes a seguir têm dependências desencontradas:
    mongodb-org-mongos : Depende: libssl1.1 (>= 1.1.1) mas não é instalável
    mongodb-org-server : Depende: libssl1.1 (>= 1.1.1) mas não é instalável
    mongodb-org-shell : Depende: libssl1.1 (>= 1.1.1) mas não é instalável
    node-semver : Depende: nodejs:any
    E: Impossível corrigir problemas, você manteve (hold) pacotes quebrados.

  4. Colossi disse:

    marinheiro de primeira viagem, inicialmente me causou um pouco de náuseas .
    Porém, depois de rever a explicação mais de uma vez, algo fluiu!
    Deu certo, consegui !
    Agora com status Online não sei bem o que fazer. (mas isso é outro assunto)
    Pensei que apareceria o device de rede, visto que configurei em modo Bridge aqui em casa.

    parabéns pelo tutorial, me ajudou muito.

  5. Marcio A. disse:

    Fiz um teste na versão debian10 e funciona perfeitamente também !

  6. Nilton disse:

    Acs instalado, agora estou aguardando o tutorial de como faço ele funcionar com OLT e ONU Huawei… 😢 Para configurar IPv4/IPv6 e troca de senha wi-fi

  7. Michael Oliveira disse:

    Se seguirem da forma do tutorial não tem erro.
    Funcionou de boa!

    Excelente material.

  8. Cassio Araujo disse:

    Bom dia pessoal. Estou com problemas para criar o usuario.
    root@genieacs:~# useradd –system –no-create-home –user-group genieacs
    bash: useradd: comando não encontrado

  9. Valmir disse:

    Boa tarde senhores, consegui instalar porém alguém tem alguma dica de como fazer a integração ou como faço pra usar?
    Desde já agradeço.

  10. Alison disse:

    ola alguém poderia me ajudar como faço mais de 200 por pagina so vai ate 200 e ja tenho mais 400 configurados

  11. Prague disse:

    Existe uma instalação de exemplo com suporte STUN? Não tenho certeza se genieacs e coturn são compatíveis. Não consigo interferir nos dispositivos por trás do nat

    • zolitacs disse:

      I would also be interested in how to manage NATed devices. Which STUN server to install and how to configure it.
      Eu também estaria interessado em como gerenciar dispositivos NATEADO. Qual servidor STUN instalar e como configurá-lo.

  12. Eric disse:

    Excelentíssimo conteúdo meu amigo me ajudou muito aqui obrigado pela sabedoria!

  13. Jonatas disse:

    Boa tarde Remontti, primeiramente muito obrigado pelo ótimo conteúdo. Sou novo no mundo GPON e a empresa que trabalho tem uma OLT da Nokia. Poderiam me ajudar com dicas como faço pra integrar o servidor ACS a OLT Nokia?

    Muito obrigado desde já!!

  14. Alexsander da Silva disse:

    Tutorial claro, simples e direto. Obrigado pela qualidade do conteúdo.

    Uma dúvida, não consigo encontrar a pasta genieacs-gui para realizar alterações nos yml.
    Alguém pode ajudar?

  15. flavio disse:

    alguem pode me da uma ajuda com esse erro

    root@ACS:/tmp# service mongod status
    ● mongod.service – MongoDB Database Server
    Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
    Active: failed (Result: signal) since Mon 2022-04-04 20:51:42 -03; 3s ago
    Docs: https://docs.mongodb.org/manual
    Process: 1558 ExecStart=/usr/bin/mongod –config /etc/mongod.conf (code=killed, signal=ILL)
    Main PID: 1558 (code=killed, signal=ILL)
    CPU: 122ms

  16. Irailto disse:

    No meu deu tudo certo. Muito Obrigado. Terminei agora as 04:06. Faz tempo que procuro.
    Parabéns pelo blog.

  17. Danilo Moreira disse:

    Boa tarde, segui todos os procedimentos e aparentemente, tudo ok, quando vou abrir o geniusacs por web em http://ip:3000, não tenho acesso.
    seria o ip que configurei na maquina debian confere?

    • Marcelo Araújo disse:

      Bom dia. Estava com o mesmo problema!

      O meu problema era que o mongodb não estava iniciando, pois meu processador não era compatível com AVX.

      A solução: instalar uma versão anterior do mongodb: 4.4

  18. Vinicius Coelho disse:

    Estou recebendo esse erro:
    npm ERR! code ENOENT
    npm ERR! syscall chmod
    npm ERR! path /usr/local/lib/node_modules/genieacs/bin/genieacs-cwmp
    npm ERR! errno -2
    npm ERR! enoent ENOENT: no such file or directory, chmod ‘/usr/local/lib/node_modules/genieacs/bi n/genieacs-cwmp’
    npm ERR! enoent This is related to npm not being able to find a file.
    npm ERR! enoent

    npm ERR! A complete log of this run can be found in:
    npm ERR! /root/.npm/_logs/2021-11-23T10_53_39_093Z-debug.log
    root@TR69:~# vim /root/.npm/_logs/2021-11-23T10_53_39_093Z-debug.log
    root@TR69:~# npm install -g genieacs
    npm ERR! code ENOENT
    npm ERR! syscall chmod
    npm ERR! path /usr/local/lib/node_modules/genieacs/bin/genieacs-cwmp
    npm ERR! errno -2
    npm ERR! enoent ENOENT: no such file or directory, chmod ‘/usr/local/lib/node_modules/genieacs/bin/genieacs-cwmp’
    npm ERR! enoent This is related to npm not being able to find a file.
    npm ERR! enoent

    npm ERR! A complete log of this run can be found in:
    npm ERR! /root/.npm/_logs/2021-11-23T11_07_14_276Z-debug.log

    Podem me ajudar?

  19. Maxwell disse:

    Eu revisei aqui, eu pulei uma etapa quando eu dei reboot na vm, entao ate se quiser deixar meu comentario como exemplo de desatenção hehe caso algue faça o mesmo kk

    obrigado irmao, abraço

  20. Maxwell disse:

    opa Buenas, valeu por compartilhar mais um excelente conteudo, tenho só umas ideias e uma duvida:
    IDEIA:
    — Ajustando o repositório. Adicione contrib non-free aos repositórios:

    sed -i ‘s/main/main contrib non-free/g’ /etc/apt/sources.list

    (acho que facilita quem quiser testar.)

    — Instalção do Node.js

    apt install nodejs npm curl -y

    (precisei instalar o npm e curl assim junto com o node, pq posteriormente dava comandos not found)

    DUVIDA:
    nov 13 10:39:18 TR-069 systemd[1]: Started GenieACS UI.
    nov 13 10:39:18 TR-069 systemd[13085]: genieacs-ui.service: Failed to locate executable /usr/bin/genieacs-ui: No such file or directory
    nov 13 10:39:18 TR-069 systemd[13085]: genieacs-ui.service: Failed at step EXEC spawning /usr/bin/genieacs-ui: No such file or directory
    nov 13 10:39:18 TR-069 systemd[1]: genieacs-ui.service: Main process exited, code=exited, status=203/EXEC
    nov 13 10:39:18 TR-069 systemd[1]: genieacs-ui.service: Failed with result ‘exit-code’.

    ao finalizar eu tive esse output, nao to me atentando ao que esta errado, vou tentar dar mais uma olhada qualquer coisa eu retorno aqui.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *