If you’ve followed along with the “Introducing NEMS Linux” series these past few months, you’re already quite familiar with what NEMS Linux means to your network. December’s exercise-heavy article almost broke the needle on my nerd-o-meter, so with the recent release of NEMS Linux 1.5 I’d like to dial it back a little and introduce you to the most sophisticated out-of-the-box Nagios Enterprise Monitoring Server out there, available now for the ODROID-XU4 platform. I chose the XU4Q as my main development board for NEMS 1.5, and it was a great board to work with.
While this is a quick introduction to some of the standout features of NEMS Linux 1.5, feel free to browse the changelog to really get a sense for all that has gone into this exciting release. NEMS Linux has always been about bringing an exceptional, feature-rich monitoring server to networks of all sizes. Version 1.5 not only enhances the experience with a suite of improvements, but also begins a focus of bringing NEMS Linux to big business environments. Whether you’re part of a data centre, a school board, a Fortune 500 company, or just a home network, NEMS is built for you. Let’s go through some of the enhancements you’ll find in NEMS Linux 1.5.
My focus on enterprise doesn’t mean these new features aren’t also suitable for the small computer shop. Quite the contrary: It means that the smaller network user also benefits from enterprise-grade features. One such feature designed specifically to assist you with the software auditing process is the NEMS System Settings Tool, which now includes the option to change the schedule for automatic software updates, or disable them entirely. The goal is to allow the enterprise sysadmin an opportunity to audit the software. Disabling NEMS’ automatic update feature to prevent rollout of unapproved software revisions gives you the chance to test and audit updates before rolling them out to production NEMS servers.
Your NEMS Hardware ID has been moved out of NEMS System Settings Tool and a new feature has been added to the Configuration menu: NEMS Server Overview. This helpful page provides everything you need to know about your NEMS Linux server on a single screen. For example, in NEMS Server Overview, you’ll find the LAN IP address of your NEMS Linux server–helpful if \\nems.local isn’t resolving for you. You’ll also find the version of NEMS you are using and, of course, your NEMS Hardware ID, amidst several other server-specific items.
One of the goals of NEMS Linux 1.5 has been to introduce several user-requested features as submitted in the community forum. This has meant integrating a number of new check commands. Along the way I also set up a few new out-of-the-box demo services, including CPU temperature monitoring and Internet speed testing . I’ve also included Cisco SNMP monitoring, IPMI sensor monitoring, VMWare ESXI hardware monitoring, QNAP device monitoring, MS SQL monitoring, and more.
I really wanted to take NEMS notifications to the next level. Nagios notifications are by default very 1990s, but Heini Holm Andersen had already done some amazing work on responsive HTML email templates for Nagios. I reached out to him to discuss licensing his software for use beginning in NEMS Linux 1.5. His products are, by default, not licensed for distribution or modification. I was so pleased to hear back and learn that he loves NEMS Linux, and is excited about my request. He provided blanket permission for me to modify, distribute, use, and include his plugin in NEMS Linux 1.5+. Its source code is now part of NEMS Linux and can be viewed as nems_sendmail_host and nems_sendmail_service in NEMS Migrator. I adapted the scripts for NEMS Linux so they now pull the SMTP configuration from NEMS System Settings Tool. I also added some customization to the overall look of the emails and added the NEMS Server Alias to each notification, which will help those of you who use multiple NEMS servers–another enterprise-centered upgrade.
Other notification options in NEMS Linux 1.5 include the Pushover app as well as a newly overhauled Telegram notification system that makes setting up a Telegram bot incredibly simple.
The CSF/LFD firewall now comes pre-configured to protect you from web-based attack, and you can now disable TLS for SMTP (a heavily requested option for sysadmins who use an internal relay). It’s also worth noting that the underlying software has been upgraded in the new release. For example, Nagios Core has been upgraded to 4.4.2, and PHP is now version 7.2, which introduces the Sodium cryptography library used by NEMS Cloud Services to encrypt confidential data.
NEMS Linux is absolutely free to download and use. However, I do offer some optional subscription-based services which I’d like to touch on. With a growing list of optional cloud-based features in NEMS Linux 1.5, NEMS Migrator’s Off-Site Backup has been moved to a new platform called NEMS Cloud Services. All Off-Site Backup accounts have been automatically upgraded, and there is no additional cost; just more features. NEMS Cloud Services also adds preliminary cloud functionality in preparation for some exciting features that will be released throughout the NEMS 1.5 release cycle, such as a consolidated NEMS TV Dashboard in the cloud which allows you to see an overview of multiple NEMS Linux servers in real time.
NEMS Cloud Services also includes NEMS Checkin. A number of NEMS users, especially those who are serious about reliability, don’t tend to trust SD cards, so it’s not uncommon to setup a second, or even a third NEMS server to monitor your main NEMS server. I call this “NEMSception.” This is redundant, but up until NEMS 1.5 has been a great idea for those who want to know if their NEMS server has gone offline. Now, NEMS Checkin (in NEMS SST) allows your NEMS server to check in with NEMS Cloud Services. If your NEMS server stops checking in, NEMS Cloud Services will send you a notification that your NEMS server appears to be offline. As with all NEMS Cloud Services, this useful feature is entirely optional, and is disabled by default.
How to Upgrade to NEMS Linux 1.5
- The NEMS Migrator tool allows you to export/backup your complete NEMS configuration as well as import a previous backup through its nems-restore tool. This is particularly helpful when upgrading from previous versions of NEMS, or when moving from one platform to another. It saves you having to reconfigure your NEMS deployment just to get the latest features or upgraded hardware. The following steps may be followed to upgrade from any previous version of NEMS to the latest NEMS Linux 1.5. Therefore, if you’ve already deployed your NEMS Linux 1.4.1 system, you can easily migrate your configuration to NEMS 1.5.
- Visit your existing NEMS Linux dashboard in your browser and press Migrator and download your local backup.nems file. Alternatively you may access the samba share at \\nems.local\backup (Windows) / smb://nems.local/backup (Linux/macOS) and copy your backup.nems file to your local machine. Set this aside for later importing.
- Download and burn NEMS Linux 1.5 on a new card. Use a new card so you can always revert back to your existing NEMS Linux 1.4.1 if you have a problem. Boot your device into NEMS Linux 1.5 and give it a few minutes to run its first boot operations, gather some updates, and so on.
- Initialize NEMS 1.5 as if it was a new deployment by SSH’ing to the NEMS server and typing: sudo nems-init Please refer to Part 1 of this series for the full instructions.
- Copy the backup.nems file you set aside in Step 1 to your NEMS 1.5 deployment’s home folder at \\nems.local\home (Windows) / smb://nems.local/home (Linux/macOS). SSH into your NEMS server and restore the backup.nems file as follows:
$ sudo nems-restore ~/backup.nemsIf you subscribed to NEMS Cloud Services (previously NEMS Migrator Off-Site Backup), replace steps 5 and 6 with:
$ sudo nems-restore osbIf, on the other hand, you have never used NEMS Linux before and don’t need to upgrade from a previous version, you can get up and running by following steps 2-4.
That’s all there is to it. You’re now up and running with NEMS Linux 1.5. Enjoy!
NEMS has an active community forum. I check in quite regularly to provide free support to users. I also offer commercial one-on-one priority support for those needing a higher level of support. NEMS Linux is free to download and use. Its source code is available on GitHub. Download NEMS Linux for ODROID at https://nemslinux.com/
You can also follow @NEMSLinux on Twitter or join us on Discord. I’ve also launched a YouTube channel specifically for NEMS where I will be posting screencasts and tutorials about NEMS Linux. While the content is still to come, I’d really appreciate if you’d subscribe! You’ll find the channel here.