5.6. Az X bejelentkeztető képernyője

Írta: Seth Kingsley.

5.6.1. Összefoglalás

Az X bejelentkeztető képernyője (az X Display Manager vagy röviden csak XDM) az X Window System egyik kiegészítő eleme, melyet a bejelentkezések lebonyolítására használunk. Számtalan helyzetben hasznosnak bizonyulhat, beleértve a legkisebb “X terminálokat” és a legnagyobb hálózati szervereket is. Mivel az X Window System független hálózattól és protokolltól, a hálózaton összekapcsolt, X klienseket és szervereket futtató különböző számítógépek széles kombinációja előfordulhat. Az XDM egy grafikus felületen keresztül segít választani az elérhető szerverek között, valamint a felhasználók, például felhasználónév és jelszón keresztüli, hitelesítésében.

Az XDM tulajdonképpen a felhasználó számára ugyanazokat a funkciókat nyújtja, mint a getty(8) program (erről bővebben lásd 26.3.2 Szakasz). Tehát: belépteti a felhasználót a szerverre, ahova csatlakozott, illetve elindítja helyette a hozzátartozó munkamenet kezelőjét (ami általában egy X-es ablakkezelő). Az XDM megvárja ennek a programnak a befejeződését, ami egyben jelzi számára, hogy a felhasználó elvégezte a dolgát, és kilépteti a szerverről. Ezután az XDM újra várakozni kezd a következő felhasználóra, miközben a bejelentkezéshez és a szerver kiválasztásához szükséges képernyőket jeleníti meg.

5.6.2. Az XDM használata

A XDM használatához először telepítenünk kell rendszerünkre a x11/xdm portot (mivel az Xorg újabb változatai ezt alapértelmezés szerint már nem telepítik). Ezt követően az XDM démon a /usr/local/bin/xdm helyen található meg. A programot root felhasználóként bármikor tudjuk futtatni, és ez veszi kezelésbe a helyi gépen futó X szervert. Amennyiben az XDM-et a számítógép minden egyes indulása során el akarjuk indítani, egyszerűen csak adjuk hozzá a megfelelő bejegyzést az /etc/ttys állományhoz. Ennek a formai szabályairól és használatáról bővebben lásd 26.3.2.1 Szakasz. Az /etc/ttys alapértelmezett változatában az XDM démont ebben a formában találjuk meg a virtuális terminálok között:

ttyv8   "/usr/local/bin/xdm -nodaemon"  xterm   off secure

Ez a bejegyzés alapból nem aktív. Az engedélyezéséhez írjuk át az ötödik mezőben szereplő off (kikapcsolva) értéket on (bekapcsolvá)-ra, majd indítsuk újra az init(8) programot a 26.3.2.2 Szakaszban leírtak szerint. Az első mezőben találhatjuk a program által kezelt terminált, ez jelen esetünkben a ttyv8. Ennek megfelelően az XDM a 9. virtuális terminálon kezdi meg a futását.

5.6.3. Az XDM beállítása

Az XDM beállításait tartalmazó könyvtár a /usr/local/lib/X11/xdm. Itt találhatjuk meg azokat az állományokat, amelyek megváltoztatásával befolyásolhatjuk az XDM megjelenését és viselkedését. Általában a következő állományok bukkannak fel ezen a helyen:

ÁllományLeírás
XaccessA kliens hitelesítésének szabályrendszere.
XresourcesAz X erőforrásainak alapértelmezett értékei.
XserversAz ismert távoli és helyi X szerverek listája.
XsessionA bejelentkezések során lefutó alapértelmezett szkript.
Xsetup_*A bejelentkező felület indítása előtt indítandó alkalmazásokkal kapcsolatos szkript.
xdm-configA gépen futó összes X szerver globális beállításai.
xdm-errorsA szerver által jelentett hibák.
xdm-pidA jelenleg futó XDM-hez tartozó azonosító.

Ebben a könyvtárban találunk még néhány olyan programot és szkriptet, amelyekkel be tudjuk állítani a munkaasztalunkat az XDM futása alatt. Ezen állományok céljait egyenként ismertetni fogjuk. A felépítésükről és használatukról az xdm(1) man oldala árul el többet.

