PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : xinitd - Server starten und dann nur weiterleiten



jjwin2k
14.02.07, 01:59
Ich möchte das der xinitd quasi checkt, ob der Server noch läuft (also auf dem Port eine Verbindung geöffnet werden kann) und falls nicht den Server startet, falls er eine Verbindung hat, diese dann auch nutzt.

Bei dem "Server" handelt es sich um eine SSH-Portweiterleitung.

Auf Port 3128 lauscht der xinitd Server. Auf Port 3129 lauscht die Portweiterleitung. Nun soll, wenn die Portweiterleitung steht der xinitd Server die Anfragen die auf Port 3128 eingehen nur an die Portweiterleitung weiterleiten. Wenn die Portweiterleitung nicht steht, soll sie gestartet werden.

Wie realisier ich das am Besten? Kann ja auch was anderes als xinitd sein ;)

jjwin2k
14.02.07, 23:07
Ok hab das Problem jetzt relativ einfach gelöst:
Hab mir ein bash-Skript geschrieben:



#!/bin/bash
if netcat -z localhost 3129; then
echo "" > /dev/null
else
nohup ssh -T -N -i /root/tunnel -L 3129:zielserver:zielport login@gatewayserver -C -f > /dev/null
fi
netcat localhost 3129



xinetd hat jetzt dieses bash-skript als Server eingetragen.