Kaligule
Kaligule

Reputation: 754

How to make Zabbix on nixos available in local network

My laptop and my nixos-server (hostname=nixos) are both conected to my router (fritz.box). I can access the rooter via ping (ping nixos.fritz.box) and ssh (ssh [email protected]).

Networking diagram

On the server I have configured nixos to run both zabbix-server and zabbix-web:

  services.zabbixServer.enable = true;
  services.zabbixWeb = {
    enable = true;
    virtualHost = {
      hostName = "zabbix.fritz.box"; # doesn't work
      adminAddr = "webmaster@localhost";
    };
  };

This seems to work fine. On the server I see:

systemctl list-units | grep zabbix
  phpfpm-zabbix.service   loaded active     running      PHP FastCGI Process Manager service for pool zabbix
  zabbix-server.service   loaded active     running      Zabbix Server 

Unfortunately I can't access zabbix from my computer via webbrowser at zabbix.fritz.box.

I had hoped just setting services.zabbixWeb.virtualHost.hostName would be enough. I tried setting it to zabbix.localhost and access it from the server itself. That worked just fine.

There are many options for zabbix-web in nixos, but I don't know much about networking so I don't know how to solve this problem. I didn't find any documentation about zabbix on nixos.

But I don't know how to make zabbix-web that available in the local network. Can someone help me with that, please?

Edit:

netstat -an | grep LISTEN gives me this:

tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN     
tcp6       0      0 :::80                   :::*                    LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN     
tcp6       0      0 ::1:5432                :::*                    LISTEN     
unix  2      [ ACC ]     STREAM     LISTENING     60682    /run/zabbix/zabbix_server_alerter.sock
unix  2      [ ACC ]     STREAM     LISTENING     60690    /run/zabbix/zabbix_server_preprocessing.sock
unix  2      [ ACC ]     STREAM     LISTENING     60693    /run/zabbix/zabbix_server_lld.sock
unix  2      [ ACC ]     STREAM     LISTENING     114750   /run/phpfpm/zabbix.sock
unix  2      [ ACC ]     SEQPACKET  LISTENING     37697    /run/udev/control
unix  2      [ ACC ]     STREAM     LISTENING     41031    /var/run/nscd/socket
unix  2      [ ACC ]     STREAM     LISTENING     44221773 /run/user/1001/systemd/private
unix  2      [ ACC ]     STREAM     LISTENING     22618    /run/user/1000/systemd/private
unix  2      [ ACC ]     STREAM     LISTENING     22624    /run/user/1000/bus
unix  2      [ ACC ]     STREAM     LISTENING     12900    /run/systemd/private
unix  2      [ ACC ]     STREAM     LISTENING     12904    /run/systemd/userdb/io.systemd.DynamicUser
unix  2      [ ACC ]     SEQPACKET  LISTENING     12914    /run/systemd/coredump
unix  2      [ ACC ]     STREAM     LISTENING     36216    /var/run/dhcpcd.sock
unix  2      [ ACC ]     STREAM     LISTENING     36218    /var/run/dhcpcd.unpriv.sock
unix  2      [ ACC ]     STREAM     LISTENING     12923    /run/systemd/journal/stdout
unix  2      [ ACC ]     STREAM     LISTENING     44238740 /run/httpd/cgisock.25951
unix  2      [ ACC ]     STREAM     LISTENING     44199357 /run/user/1001/bus
unix  2      [ ACC ]     STREAM     LISTENING     12229    /run/dbus/system_bus_socket
unix  2      [ ACC ]     STREAM     LISTENING     59856    /run/postgresql/.s.PGSQL.5432
unix  2      [ ACC ]     STREAM     LISTENING     12233    /nix/var/nix/daemon-socket/socket
unix  2      [ ACC ]     STREAM     LISTENING     13822    /run/systemd/journal/io.systemd.journal

Upvotes: 1

Views: 376

Answers (1)

Kaligule
Kaligule

Reputation: 754

As @IronBishop suggested, I didn't open the TCP ports. The firewall is activated by default on nixos.

The following line on the server fixed the problem, zabbix is available at nixos.fritz.box:

networking.firewall.allowedTCPPorts = [ 80 443 ];

Upvotes: 1

Related Questions