Az alapértelmezett beállítás egy téglalap alakú bejelentkező ablak, aminek tetején nagy betűkkel a gép neve olvasható, valamint alatta a “Login:” (felhasználói név) és “Password:” (jelszó) mezők várnak kitöltésre. Ez egy remek kiindulási alap az XDM-képernyő kinézetének megváltoztatásához.

5.6.3.1. Xaccess

Az XDM-mel szabályozott X szerverek által használt protokoll az X Display Manager Connection Protocol (XDMCP). Ez az állomány tartalmazza a távoli számítógépekről érkező XDMCP-kapcsolatok vezérlésére vonatkozó szabályokat. Ezt a rendszer általában figyelmen kívül hagyja, hacsak az xdm-config állományban be nem állítottuk a távoli számítógépek csatlakoztathatóságát. Alapértelmezés szerint viszont semmilyen klienst nem enged csatlakozni.

5.6.3.2. Xresources

Ez tartalmazza a szerverválasztó és bejelentkező képernyő alapértelmezéseit. Segítségével a bejelentkeztetést végző program kinézetét változtathatjuk meg. Formátuma hasonló az X11 dokumentációjában leírt app-defaults állományhoz.

5.6.3.3. Xservers

A szerverválasztó által felkínálandó távoli X szerverek felsorolását tartalmazza.

5.6.3.4. Xsession

A felhasználó bejelentkezése után ez az XDM-szkript fog lefutni. Általában minden felhasználóhoz tartozik egy saját ~/.xsession szkript, ami ezt felülbírálja.

5.6.3.5. Xsetup_*

Ezek fognak automatikusan lefutni a szerverválasztó vagy bejelentkeztető felületek megjelenése előtt. Minden általunk használt X szerverhez tartozik egy ilyen szkript, amelyek neve Xsetup_-al kezdődik és a helyi X szerver sorszámával folytatódik (például Xsetup_0). Ezek a szkriptek általában egy-két programot, mint például az xconsole, indítanak el a háttérben.

5.6.3.6. xdm-config

Az app-defaults nevű állományéhoz hasonló alakban tartalmaz beállításokat a program által kezelt minden egyes X szerverhez.

5.6.3.7. xdm-errors

Ebben található meg az XDM által futtatni próbált X szerverek kimenete. Itt érdemes hibaüzenetek után kutatni, ha az XDM által indított X szerver valamiért megállna. Ezek az üzenetek egyébként a felhasználó ~/.xsession-errors állományába is beíródnak.

5.6.4. Hálózati X szerver futtatása

Az X szerverünkhöz csak akkor tudnak kívülről más felhasználók is kapcsolódni, ha átírjuk a hozzáférésre vonatkozó szabályokat és engedélyezzük rajta a kapcsolódást. Az alapértelmezett szabályok nagyon óvatosak. Ha tehát engedélyezni akarjuk a kívülről érkező kapcsolódásokat, akkor ahhoz először az xdm-config állományból vegyük ki az alábbi sort:

! SECURITY: do not listen for XDMCP or Chooser requests
! Comment out this line if you want to manage X terminals with xdm
DisplayManager.requestPort:     0

Ezután indítsuk újra az XDM-et. Ne felejtsük el, hogy az app-defaults állományokban a megjegyzések “!” (felkiáltó)jellel kezdődnek, nem pedig a megszokott “#” (kettőskereszt)tel. A fentieknél természetesen szigorúbb hozzáférési szabályok is szükségesek lehetnek -- ezzel kapcsolatban nézzük meg Xaccess állományban szereplő példákat, illetve lapozzuk fel az xdm(1) man oldalt.

5.6.5. Az XDM helyett

Az alapértelmezett XDM feladatát számos más program is képes ellátni. Ezek közül az egyik a kdm (a KDE része), amire ebben a fejezetben még vissza fogunk térni. A kdm különféle vizuális effekteket és egyéb kozmetikázást ígér, valamint lehetővé teszi a felhasználók számára, hogy a bejelentkezés előtt kiválaszthassák a használni kívánt ablakkezelőt.

Ha kérdése van a FreeBSD-vel kapcsolatban, a következő címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon: <gabor@FreeBSD.org>.