How To Securely Manage Secrets with HashiCorp Vault on Ubuntu 16.04


As your infrastructure grows, the amount of internet protocol address details you employ might also increase plenty them all that you will no longer be able to rely solely on your memory to manage. At that true point, you will need an instrument that will help you keep an eye on things.

While spreadsheets and simple text files are low-tech solutions they can also be too cumbersome when working with large pools of IP addresses or when trying to track multiple data points around each address.( that you can implement quickly,**********)

phpIPAM, a tool that is dedicated internet protocol address administration, goes means beyond the low-tech choices by giving automated ping scans, status reports that allow you to see which of one’s hosts are up and that are down, e-mail notifications about modifications to your hosts you are monitoring, as well as other features that produce handling infrastructure easier.

In this guide, you may install and configure phpIPAM on a Linux, Apache, MySQL, and PHP (LAMP) stack operating on Ubuntu 16.04.


(you will need:

Before you begin,**********)

Step 1 — Configuring Apache

By standard, phpIPAM utilizes query strings in its Address framework to pass through information in one area of the application to a different. Query strings are appended to a URL with a ? and include several field-value pairs divided by &.

Although maybe not definitely needed for installation, phpIPAM supports URL-rewriting through Apache’s mod_rewrite module, which translates question strings into more readable and URLs that is human-friendly

(that you can turn URL-rewriting on in Step 2.

If you didn’t already enable mod_rewrite in the secure your Apache installation with a TLS/SSL certificate prerequisite by redirecting all HTTP requests to HTTPS, use Apache’s a2enmod utility now to enable mod_rewrite so**********)

This demand produces a link that is symbolic /etc/apache2/mods-available/rewrite.load in /etc/apache2/mods-enabled/rewrite/, that may allow the module on Apache's next begin.

If mod_rewrite currently had been enabled, the production will read:

Output of sudo rewrite( that is a2enmod rewrite currently enabled

Otherwise, the production will inform you your symlink is made which you will need to restart Apache to stimulate the alteration.

Output of sudo a2enmod rewrite( module rewrite that is**********)Enabling. To stimulate the configuration that is new you will need to run: solution apache2 restart

Even though Apache will now allow mod_rewrite the time that is next begin the internet host, you've still got to change your phpIPAM digital host setup to produce mod_rewrite offered to phpIPAM. Therefore, cannot restart Apache at this time.

Instead, start the Apache setup file you made for phpIPAM in Prerequisites.

  • sudo nano /etc/apache2/sites-available/

Paste these lines to the setup file underneath the DocumentRoot part.


    <Directory /var/www/
            Choices FollowSymLinks
            AllowOverride all
            Need all provided
  • Directory may be the location in the host where in fact the directives is going to be used. This will function as the directory you intend to put in phpIPAM into. This is /var/www/ if you followed the Apache virtual hosts guide in the prerequisites***************************)
  • Options FollowSymLinks informs Apache to check out links that are symbolic this directory. Here is the standard environment.
  • AllowOverride all means any directive in an .htaccess file within directory should bypass any matching directive that is global
  • Require all provided informs Apache allowing inbound needs from all hosts.

Save and shut the file to continue.

Now, test the setup modifications before restarting Apache.

  • sudo apache2ctl configtest

If the production claims Syntax okay, you are willing to move ahead. Otherwise, review the instructions that are previous stick to the on-screen communications to find out more.

Finally, restart Apache make it possible for mod_rewrite and stimulate the configuration that is new

  • sudo systemctl restart apache2

Because you have not set up phpIPAM yet, you'll find nothing to see at Therefore, let us down load and now install phpIPAM.

Step 2 — setting up phpIPAM

The official installation guidelines recommend two means of setting up phpIPAM: getting a tarball through the task's SourceForge repository or cloning the task from the GitHub repository. To produce future updates easier, let us make use of the method that is latter

By standard, Git will simply clone into an directory that is existing that directory is empty. Therefore, make use of the ls demand to look at the articles of directory you configured for Apache in action 1.

  • ls /var/www/

