GenieACS adalah platform manajemen perangkat Auto Configuration Server (ACS) yang open-source dan powerful.
Berdasarkan standar TR-069, GenieACS memungkinkan untuk mengelola, memantau, dan mengonfigurasi perangkat jaringan seperti modem, router, dan CPE lainnya secara terpusat.
Kita akan install GenieACS di Ubuntu 22.04 LTS dengan langkah-langkah terperinci.
Install Package Pendukung
Update index repository dan Upgrade Package
sudo apt update -y && sudo apt upgrade -y
Install package curl dan gnupg
sudo apt install curl gnupg
Node Js 20
Version node js yang digunakan untuk menjalankan genieACS.
curl -fsSL https://deb.nodesource.com/setup_20.x |sudo -E bash - sudo apt update
Installation Node Js 20
sudo apt install -y nodejs
Cek Version Node Js
node --version
MongoDB 7
GenieACS menggunakan database NoSQL yaitu MongoDB version 7.
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \ --dearmor
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
Update index repository dan install mongodb.
sudo apt update sudo apt install mongodb-org -y
Start dan enable service MongoDB. Pastikan saat cek status service mongodb tidak error.
sudo systemctl start mongod.service sudo systemctl enable mongod sudo systemctl status mongod
Install GenieACS 1.2.13
Untuk melakukan installation GenieACS menggunaka npm, tunggu sampai proses selesai.
sudo npm install -g [email protected]
Create user linux baru, digunakan sebagai daemon GenieACS.
sudo useradd --system --no-create-home --user-group genieacs
Membuat directory genieacs, ext dan mengatur user dan group.
sudo mkdir /opt/genieacs sudo mkdir /opt/genieacs/ext sudo chown genieacs:genieacs /opt/genieacs/ext
Membuat file environment genieACS.
nano /opt/genieacs/genieacs.env
Masukan script dibawah kedalam file genieacs.env .
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
Generate secret JWT dimasukan ke dalam file genieacs.env .
sudo su
node -e "console.log(\"GENIEACS_UI_JWT_SECRET=\" + require('crypto').randomBytes(128).toString('hex'))" >> /opt/genieacs/genieacs.env
Mengatur user/group dan permision file genieacs.env .
sudo chown genieacs:genieacs /opt/genieacs/genieacs.env sudo chmod 600 /opt/genieacs/genieacs.env
New directory log genieacs dan setting user:group .
sudo mkdir /var/log/genieacs sudo chown genieacs:genieacs /var/log/genieacs
Membuat File Unit Systemd
Membuat service Genieacs CWMP .
sudo systemctl edit --force --full genieacs-cwmp
Masukan script dibawah, execute bin CWMP.
[Unit] Description=GenieACS CWMP After=network.target [Service] User=genieacs EnvironmentFile=/opt/genieacs/genieacs.env ExecStart=/usr/bin/genieacs-cwmp [Install] WantedBy=default.target
sudo systemctl enable genieacs-cwmp sudo systemctl start genieacs-cwmp sudo systemctl status genieacs-cwmp
Membuat unit systemd service Genieacs NBI .
sudo systemctl edit --force --full genieacs-nbi
Masukan script NBI dibawah.
[Unit] Description=GenieACS NBI After=network.target [Service] User=genieacs EnvironmentFile=/opt/genieacs/genieacs.env ExecStart=/usr/bin/genieacs-nbi [Install] WantedBy=default.target
sudo systemctl enable genieacs-nbi sudo systemctl start genieacs-nbi sudo systemctl status genieacs-nbi
Membuat unit systemd service Genieacs FS .
sudo systemctl edit --force --full genieacs-fs
Masukan script FS.
[Unit] Description=GenieACS FS After=network.target [Service] User=genieacs EnvironmentFile=/opt/genieacs/genieacs.env ExecStart=/usr/bin/genieacs-fs [Install] WantedBy=default.target
sudo systemctl enable genieacs-fs sudo systemctl start genieacs-fs sudo systemctl status genieacs-fs
Membuat unit systemd service Genieacs UI
sudo systemctl edit --force --full genieacs-ui
Masukan script UI.
[Unit] Description=GenieACS UI After=network.target [Service] User=genieacs EnvironmentFile=/opt/genieacs/genieacs.env ExecStart=/usr/bin/genieacs-ui [Install] WantedBy=default.target
sudo systemctl enable genieacs-ui sudo systemctl start genieacs-ui sudo systemctl status genieacs-ui
Membuat file log rotate GenieACS.
sudo nano /etc/logrotate.d/genieacs
Isi file logrotate genieacs.
/var/log/genieacs/*.log /var/log/genieacs/*.yaml {
daily
rotate 30
compress
delaycompress
dateext
}
Akses Dashboard GenieACS
Akses http://IP_Public:3000 pada browser untuk melakukan setup wizard GenieACS. Klik ABRACADARA!

Initialization Wizard genieacs
Klik, Open Sesame!

Masukan Username: admin, dan Password: admin. Login

Berikut dashboard dari genieacs.

Kamu telah berhasil install GenieACS di Ubuntu 22.04 LTS. Platform ini sekarang siap digunakan untuk mengelola perangkat jaringan.
Dengan GenieACS, kamu sekarang memiliki sistem manajemen perangkat yang powerful dan fleksibel untuk infrastruktur jaringan.
