How To Install phpIPAM on Ubuntu 20.04|18.04

Posted on 9 views

The objective of this guide is to help you Install and Configure phpIPAM on Ubuntu 20.04/18.04 Linux distribution. phpIPAM is an open-source php-based web IP address management application (IPAM). Its goal is to provide light, modern and useful IP address management. phpIPAM uses MySQL database backend and jQuery libraries, Ajax and HTML5/CSS3 features.

phpIPAM has the following features:

  • IPv4/IPv6 IP address management
  • Section / Subnet management
  • Automatic free space display for subnets
  • Visual subnet display
  • Automatic subnet scanning / IP status checks
  • PowerDNS integration
  • NAT support
  • VLAN management
  • VRF management
  • IPv4 / IPv6 calculator
  • IP database search
  • E-mail notifications
  • Custom fields support
  • Translations
  • Changelogs
  • RACK management
  • Domain authentication (AD, LDAP, Radius)
  • Per-group section/subnet permissions
  • Device/device types management
  • RIPE subnets import
  • XLS / CVS subnets import
  • IP request module
  • Locations module

Install phpIPAM on Ubuntu 20.04/18.04

phpIPAM has a number of dependencies that we need to install before we can install and configure phpIPAM. These are:

  1. MySQL / MariaDB server
  2. php / php-fpm for nginx
  3. php modules
  4. Apache / nginx web server
  5. phpIPAM domain – (should be replaced with your domain)

Step 1: Install MariaDB  Server

Start with the installation of MariaDB database server:

sudo apt update
sudo apt install mariadb-server mariadb-client

Ensure mariadb service is started and set to start at boot:

sudo systemctl enable mariadb
sudo systemctl start mariadb

Secure database server by setting root password:

sudo mysql_secure_installation

Once the database installation and setup is complete, create a database for phpipam user:

$ sudo mysql -u root -p
GRANT ALL ON phpipam.* TO [email protected] IDENTIFIED BY 'StrongDBPassword';

Step 2: Install PHP and required modules

Next phase is the installation of php and required modules. Run the following commands:

sudo apt update 
sudo apt -y install php php-mysql,curl,gd,intl,pear,imap,memcache,pspell,tidy,xmlrpc,mbstring,gmp,json,xml,fpm

Step 3: Install phpIPAM on Ubuntu 20.04/18.04 Linux

We’ll download phpIPAM from Github. Install git first:

sudo apt -y install git

Clone phpIPAM code from github

sudo git clone --recursive /var/www/html/phpipam

Change to clone directory.

cd /var/www/html/phpipam

You can also download phpipam from official Sourceforge repository and extract it to your web server directory.

Step 4: Configure phpIPAM on Ubuntu 20.04/18.04

Change your working directory to /var/www/html/phpipam and copy config.dist.php to config.php, then edit it.

sudo cp config.dist.php config.php

Edit the file to configure database credentials as added on Step 1:

$ sudo vim config.php
* database connection details
$db['host'] = 'localhost';
$db['user'] = 'phpipam';
$db['pass'] = 'StrongDBPassword';
$db['name'] = 'phpipam';
$db['port'] = 3306;

Option 1: Using Apache Web Server

If you would like to use Apache web server, first install it using:

sudo systemctl stop nginx && sudo systemctl disable nginx
sudo apt -y install apache2
sudo a2dissite 000-default.conf
sudo a2enmod rewrite
sudo systemctl restart apache2

Install apache php module:

sudo apt -y install libapache2-mod-php php-curl php-xmlrpc php-intl php-gd

Add Apache phpipam configuration:

sudo vim /etc/apache2/sites-available/phpipam.conf

Here are the contents:

    ServerAdmin [email protected]
    DocumentRoot "/var/www/html/phpipam"
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    ErrorLog "/var/log/apache2/phpipam-error_log"
    CustomLog "/var/log/apache2/phpipam-access_log" combined

Set directory permissions:

sudo chown -R www-data:www-data /var/www/html

Enable site:

sudo a2ensite phpipam

Restart Apache server for changes to be made.

sudo systemctl restart apache2

Option 2: Using Nginx Web server (Skip if you chose & configured apache in option 1)

Install nginx using the command:

sudo systemctl stop apache2 && sudo systemctl disable apache2
sudo apt -y install nginx

Configure nginx:

sudo vim /etc/nginx/conf.d/phpipam.conf

Add content:

Ubuntu 20.04:

    listen       80;
    # root directory
    index        index.php;
    root   /var/www/html/phpipam;

    location / 
            try_files $uri $uri/ /index.php$is_args$args;

    location ~ \.php$ 
            try_files $uri =404;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
             fastcgi_pass   unix:/run/php/php-fpm.sock;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_index index.php;
            include fastcgi_params;


Change ownership of the /var/www/ directory to www-data user and group.

sudo chown -R www-data:www-data /var/www/html
sudo systemctl restart nginx

Step 5: Finish phpIPAM Installation on Ubuntu 20.04/18.04

Start the installation process by visiting, replace with your valid domain name. The URL could also be or IP Address instead of DNS name depending on your configuration.

If the domain name used is not a valid DNS record you can modify your hosts file:

# Linux / macOS
$ sudo vim /etc/hosts

# Windows

On the first page, Select “New phpipam installation


Since we had created a database, we’ll go with “MySQL import instructions“.


This will output the command to import the SQL file.

sudo mysql -u root -p phpipam < /var/www/html/phpipam/db/SCHEMA.sql

For Automatic database installation, set like below.


On successful installation, you should get the admin login page.


The default Login credentials are:

Username: admin
Password: ipamadmin

You’re prompted to change the admin password on the first login.


You have successfully installed phpIPAM on Ubuntu 20.04 / Ubuntu 18.04 Linux system.





Gravatar Image
A systems engineer with excellent skills in systems administration, cloud computing, systems deployment, virtualization, containers, and a certified ethical hacker.