NUT (Network UPS Tools): nut-server not listening on IP address

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
LittleAlf
Beiträge: 2
Registriert: 17.10.2020 16:08:32

NUT (Network UPS Tools): nut-server not listening on IP address

Beitrag von LittleAlf » 18.10.2020 15:43:13

Liebe Debian-Gemeinde,

ich hoffe, mir kann einer bei der richtigen Konfiguration des Network UPS Tools (NUT) helfen. Ich habe schon alle möglichen Beiträge zu NUT durchsucht, aber nichts gefunden, was zu meinem Problem passt. Auch in der NUT-Dokumentation habe ich meine explizite Fehlermeldung nicht gefunden.

Setup
Ich betreibe zwei Debian-Server mit Debian 10:
  1. Nextcloud-Server mit Zugriff aus dem Internet; läuft im Dauerbetrieb
  2. OMV5-Server als Dateiserver, der nur das Heimnetz bedient; schaltet sich nur ein, wenn ein Client-Rechner läuft
Diese beiden Server, der Router sowie der zugehörige Switch sollen durch die USV gegen Stromausfall gesichert werden. Bei der USV handelt es sich um eine APC Back-UPS ES 700G. Die gewünschte NUT-Konfiguration ist folgende:
  • USV per USB an den Nextcloud-Server angeschlossen
  • Nextcloud-Server in NUT als Netserver configuriert
  • OMV5-Server in NUT as Netclient konfiguriert
Der Anschluss der USV an den Nextcloud-Server als Master und die Kommunikation mit diesem klappt. Nur: Ich schaffe es einfach nicht, dass der nut-server-Dienst, der auf dem Nextcloud-Server läuft, auch auf die NUT-Anfragen des OMV5-Servers hört! Er will einfach nicht an der angegebenen IP-Adresse lauschen. Dies lässt sich bei Abfrage des Status von net-server erkennen (IP maskiert):

Code: Alles auswählen

