As the most common Linux distro, configuration monitoring for Ubuntu OS requires straightforward scan setups and easy to understand visualizations of change.
Let's see how easy it is to monitor for changes on your Ubuntu server with UpGuard by provisioning the server and installing a basic Python environment.
Provision and Launch your Ubuntu OS server
First, you'll need to get yourself an Ubuntu server. Spinning one up in AWS is a good way to get started.
Finish following the steps for instance type, configuration, storage, tagging, and security settings. Review specs at the Review Instance Launch page before hitting launch to be sure the server has your desired specs. After hitting Launch, you should see your new instance in the EC2 management console.
Log in to your server by running Amazon's auto-generated ssh command in the directory containing your server key. Find the command by clicking `Connect` under the Actions dropdown menu and copy it.
Paste the command into the terminal and finish logging in.
Connect your Ubuntu server to UpGuard
Once you've logged in to the server, log in to and UpGuard and add the Ubuntu server to your account.
For SSH connections, enter the connection details for your Ubuntu server and run the auto-generated command in the command line. If you choose to connect via agent, run UpGuard's auto-generated command in the command line to install it.
Once you've completed the connection process, UpGuard will automatically present you with the scan of your Ubuntu baseline. We'll use this baseline to monitor for changes as we configure the server.
Monitor configuration changes made to the Ubuntu server
Once you have an accurate baseline for your server, monitoring for configuration changes you make is simple. So long as the configuration monitoring scans are running at desired time intervals, keeping track of change is straightforward. Here, we'll manually run a scan after each change we make, but you can define an automatic scanning interval that works for you.
For this example, we'll set up a Python environment and install a few packages to see how UpGuard monitors for configuration change..
We'll start by installing Python on our current server by running the following command
$ sudo apt-get install python
Once installation is complete, we'll return to our Ubuntu node in UpGuard and run a new scan. UpGuard will inform you that it detected the differences.
We can see UpGuard's configuration monitoring capabilities in action by comparing our new scan against the first one. Simply select the most recent scan from the Scans dropdown, and select a desired comparison scan in the Compare to dropdown.
Filtering for unchanged items and expanding the Packages group shows us more detail for our installation of Python.
We now have a visual record for the following configuration changes we've made to our Ubuntu server:
Let's make some more changes. We'll do this by installing pip by with the following command
$ sudo apt-get install python-pip
After successful installation, we run a new scan and can see that UpGuard has automatically created a new index grouping under Packages to separate packages installed by apt or pip. This separation increases the fidelity of our change records.
Now with pip on our server, let's install some Python packages. Requests is a popular package for sending HTTP requests, so I'll install it by running the following command in our server.
$ sudo pip install requests
Once installation completes, you can initiate a scan to compare your new baseline against the previous one. As we can see, UpGuard has detected our recent installation of Requests.
Thus far, we've installed Python, a new package manager, and a new package as well. For good measure, let's be sure all our apt packages are running the latest versions before signing off. We'll install new package versions by running the following command:
$ sudo apt-get upgrade
Once again, when we run a new scan and compare it against the previous baseline, we can see that UpGuard detected modifications to our apt packages.
Clicking on Packages group gives us more insight into specific the packages that were updated, as well as what versions changed.
Configuration monitoring for Ubuntu OS with UpGuard is very easy to set up, and change tracking is similarly simple due to the UpGuard's visualization capabilities.
With UpGuard for configuration monitoring, every unseen and forgotten change to your Ubuntu server is recorded and easy to understand.
How can you tell if your server is setup correctly and ensure those initial configurations don’t drift over time? With UpGuard, you can match a policy to 10 essential steps as an example of how to control your IT environment.