If the directory is not empty, utilize fundamental Linux navigation and file administration commands to clear it away now. mv moves the articles to some other location, and rm deletes them entirely.

Now, clone the Git task to the directory.

  • git clone /var/www/

The production verifies the positioning you are cloning into then provides a report that is real-time of procedure, including a count of things Git anticipated to duplicate plus the quantity it really did content.

Output of git clone

Cloning into /var/www/ ... remote: Counting things: 14234, done. remote: Compressing things: 100percent (50/50), done. remote: Total 14234 (delta 27), reused 40 (delta 17), pack-reused 14161 Getting things: 100percent (14234/14234), 11.38 MiB | 21.30 MiB/s, done. Resolving deltas: 100percent (10066/10066), done. Checking connectivity... done.

You will have the phpIPAM that is complete in your host, however're nevertheless lacking some PHP modules that phpIPAM requirements so that you can run. Install all of them with apt-get.

These extra packages offer PHP because of the GNU several Precision module for using arbitrary-length integers, the Multibyte String module for managing languages that cannot be expressed in 256 figures, the PEAR framework for reusable PHP compontents, plus the GD module for image processing.

  • sudo apt-get install php7.0-gmp php7.0-mbstring php-pear php7.0-gd

Restart Apache to really make the modules that are new to it.

  • sudo systemctl restart apache2

With both application files and modules that are additional the host, you are willing to configure phpIPAM.

Step 3 — Configuring phpIPAM

