DynNodeDns als Dienst ausführen

Gespeichert von Erik Wegner am/um
Body

Die Ausführung des dynnodednsserver als Dienst sorgt dafür, dass auch nach einem Systemneustart auf die DNS-Einträge zugegriffen werden kann.

  1. Dazu wird als erstes ein Systembenutzer dndns eingerichtet. Er wird Besitzer aller Dateien im Verzeichnis /opt/dndns.
  2. Da ein unpriviligierter Benutzer keine Webdienste auf einem Port kleiner als 1024 anbieten kann, wird per Firewall-Regel der UTP-Datenverkehr von Port 53 umgelenkt auf Port 10153. Dies regelt der Eintrag

    FW_REDIRECT="0/0,0/0,udp,53,10153"

    in der Datei /etc/sysconfig/SuSEfirewall2.

  3. Als letztes wird die Konfiguration für systemd erzeugt. Dafür wird die Datei /etc/systemd/system/dndns.service mit folgendem Inhalt erzeugt:

    [Unit] 
    Description=Dyn node dns service
    
    [Service]
    ExecStart=/usr/bin/node /opt/dndns/dnd.js
    Restart=always
    StandardOutput=syslog
    SyslogIdentifier=dndns
    User=dndns
    Group=dndns
    
    [Install]
    WantedBy=default.target

    Anschließend wird der Dienst aktiviert und gleich gestartet:

    systemctl enable dndns.service
    systemctl start dndns.service