UniFi WLAN Controller unter anderem Nutzer starten

Vor ein paar Wochen habe ich neue AccessPoints von Ubiquiti Networks gekauft, um das WLAN Netzwerk in der Firma neu aufzubauen.
Die AccessPoints haben eine wesentlich bessere Reichweite und sehen auch besser aus als unsere alten AccessPoints.
Die kostenlos erhältliche Controller-Software bietet mir alle benötigten Features, inklusive Gäste über zeitlich begrenzte Tickets zu authentifizieren ( ähnlich wie in Hotels ).

Soweit so gut, allerdings läuft die Controller Software standardmäßig unter dem User root, für einen richtigen Linux Admin geht so etwas natürlich gar nicht.
Es ist aber grundsätzlich möglich die Software auch unter einem anderen User laufen zu lassen, und dies werde ich nun erklären:

Als erstes wird die Software gestoppt:
/etc/init.d/unifi stop

Nachdem die Software heruntergefahren ist erstellen wir einen neuen User mit dem Namen „unifi“:
adduser unifi

Diesem User und der gleichnamigen Gruppe übertragen wir die Rechte an den Ordnern und Dateien der Software:
chown unifi:unifi -R /usr/lib/unifi
chown unifi:unifi -R /var/lib/unifi
chown unifi:unifi -R /var/log/unifi

Zuletzt müssen wir noch das init-Script dahingehend anpassen, dass die Software mit dem neuen User gestartet wird.
Hierzu öffnen wir das init-Script unter /etc/init.d/unifi mit einem Editor und suchen nach folgenden Zeilen:

JSVC_OPTS="${JSVC_OPTS}\
-home ${JAVA_HOME} \
-cp /usr/share/java/commons-daemon.jar:${BASEDIR}/lib/ace.jar \
-pidfile ${PIDFILE} \
-procname ${NAME} \
-outfile SYSLOG \
-errfile SYSLOG \
-Djava.awt.headless=true -Xmx1024M"

In diesem Block fügen wir nun die markierte Zeile ein:

JSVC_OPTS="${JSVC_OPTS}\
-home ${JAVA_HOME} \
-user unifi \
-cp /usr/share/java/commons-daemon.jar:${BASEDIR}/lib/ace.jar \
-pidfile ${PIDFILE} \
-procname ${NAME} \
-outfile SYSLOG \
-errfile SYSLOG \
-Djava.awt.headless=true -Xmx1024M"

Jetzt kann die Software wieder gestartet werden:
/etc/init.d/unifi start

Zu diesem Thema habe ich schon ein Ticket beim Hersteller geöffnet, mal sehen ob dieses Problem in einer der nächsten Versionen behoben wird.

Wichtig: Bei jedem Update / Upgrade der Software werdet ihr gefragt, ob die Änderungen am init-Script überschrieben werden sollen. Außerdem werden die Zugriffsrechte an den Ordnern und Dateien wieder an den User root übertragen, dies muss dann wieder geändert werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.