phpIPAM actively seeks its primary setup settings in a file called called config.php. The application does come with an example configuration file to work from.( while this file doesn't exist by default**********)

Change to your installation directory while making a duplicate of instance setup file to later refer to in the event that you encounter a challenge.

  • cd /var/www/
  • cp config.dist.php config.php

Open the file that is new modifying.

Look the part labeled * database connection details. These settings tell phpIPAM just how to hook up to the MySQL database that'll hold all your information.

Because you have set up MySQL in the machine that is same phpIPAM, you'll keep the $db['host'] value set to localhost. And because MySQL listens on slot 3306 automagically, you don't have to replace the $db['port'] value.

There is not a MySQL database setup for phpIPAM yet, however in step, phpIPAM's web-based installation utiltiy will generate a database and database individual utilising the values you input this file. Therefore, set the $db['user'] value to your title of individual you would like phpIPAM to get in touch to MySQL because, set the $db['pass'] value to your password you would like phpIPAM to utilize whenever linking to MySQL, and set $db['name'] to your title you need to share with the MySQL database.

phpIPAM's config.php


 * database connection details
$* that is db( = 'localhost';
$***) that is db( 'database_user';
$****) that is db( 'database_password';
$*****) that is db( 'database_name';
$**) that is db( 3306;

Warning: in the event that you went the mysql_secure_installation script whenever setting up MySQL in Prerequisites, make sure you produce a password right here that satisfies the existing policy requirments. Failure to do this may cause a mistake when making the database in action 4.

In addition to your settings that are previous there are many other options available to you in this file. For example, you can configure a connection that is secure the database utilizing an SSL certification, you'll stimulate e-mail notifications for different database activities, and you will allow debugging mode to come up with more in depth logs. For a installation that is basic however, you'll keep the remaining among these settings set with their standard values.

when you are done modifying, save your self and shut the file.

Now you've produced the configuration that is main for phpIPAM, it is the right time to hook up to the internet program and finish the installation.

Step 4 — Creating the Database and Database consumer

The final step up the installation procedure consist of producing a MySQL database and individual for phpIPAM and establishing an admin individual account fully for phpIPAM's internet program. All this can be achieved through phpIPAM's web-based installation wizard.

Navigate your web browser to You will see the phpIPAM installation website inviting you to definitely the wizard and requesting to find the sort of installation you need to perform. The previous steps to resolve the problem.( if you're not able to bring this screen up, verify that your firewall is not blocking access on port 80 and retrace**********)

There are three choices with this display — New phpipam installation, Migrate phpipam installation, and Working installation — each with a description that is short of purpose. The button marked New phpipam installation.( as you're setting up a new phpIPAM installation, press**********)

Installing phpIPAM, step 1

On the screen that is next the wizard defines the remainder installation procedure, points you to definitely the state installation documents to get more details, and asks you to definitely determine which kind of database installation you would like to perform.

Again, you have got three alternatives:

  • Automatic database installation: The wizard use the information and knowledge you joined into config.php in 3 to generate a MySQL database and individual.
  • MySQL import guidelines: you are going to utilize MySQL's very own mysqlimport energy to generate the database from plaintext files you offer.
  • Manual database installation: The wizard will give the standard SQL commands you will need to produce a brand new phpIPAM database by hand.

For ease's benefit, select the completely automatic choice by hitting the Automatic database installation switch.

Installing phpIPAM, step 2

The wizard will now request you to give you the information it requires to hook up to MySQL. Including the login qualifications the individual it will link because, the database's location, plus the database's title.

(you must enter the login credentials for a user that has sufficient privileges to do so*********)As you need the wizard to create a new database and user. Your MySQL root individual is a great option.

By standard, the database's location is defined to localhost and its particular title is defined to phpipam. Then restart the installation wizard.( if you'd like to change either of these, you will need to edit the config.php file you created in Step 3 and**********)

You can access installation that is additional by hitting the Show higher level choices switch. Right here, you will end up provided three more alternatives:

  • Drop current database Before operating the installation procedure, the wizard will make an effort to delete a database because of the name that is same the worthiness in MySQL database name industry. This will be deterred automagically.
  • Create database The wizard will make an effort to produce a database because of the name that is same the worthiness in MySQL database name industry. This will be fired up automagically.
  • Create permissions The wizard will make an effort to set permissions in the database that is new restricting use of just the MySQL individual defined in config.php. This will be fired up automagically.

Enter the account the MySQL individual you would like the wizard to get in touch as, keep the higher level choices set with their standard values, and press the Install phpipam database switch.

Installing phpIPAM, step 3

You'll see a verification message letting you know your wizard effectively installed the database. Unless you, review the wizard's mistake communications for extra assistance.

Click on Continue to continue because of the installation.

Installing phpIPAM, step 4

On this display, the wizard encourages you to definitely set the admin individual password the internet program, the name to produce near the top of each phpIPAM internet user interface display, plus the Address for the phpIPAM installation.

Enter the admin password you would like to utilize, a title that is descriptive your phpIPAM program, plus the fully-qualified domain title that tips towards phpIPAM installation, then press the Save settings switch.

Installing phpIPAM, step 5

You should now see a verification message letting you know your settings had been effectively conserved. Unless you, make use of the wizard's mistake communications to identify the nagging issue.

Installing phpIPAM, step 6

Click the Proceed to login( button that is visit your phpIPAM installation's website, and sign-in because of the admin account you joined in Admin password industry.

phpIPAM installation and setup are actually complete, you monitor more easily.( so you can begin adding information to manage the networks**********)


In this informative article you installed and configured phpIPAM, an open-source internet protocol address administration internet application. It's simple to monitor internet protocol address use both in your infrastructure that is own and other systems.

Additionally, you can make use of phpIPAM to trace your VLANs and map them against your subnets, keep a listing of one's system products which includes information like unit kind and location, and configure e-mail notifications become alerted of modifications in your system.

For automating phpIPAM taks programatticaly and integrating with applications you are composing your self, start to see the documentation that is official phipIPAM's integrated API. To obtain installed and operating quicker because of the API, explore the state introductory tutorials.

Lastly, make sure you investigate the automatic scanning settings either against a general public infrastructure you're handling or against your own personal infrastructure that is local. It’s the host scan automation that may offer you the benefit that is greatest as a sysadmin or devops engineer.

Monitoring and Detecting Modified data making use of Tripwire on CentOS 7

Previous article

How exactly to produce a higher Availability Setup with Heartbeat and IPs that are floating Ubuntu 16.04

Next article

You may also like


Leave a reply

Your email address will not be published. Required fields are marked *

More in Apache