rexecd(1M) rexecd(1M)
NAME
rexecd, in.rexecd - Server für die Ausführung von fernen Kommandos
SYNTAX
in.rexecd rechner.portnummer
BESCHREIBUNG
rexecd ist der Server für die Routine rexec(3N). Er erlaubt die Aus-
führung von fernen Kommandos und führt Gültigkeitsprüfungen anhand von
Benutzernamen und verschlüsselten Paßwörtern durch. Der Server wird
bei Bedarf automatisch von inetd(1M) aufgerufen und führt dann das
folgende Protokoll aus:
1) Der Server liest vom Socket Zeichen bis zu einem Null-Byte (\0).
Die sich daraus ergebende Zeichenkette wird als ASCII-Zahl, Basis
10, interpretiert.
2) Ist die aus Schritt 1 erhaltene Zahl nicht Null, wird sie als Port-
nummer eines zweiten Datenstroms interpretiert, der für stderr ver-
wendet werden soll. Daraufhin wird eine zweite Verbindung zu dem
angegebenen Port am Client-Rechner hergestellt.
3) Auf dem ersten Socket wird ein mit einem Null-Byte abgeschlossener
Benutzername abgerufen, der maximal 16 Zeichen lang sein darf.
4) Auf dem ersten Socket wird ein mit einem Null-Byte abgeschlossenes,
verschlüsseltes Paßwort (maximal 16 Zeichen) abgerufen.
5) Auf dem ersten Socket wird ein mit einem Null-Byte abgeschlossenes
Kommando abgerufen, das an eine Shell übergeben werden soll. Die
Länge des Kommandos ist begrenzt durch die Größe der Shell-Umgebung
am lokalen Rechner.
6) Nun überprüft rexecd die Berechtigung des Benutzers, wechselt bei
Erfolg in das Home-Verzeichnis des Benutzers und übernimmt die
Benutzer- und Gruppenrechte für den Benutzer. Schlägt einer dieser
Schritte fehl, wird die Verbindung abgebrochen, und es wird eine
Diagnosemeldung zurückgegeben.
7) Über die stderr zugeordnete Verbindung wird ein Null-Byte zurückge-
geben, und die Kommandozeile wird an die normale Login-Shell des
Benutzers übergeben. Die Shell übernimmt die Dateideskriptoren für
die von rexecd aufgebauten Netzverbindungen.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
rexecd(1M) rexecd(1M)
DIAGNOSE
Alle Diagnosemeldungen werden über die zur Standardfehlerausgabe
stderr gehörende Verbindung zurückgegeben, danach werden alle Net-
zwerkverbindungen geschlossen. Ein Fehler wird mit einem führenden
Byte mit dem Wert 1 angezeigt (Bei erfolgreichem Abschluß aller vor-
hergehender Schritte wird in Schritt 7 vor Ausführung des Kommandos 0
zurückgegeben).
username too long
(Benutzername zu lang) Der Name ist länger als 16 Zeichen.
password too long
(Paßwort zu lang) Das Paßwort ist länger als 16 Zeichen.
command too long
(Kommando zu lang) Die übergebene Kommandozeile ist länger als
die für das System konfigurierte Argumentliste.
Login incorrect.
(Anmeldung nicht korrekt) Für den Benutzernamen ist kein Eintrag
in der Paßwortdatei vorhanden.
Password incorrect.
(Paßwort nicht korrekt) Es wurde ein falsches Paßwort eingegeben.
No remote directory.
(Kein fernes Verzeichnis) Das Kommando chdir zum Home-Verzeichnis
ist fehlgeschlagen.
Try again.
(Kommando wiederholen) Ein vom Server ausgegebenes Kommando fork
ist fehlgeschlagen.
/usr/bin/sh: ...
Die Login-Shell des Benutzers konnte nicht gestartet werden.
SIEHE AUCH
inetd(1M).
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98