Released on November 17, 2023
Changes Version 4.0.0
- M/Monit 4 is a major new release. Users who purchased the 3.x license after November 17 2022, are eligible for free upgrade. Users with older 3.x license can upgrade with a 50 percent discount.
- Roles: added a more fine-grained access level where we associate hosts, host-groups and reports with user roles. Admin can now set up M/Monit so a logged in user can only view and access a subset of hosts and reports.
- Charts: Much better data precision across ranges • You can now Zoom and Pan charts • Charts are more lively and refresh data automatically. Refresh can be paused • Easier to correlate charts by introducing a vertical time line across all charts.
Fixed: Data are now immediately available in all precisions. M/Monit used to require some time before data were made visible in the charts. Fixed: If statistics were not stored within 2 minutes, old statistics could get lost Fixed: A potential database deadlock when processing statistics.
- M/Monit 4 uses a new and more secure authentication scheme and password storage. If you upgrade from a previous version of M/Monit, just re-save your passwords and the new scheme will automatically be used.
- Added a new collector role which can be used to define a pure collector user who can handle messages sent to M/Monit but will not have access to any other functionality. The default monit user configured in Monit's .monitrc have collector privileges and it can be useful to limit this users other privileges.
- A regular (non-admin) user can now manage his own profile, such as changing password, phone number, etc. The page is available via the "Profile" link in the toolbar.
- Added host uptime (as reported by Monit) to the Host Status Detailed page (requires monit >= 5.34)
- Alert improvements:
- By default an alert program is executed once, when the error occurs. It can now be setup to repeate and run again if an error persist.
- An alert program will now log program exit code and output.
- Alerts Message Settings: You can now specify the sender's full name in addition to the address.
- The Hosts Status page now scales much better for a large number of hosts.
- Event notes are retained even if the user, who added the note, is deleted. This allows the full history of a problem to be kept.
- Security enhancements:
- Enable click-jacking protection
- Enable MIME type sniffing protection
- Don't send Referrer for another origin requests
- Enable HTTP Strict Transport Security if TLS is enabled, or M/Monit is behind https proxy scheme
- Use Secure cookie prefix if TLS is enabled
- Disable weak SSL ciphers by default. The M/Monit server.xml <Host> ciphers are now configured with the following defaults, if the 'ciphers' option is not specified by the user:
ALL:!DES:!3DES:!RC4:!aNULL:!LOW:!EXP:!IDEA:!MD5:!CAMELLIA :!ARIA128-GCM-SHA256:!ARIA256-GCM-SHA384:!ECDHE-RSA-AES256-SHA384 :!ECDHE-RSA-AES256-SHA:!AES256-GCM-SHA384:!AES256-CCM:!AES256-CCM8 :!AES256-SHA256:!AES256-SHA:!ECDHE-RSA-AES128-SHA256 :!ECDHE-RSA-AES128-SHA:!AES128-GCM-SHA256:!AES128-CCM8 :!AES128-CCM:!AES128-SHA256:!AES128-SHA:@STRENGTH
- Upgraded OpenSSL to 3.0.12 to fix the following OpenSSL defects:
CVE-2023-3817 CVE-2023-3446 CVE-2023-2975 CVE-2023-4807 CVE-2023-5363
- A user's uname is no longer imutable and can be changed.
- M/Monit now performs automatic database optimization for the SQLite database once a day.
- HTTP-API update (version changed to 2)
- OpenBSD 7.4 support added
- OpenBSD ARM64 support added
- FreeBSD ARM64 support added
- Fixed database migration script for SQLite to work properly with PostgreSQL
- Mail alerts: If a sender address was rejected by the mailserver, messages which were queue by M/Monit did retain the invalid address, even if it was fixed in the Message settings tab in Alert Admin.
- Do not allow host groups with duplicate names.
- Do not allow alert rules with duplicate names.
- Plus many more internal fixes and improvements.
- Download the release for your OS.
- Unpack the tar.gz file in a directory, any directory will do, but unpacking in /opt or /usr/local are good choices.
- Go to the unpacked mmonit-4.0.0 directory
- Run M/Monit using: ./bin/mmonit
- Point your Browser to the host where mmonit is installed (or "localhost" if running on the same machine), for example: http://localhost:8080/ and login as user admin with password swordfish
- If you want to set up M/Monit to use MySQL or PostgreSQL instead of the default SQLite database, follow these instructions in the wiki.
- More documentation can be found inline in the application and in the manual (PDF).
- Troubleshooting If M/Monit does not appear to run, investigate the error.log in in the logs directory. You can also run mmonit in the foreground and in diagnostic mode, start mmonit with the -id options. In diagnostic mode, mmonit will print errors and debug informations to the console. Use CTRL+C to stop mmonit in this mode.
The upgrade program can be used to automatically copy database and configuration files from the previous installation and update the database schema. On macOS upgrading is not needed as the installer will upgrade M/Monit in /usr/local/mmonit automatically.
The whole upgrade process should take less than a minute and you do not have to stop or change Monit on other machines during this process. Monit will simply pick up and start reporting to the new M/Monit 4.0.0 version.
- Download the new 4.0.0 release for your OS.
- Install M/Monit 4.0.0 in the same directory as previous release. For example:
- Stop the previous M/Monit release:
- Run the upgrade program and specify the path to the previous M/Monit release:
/usr/local/mmonit-4.0.0/upgrade/upgrade -p /usr/local/mmonit-3.7.15
- Start M/Monit 4.0.0:
- Finally, please clear your browser cache before accessing M/Monit 4.0.0