PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Konfigurationsproblem beim xinetd



werfer
08.01.05, 15:07
Hallo Linux-Freunde,

ich habe eine Intel-Maschine mit RedHat 7.1 drauf, diese laeuft schon seit langer Zeit als Firewall sauber und zuverlaessig. Sie benutzt pppoe.

Ich hatte mir nun aus verschiedenen Gruenden Folgendes gedacht: ich lese aus der Maschine die momentan gueltige externe IP aus und klemme diese an einen Port, der von "innen" jederzeit per telnet abgefragt werden kann.

Ich bin folgendermassen vorgegangen:

Ich habe in meinem iptables-script den port 997 fuer die Abfrage von innen freigeschaltet (dies hat funktioniert, das log der firewall meldet jedenfalls nichts, was auf Gegenteiliges schliessen lassen wuerde)

Ich habe in /opt ein shellscript namens ip.sh gelegt, welches die externe IP ausliest und in einen Textfile schreibt (bei manueller Ausfuehrung funktioniert dies einwandfrei)

Ich habe in adsl-connect den Befehl /opt/ip.sh eingefuegt, so dass bei jedem reconnect das shellscript ausgefuehrt wird

So weit, so gut. Dies scheint alles zu funktionieren. Aber jetzt:

Ich habe dann in /etc/services folgendes eingetragen:

MyIP 997/tcp # Client-IP

Habe dann in /etc/xinetd.d/ ein file namens MyIP erstellt und dieses mit folgendem gefuellt:

service MyIP
{
socket_type = stream
protocol = tcp
wait = no
port = 997
bind = eth0
server = /opt/readip.sh
}

Das script readip.sh enthaelt nur folgende Zeile:
/bin/cat /opt/external/ip.txt
es laesst sich manuell ausfuehren und ergibt die IP. Dieses soll ja nun am port 997 kleben. Wenn ich aber von einer anderen Maschine aus telnet Maschinenname 997 mache, lauscht er zwar lange, bekommt aber nichts.

Wo habe ich mich vertan???

Terran Marine
08.01.05, 16:57
service MyIP
{
socket_type = stream
protocol = tcp
wait = no
port = 997
bind = eth0
server = /opt/readip.sh
}

Das script readip.sh enthaelt nur folgende Zeile:
/bin/cat /opt/external/ip.txt
es laesst sich manuell ausfuehren und ergibt die IP. Dieses soll ja nun am port 997 kleben. Wenn ich aber von einer anderen Maschine aus telnet Maschinenname 997 mache, lauscht er zwar lange, bekommt aber nichts.


-Hat das Skript die richtigen Rechte, sodass es auch nicht root-User ausführen können ?

-Füg dochmal die Interpreter noch mit in das Skript rein, also in der ersten Zeile :

#!/bin/sh oder ähnlich

Gruß
Terran

werfer
08.01.05, 19:47
script sieht insgesamt folgendermassen aus:

#!/bin/sh

/bin/cat /opt/external/ip.txt

und die Rechte sind 755 :-(

Aber danke fuer die Hilfe!!!