Xinetd Beispiel Eigener Dienst: Unterschied zwischen den Versionen
imported>Raymond |
imported>Raymond |
||
Zeile 18: | Zeile 18: | ||
</pre> | </pre> | ||
== /opt/etc/xinetd.d/topbash == | == /opt/etc/xinetd.d/topbash == | ||
Service | Service definieren: [USER] durch einen vorhanden Benutzer ersetzen | ||
<pre> | <pre> | ||
service topbash | service topbash | ||
Zeile 30: | Zeile 30: | ||
} | } | ||
</pre> | </pre> | ||
== /opt/bin/show.bash == | == /opt/bin/show.bash == |
Version vom 24. Juli 2011, 04:42 Uhr
Eigenen Dienst für Xinetd erstellen
Über den Xinet Deamon kann man so ziemlich viel anstellen. So kann man jede Bash-Ausgabe auch auf den Browser anzeigen lassen. Als Beispiel übergebe ich die top-Anzeige direkt auf den Port 8111
Zur Anleitung
Diese Anleitung bezieht sich auf die DS211+ mit Xinetd 2.3.14-11
Voraussetzung
- Shell-Zugang
- Xinetd (Xinetd via IPKG installieren)
- vi oder nano
/etc/services
Port des Dienstes eintragen:
##Eigener Dienst topbash 8111/tcp # topbash
/opt/etc/xinetd.d/topbash
Service definieren: [USER] durch einen vorhanden Benutzer ersetzen
service topbash { disable = no socket_type = stream protocol = tcp wait = no user = [USER] server = /opt/bin/show.bash }
/opt/bin/show.bash
Bashscript für top (Perl habe ich wegen der Formatierung benutzt)
#!/bin/bash date | sed -e 's/$/\r/' | perl -pe 's/\r\n|\n|\r/\r\n/g' echo "_________________________________________________________________" | sed -e 's/$/\r/' | perl - pe 's/\r\n|\n|\r/\r\n/g' topvar=/bin/bash /usr/bin/top -b -n 1 | head -15 | sed -e 's/$/\r/' | perl -pe 's/\r\n|\n|\r/\r\n/g' echo $topvar exit
xinet Deamon
Den Xinet Deamon starten, bez. startet neu
/opt/etc/init.d/S10xinetd
Browser starten
top kann nun direkt im Browser abgefragt werden, ohne sich anzumelden. http://[IP-ADRESSE]:8111/
Fehler finden
Fehler können immer wieder auftreten. Hier sind die wichtgsten Befehle um den Xinet Dienst zu prüfen:
Xinet Dienst testen
Über das log kann man sehen ob der Deamon geschlossen (Exiting) wird. Das deutet auf eine falsche Konfiguration hin.
tail /var/log/messages May 24 13:02:40 xinetd[4724]: Exiting... May 24 13:04:22 xinetd[15315]: Exiting...
Mit -d kann man den xinetd im Debug-Modus starten. So sieht man detailierter ob man was falsches konfiguriert hat.
xinetd -d
Ob der Dienst läuft
Mit diesem Befehl kann man sehen ob der xinet Deamon überhaupt läuft
ps -aux | grep xinet
Port prüfen
Mit Netstat kann man schauen ob der Port auch wirklich abgehört wird:
netstat -tanp | grep 8111 tcp 0 0 0.0.0.0:8111 0.0.0.0:* LISTEN 28368/xinetd