At work we are using Libre with around 600 devices on a offline network. Has anyone created a offline notifications system? That is, have a client on the same network get notifications from the Librenms? We cannot use any of the built in systems due to beeing offline.
I have been waiting for the SSL for 4-5 months now (big gov) and when I got it, I was told it would not work since everything is offline!
So I need to find other ways of alerting users! And so far API is the best solution, correct? All the other transports are all online based as far as I can see.
I have been looking at this page Alerts - LibreNMS Docs - but I have never done any API - so I really don´t know where to start! The client that hopefully will show the alerts are a windows machine, probably several machines around the premise actually.
Edit: And yeah, everything is locally but on different vlans.
So you’ll need to build something outside of LibreNMS that runs as an API in that case. It then needs to take the data LibreNMS can pass to it and do something with it to display on your windows machines. That I can’t help you with but I expect chatgpt or similar could build you a working example
I’m not sure I completely understand what the OP is needing, but I thought I would mention that I found an n8n node for LibreNMS that can process the alerts (See below)
So this might be helpful in the OP getting the alerts from LibreNMS, processing them in the workflow, and then outputing them to some sort of dashboard or alert system. (Grafana, email, chatbot, Telegram?) Depending on the precise definition of “offline” they are using in this context.
I need a solution to easily show alerts for about 600 devices that would disconnect, reboot etc so users are aware something is going on. The network of about 600 devices is 100% offline, and consists mostly of cameras and several recorders and other minor stuff that needs monitoring. And where said cameras are monitored runs Windows, and on that screen a alert popup would be great.
So a solution on the mentioned Windows pc to show the alerts (via the API) would be fantastic!
Edit: I have a windows based work laptop I could run somekind of docker on, and try the proposed solution on @penfold1972
Edit 2: To clarify; I run Librenms to monitor all 600 devices and have zero solution for alerting users if something goes down, since this is a offline network.
I am guessing that you are discussing an air-gapped network that doesn’t have access to the internet, which means I may guess wrong. But it sounds like you have one windows laptop that you want to use to "alert users” to issues on your network. That implies all of the “users” are in the same room, and the laptop has access to the LibreNMS server that is doing the monitoring.
Since your network cannot access the internet, your laptop’s browser cannot verify the SSL certificate you waited months to get. maybe the server won’t use it because it cannot verify it?
Either way, you can add the certificate (or a self-signed one) to the browser(s) that access LibreNMS so they know to just trust it. That would allow you to have the LilbreNMS “alerts” page open in that laptop’s browser and alert the users without jumping through docker/API/third party software solutions.
There are a million ways to complicate that simple scenario, so I won’t do anymore guessing. But I will say that n8n will need to access the API the same way a web browser would access the LibreNMS alert page (HTTP or HTTPS) so if I broke down the problem correctly, the n8n node for LibreNMS might not be very helpful.
The possibility occurred to me that you want the “Alerts” screen accessible on a laptop and are looking at other ways to re-create that because you can’t get the browser to trust the SSL cert your webserver is using. I figured I’d mention a better approach might be to get the browser(s) to just trust the certificate rather than build a new alert system. (Then you can do it on multiple laptops.)
This is just a random image from google. The point here is I need a notification on one of the screens on the big wall. They are running Windows and they are offline to the rest of the world besides the vlans all the stuff is running on. So running somekid of script on one of the windows computers to interact with Librenms to display notifications is the main goal here.
Edit: The certificate I got is a pfx-file I have tried to break apart into .pem and .key - but of course, since the system is offline they cannot check the certificate. So I could actually add the .pfx-file to the Windows certificate storage (whatever it’s called) and it will trust Librenms to allow for notifications? I have never worked with pfx-files
I’ve never worked with pfx files either, and I don’t do a lot with windows, so I am limited to just talking about general approach rather than specific solutions.
But to clarify what I was thinking: You have a machine running LibreNMS in a web server (e.g. Apache or NGINX) and it has a certificate to use for encrypting traffic. Since I can’t speak to pfx certificates, I will concentrate on just plain old self-signed certificates. If you create a self-signed certificate and get the web server running with that, then it will use that for all encrypted sessions with web clients/browsers.
The problem is any clients that connect to your LibreNMS web server will be given that self-signed certificate that they have no way of knowing if it is legit or if one someone else just “made it up” and the browser gives warnings, maybe even refusing the go any further, and generally makes it sound like something bad is happening. But since this is a certificate you installed, you should be able to just tell the browser to “shut up and do as I say” and trust that unknown certificate.
Now, the way to tell the browser to trust that self-signed certificate depends on the browser, maybe even your windows security settings, and can be a bit of trouble to get done. (This is probably on purpose to make it harder for hackers to impersonate a victum’s bank or something and trick them to just click past all the warnings that the browser gives them in that situation.)
Since it sounds like you only need this done on one laptop, and you don’t need to have dozens of people to jump through those same hoops, I am guessing it would be easiest if you get that laptop’s browser to just accept the certificate that you get the web server to run with and then the laptop’s browser open the LibreNMS alerts page on that feeds it’s own monitor for people to look at.
If you can get that working, then maybe it’s worth trying to get the web server running with the pfx certificate and making the browser trust that certificate as well. If the web server will not work with the PFX certificate and you cannot find a way to convert it, then at least you have the self-signed cert running.