== '''Network Device Configuration Management - Oxidized ''' == In this lab you will install Oxidized and integrate it with LibreNMS. '''Requirements:''' Ubuntu 20.04 Server with LibreNMS installed (Use the provided VM) '''Oxidized Installation''' Since most of the tasks in this lab require you to be "root", the first thing you should do is to connect to your server and start a root shell. {{{ sudo su apt update apt-get install ruby ruby-dev libsqlite3-dev libssl-dev pkg-config cmake libssh2-1-dev libicu-dev zlib1g-dev g++ sysctl -w net.ipv6.conf.all.disable_ipv6=1 sysctl -w net.ipv6.conf.default.disable_ipv6=1 sysctl -w net.ipv6.conf.lo.disable_ipv6=1 gem install oxidized gem install oxidized-script oxidized-web }}} '''Oxidized Configuration''' Create the oxidized user. {{{ useradd -s /bin/bash -m oxidized }}} Continue with oxidized user. '''Setup Oxidized Service''' Run the following commands as root user. {{{ cp extra/oxidized.service /etc/systemd/system mkdir /run/oxidized chown oxidized:oxidized /run/oxidized systemctl enable oxidized.service }}} '''LibreNMS Integration''' Create Token Login to LibreNMS web GUI. Go to Settings -> API Settings[[BR]] [[Image(librenms api settings.png, 600px)]][[BR]] Click on 'Create API access token'. '''Postfix Installation''' Postfix will be installed to have email notification of configuration changes. {{{ apt install postfix }}} '''Postfix Configuration'''