root@NCP-Server:~# systemctl status nut-server
● nut-server.service - Network UPS Tools - power devices information server
   Loaded: loaded (/lib/systemd/system/nut-server.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2020-10-17 19:06:53 CEST; 2s ago
  Process: 27309 ExecStart=/sbin/upsd (code=exited, status=0/SUCCESS)
 Main PID: 27310 (upsd)
    Tasks: 1 (limit: 4378)
   Memory: 956.0K
   CGroup: /system.slice/nut-server.service
           └─27310 /lib/nut/upsd

Okt 17 19:06:53 NCP-Server systemd[1]: Starting Network UPS Tools - power devices information server...
Okt 17 19:06:53 NCP-Server upsd[27309]: fopen /var/run/nut/upsd.pid: No such file or directory
Okt 17 19:06:53 NCP-Server upsd[27309]: listening on 127.0.0.1 port 3493
Okt 17 19:06:53 NCP-Server upsd[27309]: listening on 127.0.0.1 port 3493
Okt 17 19:06:53 NCP-Server upsd[27309]: not listening on 192.168.*.11 port 3493
Okt 17 19:06:53 NCP-Server upsd[27309]: not listening on 192.168.*.11 port 3493
Okt 17 19:06:53 NCP-Server upsd[27309]: Connected to UPS [apc700]: usbhid-ups-apc700
Okt 17 19:06:53 NCP-Server upsd[27309]: Connected to UPS [apc700]: usbhid-ups-apc700
Okt 17 19:06:53 NCP-Server systemd[1]: Started Network UPS Tools - power devices information server.
Okt 17 19:06:53 NCP-Server upsd[27310]: Startup successful
Wieso will er nicht auf .*.11 lauschen? Hier die entsprechenden Konfigurationen:

Datei nut.conf (NCP-Server):

Code: Alles auswählen

MODE=netserver
Datei ups.conf (NCP-Server):

Code: Alles auswählen

maxretry = 3

[apc700]
	driver = usbhid-ups
	port = auto
	desc = "APC Back-UPs 700"
Datei upsd.conf (NCP-Server):

Code: Alles auswählen

#IP-Adresse des OMV-Servers:
LISTEN 192.168.1.11 3493
#Lokaler NCP-Server:
LISTEN 127.0.0.1 3493
Datei upsd.users (NCP-Server):

Code: Alles auswählen

[upsmon]
    password  = pass
    upsmon master

[upsremote]
    password  = pass
    upsmon slave
Datei upsmon.conf (NCP-Server):

Code: Alles auswählen

RUN_AS_USER nut

MONITOR apc700@localhost 1 upsmon pass master

MINSUPPLIES 1

SHUTDOWNCMD "/sbin/shutdown -h +0"

POLLFREQ 5
POLLFREQALERT 5
HOSTSYNC 15
DEADTIME 15

POWERDOWNFLAG /etc/killpower

 NOTIFYMSG ONLINE	"UPS %s on line power"
 NOTIFYMSG ONBATT	"UPS %s on battery"
 NOTIFYMSG LOWBATT	"UPS %s battery is low"
 NOTIFYMSG FSD		"UPS %s: forced shutdown in progress"
 NOTIFYMSG COMMOK	"Communications with UPS %s established"
 NOTIFYMSG COMMBAD	"Communications with UPS %s lost"
 NOTIFYMSG SHUTDOWN	"Auto logout and shutdown proceeding"
 NOTIFYMSG REPLBATT	"UPS %s battery needs to be replaced"
 NOTIFYMSG NOCOMM	"UPS %s is unavailable"
 NOTIFYMSG NOPARENT	"upsmon parent process died - shutdown impossible"

 NOTIFYFLAG ONLINE	SYSLOG+WALL
 NOTIFYFLAG ONBATT	SYSLOG+WALL
 NOTIFYFLAG LOWBATT	SYSLOG+WALL
 NOTIFYFLAG FSD		SYSLOG+WALL
 NOTIFYFLAG COMMOK	SYSLOG+WALL
 NOTIFYFLAG COMMBAD	SYSLOG+WALL
 NOTIFYFLAG SHUTDOWN	SYSLOG+WALL
 NOTIFYFLAG REPLBATT	SYSLOG+WALL
 NOTIFYFLAG NOCOMM	SYSLOG+WALL
 NOTIFYFLAG NOPARENT	SYSLOG+WALL

RBWARNTIME 43200

NOCOMMWARNTIME 300

FINALDELAY 5
Für jede Hilfestellung, um die Konfiguration zum Laufen zu bekommen wäre ich sehr dankbar.

Viele Grüße
LittleAlf

LittleAlf
Beiträge: 2
Registriert: 17.10.2020 16:08:32

Re: NUT (Network UPS Tools): nut-server not listening on IP address

Beitrag von LittleAlf » 18.10.2020 20:36:24

Kaum habe ich die Frage gepostet, bin ich auch schon selbst auf die Antwort gestoßen:

Wie unter https://networkupstools.org/docs/FAQ.ht ... _from_upsd geschrieben, ist in der neuesten Version von NUT wohl nur ein LISTEN statement erlaubt. Es sollte keine Client-IP eingetragen werden! Falls die netserver-Einstellung (=neben dem Master noch Slaves, die ebenfalls jeweils mit nut-client verwendet werden sollen) gewählt wird, muss der Eintrag in upsd.conf lauten:

Code: Alles auswählen

LISTEN 0.0.0.0 3493
Hiermit funktioniert jetzt auch der Zugriff von meinem OMV-Server! Wenn ich nun auf dem NCP-Server den Status von nut-server aufrufe, erhalte ich (IP-Adresse maskiert):

Code: Alles auswählen

root@NCP-Server:~# systemctl status nut-server
● nut-server.service - Network UPS Tools - power devices information server
   Loaded: loaded (/lib/systemd/system/nut-server.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2020-10-18 18:22:18 CEST; 1h 54min ago
  Process: 3110 ExecStart=/sbin/upsd (code=exited, status=0/SUCCESS)
 Main PID: 3111 (upsd)
    Tasks: 1 (limit: 4378)
   Memory: 664.0K
   CGroup: /system.slice/nut-server.service
           └─3111 /lib/nut/upsd

Okt 18 18:22:18 NCP-Server upsd[3110]: listening on 0.0.0.0 port 3493
Okt 18 18:22:18 NCP-Server upsd[3110]: listening on 0.0.0.0 port 3493
Okt 18 18:22:18 NCP-Server upsd[3110]: Connected to UPS [apc700]: usbhid-ups-apc700
Okt 18 18:22:18 NCP-Server upsd[3110]: Connected to UPS [apc700]: usbhid-ups-apc700
Okt 18 18:22:18 NCP-Server systemd[1]: Started Network UPS Tools - power devices information server.
Okt 18 18:22:18 NCP-Server upsd[3111]: Startup successful
Okt 18 18:22:28 NCP-Server upsd[3111]: User upsmon@127.0.0.1 logged into UPS [apc700]
Okt 18 18:22:55 NCP-Server upsd[3111]: User upsmon@127.0.0.1 logged out from UPS [apc700]
Okt 18 18:22:56 NCP-Server upsd[3111]: User upsmon@127.0.0.1 logged into UPS [apc700]
Okt 18 18:24:49 NCP-Server upsd[3111]: User upsremote@192.168.*.11 logged into UPS [apc700]
Wichtig:
Mit dem Eintrag 0.0.0.0 lauscht der nut-server nun auf jede Anfrage von jeder IP-Adresse. Deshalb ist es unbedingt erforderlich, den Zugriff in der verwendeten Firewall zu begrenzen! In meinem Fall verwende ich UFW als Firewall. Der entsprechende Eintrag, aufgerufen mit ufw status verbose lautet (IP-Adresse maskiert):

Code: Alles auswählen

3493/tcp                   ALLOW IN    192.168.*.11

Antworten