Wenn Sie die benutzerorientierte Zugriffskontrolle nicht mit der Option -noauth deaktiviert haben (siehe "D.3.3.3 Standardprotokoll ändern"), sind beide Kontrollverfahren aktiv. Der Server fragt zunächst die Berechtigung des Benutzers und dann die des Systems ab. Bei der Abfrage der Benutzerdaten wird standardmäßig MIT-MAGIC-COOKIE-1 verwendet, während die Systemdaten gegen eine leere Liste geprüft werden, d. h. tatsächlich wirksam ist nur die benutzerorientierte Zugriffskontrolle. Mit der Option -noauth weisen Sie den Server an, dieses Kontrollverfahren abzuschalten und die hostorientierte Zugriffskontrolle durch Aufnahme des lokalen Systems in die Hostliste zu initialisieren.
Das vom Server verwendete Zugriffskontrollverfahren kann über eines der Programme xhost und xauth geändert werden. Weitere Informationen hierzu finden Sie in den man pages. Diese Programme greifen auf zwei Binärdateien zu, die von dem Zugriffsprotokoll erzeugt werden und verbindungsspezifische Autorisierungsdaten enthalten. Die eine Datei wird nur vom Server verwendet, die andere befindet sich im Home-Verzeichnis des Benutzers:
.Xauthority Client-Datei
Mit dem Programm xhost bearbeiten Sie die Hostliste auf dem Server. Sobald Sie einen Hostnamen in die Liste aufnehmen, wird der Zugriffsschutz reduziert, da nun alle Benutzer dieses Systems auf den Server zugreifen können, ohne sich weiter ausweisen zu müssen (siehe "D.3.2.2 Hostorientierte Zugriffskontrolle").
Mit dem Programm xauth greifen Sie auf die Autorisierungsdaten in der Client-Datei .Xauthority zu. Sie können diese Daten beispielsweise einem anderen Benutzer zur Verfügung stellen, der sie dann in seine Client-Datei einträgt, und ihm so den Zugriff auf Ihren Server ermöglichen.
Weitere Hinweise zur Verwendung von xhost und xauth finden Sie im Abschnitt "D.3.4.2 Zugriffsberechtigungen vergeben (MIT-MAGIC-COOKIE-1)".
Die Datei .Xauthority enthält Einträge in folgendem Format:
Verbindungsprotokoll Zugriffsprotokoll Autorisierungsdaten |
Normalerweise ist als Zugriffsprotokoll nur MIT-MAGIC-COOKIE-1 angegeben, und die erste und dritte Spalte enthalten nur Einträge für das lokale System. Auf dem Host anyhost könnte der Inhalt der Datei .Xauthority beispielsweise so aussehen:
anyhost:0 MIT-MAGIC-COOKIE-1 82744f2c4850b03fce7ae47176e75 localhost:0 MIT-MAGIC-COOKIE-1 82744f2c4850b03fce7ae47176e75 anyhost/unix:0 MIT-MAGIC-COOKIE-1 82744f2c4850b03fce7ae47176e75 |
Beim Start des Clients wird der entsprechende Eintrag aus der Datei .Xauthority gelesen, und die Daten aus den Spalten 2 und 3 werden zusammen mit der Verbindungsanforderung an den Server gesendet. In der Standardkonfiguration liefern xhost und newshost leere Host-Zugriffslisten zurück und melden, daß die Zugriffskontrolle aktiviert wurde.
Wenn Sie statt des Standardprotokolls das Protokoll SUN-DES-1 gewählt haben, ist in der Datei .Xauthority in Spalte 2 SUN-DES-1 und in Spalte 3 der Netzwerkname des Benutzers angegeben. Der Netzwerkname erscheint in folgendem Format:
unix.benutzer_id@NISdomain_name |
Auf dem Host anyhost könnte der Inhalt der Datei .Xauthority beispielsweise so aussehen (unix.15339@EBB.Eng.Sun.COM ist der systemunabhängige Netzwerkname des Benutzers):
anyhost:0 SUN-DES-1 "unix.15339@EBB.Eng.Sun.COM" localhost:0 SUN-DES-1 "unix.15339@EBB.Eng.Sun.COM" anyhost/unix:0 SUN-DES-1 "unix.15339@EBB.Eng.Sun.COM" |
Wenn Sie Ihren Netzwerknamen nicht kennen, wenden Sie sich bitte an Ihren Systemverwalter.
Wenn Sie das Zugriffsprotokoll MIT-MAGIC-COOKIE-1 verwenden, können Sie einen Benutzer folgendermaßen für den Zugriff auf Ihren Server berechtigen:
Extrahieren Sie auf dem Server mit xauth einen Eintrag im Format hostname:0 in eine Datei.
In diesem Beispiel wird als Hostname anyhost und als Dateiname xauth.info: verwendet:
myhost% /usr/openwin/bin/xauth nextract - anyhost:0 > $HOME/xauth.info |
Senden Sie die Datei (z. B. mit der Anwendung Post" oder dem Programm rcp) an den Benutzer, der zugriffsberechtigt werden soll.
Aus Datenschutzgründen sollten Sie die Datei möglichst per elektronische Post versenden. Wenn Sie rcp verwenden, sollten Sie die Datei nicht in einem Verzeichnis ablegen, auf das von anderen Benutzern leicht zugegriffen werden kann.
Der Empfänger der Datei muß den Eintrag in die Datei .Xauthority in seinem Home-Verzeichnis aufnehmen.
Zum Beispiel:
userhost% /usr/openwin/bin/xauth nmerge - < xauth.info |
Da die Autorisierungsdaten verbindungsspezifisch sind, werden sie bei einem Neustart des Servers ungültig.
Wenn Sie das Zugriffsprotokoll SUN-DES-1 verwenden, können Sie einen Benutzer folgendermaßen für den Zugriff auf Ihren Server berechtigen:
Registrieren Sie den Benutzer mit xhost auf dem Server.
In diesem Beispiel wird Benutzer somebody für das System myhost: zugriffsberechtigt:
myhost% xhost + somebody@ |
Der neue Benutzer muß den Eintrag mit xauth in die Datei .Xauthority in seinem Home-Verzeichnis übernehmen.
In diesem Beispiel lautet der Netzwerkname des neuen Benutzers unix.15339@EBB.Eng.Sun.COM. Bei der Eingabe muß auf das Pipe-Zeichen ein Leerzeichen folgen.
userhost% echo 'add myhost:0 SUN-DES-1 "unix.15339@EBB.Eng.Sun.COM"' | $OPENWINHOME/bin/xauth |