Linux.xinetd

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen

"xinetd als Redirector verwenden (in diesem Falle f?P auf einem fremden Server)"

  • Problematik

Ein Fremdsystem stellt Web-Services in Form von SOAP Diensten zur Verf? Aus Sicherheitsgr?wird die Befragung der SOAP Routinen nur f?zelne fest eingestellte Client IP Adressen freigschaltet. Ich selbst habe jedoch wechselnde IP Adressen, und kann somit keine IP Adresse an den SOAP Betreiber durchgeben.

  • L?gs-Strategie

Ein eigener dritter Server, der mir zur Verf?steht, wird als SOAP Gateway oder Router oder Redirector (wie man will) eingesetzt. Dessen IP wird vom SOAP Dienstleister freigeschaltet. Dieser Redirector kann auf einem gewissen vereinbarten Port angesteuert werden, leitet aber jeden Traffic an den eigentlichen SOAP Anbieter weiter.


Dienst, Eingangsseitig auf einen Port mappen

  • WICHTIG: Damit die Umleitung funktioniert muss erst mal der Dienst dem System bekannt gemacht werden. Dieser muss genauso wie der spätere xinetd service genannt werden.
  • TIPP: Spare Dir den Aufwand, und gebe im Service type = UNLISTED ein, dann sucht das System den Dienst nicht in der /etc/services.
  • In unserem Fall wollen wir den Aufwand mal machen!

SOAP als "dienst" erst mal bekannt machen

 joe /etc/services

diese Zeile an passender Stelle hinzu:

 soap 8081/tcp  # my soap redirect

den redirect Dienst bei xinetd noch hinzunehmen

im Verzeichnis /etc/xinet.d die neue Datei "soap" anlegen

-----------------------------------
service soap
{ 
 socket_type = stream
 wait = no
 flags = REUSE
 protocol = tcp
 type = UNLISTED      # nur wenn "soap" in der /etc/services ungenannt ist
 port = 8081
 user = root
 redirect = 80.139.34.230 80
 disable = no
}
-----------------------------------
  • das laufende xinetd veranlassen, die neue Konfiguration zu ber?htigen
pgrep xinetd
// Nun die PID des xinetd merken und im folgenden Befehl einsetzen
kill -HUP <PID>
unter Umständen gibt es mehrere PIDs (weis auch nicht warum) besser also den xinetd neu starten
rcxinetd restart