- X display manager
In the
X Window System , an X display manager runs as a program, that allows the starting of a session on an X server from the same or anothercomputer .A display manager presents the user with a login screen which prompts for a
username andpassword . A session starts when the user successfully enters a valid combination of username and password.When the display manager runs on the user's computer, it starts the X server before presenting the user the login screen, optionally repeating when the user logs out. In this condition, the display manager realizes in the X Window System the functionality of
init , getty and login on character-mode terminals. When the display manager runs on a remote computer, it acts like atelnet server, requesting username and password and starting a remote session.X11 Release 3 introduced display managers in October
1988 with the aim of supporting the standalone X terminals then just coming onto the market. Various display managers continue in routine use to provide a graphical login prompt on standalonecomputer workstation s running X. X11R4 introduced the X Display Manager Control Protocol (XDMCP) in December1989 to fix problems in the X11R3 implementation.Local and remote display management
A display manager can run on the same computer where the user sits or on a remote one. In the first case, the display manager starts one or more X servers, displaying the login screen at the beginning and (optionally) every time the user logs out. In the second case, the display manager works according to the XDMCP protocol.
The XDMCP protocol mandates that the X server starts autonomously and connects to the display manager. In the X Window System paradigm, the server runs on the computer providing the display and input devices. A server can connect, using the XDMCP protocol, to a display manager running on another computer, requesting it to start the session. In this case, the X server acts as a graphical
telnet client while the display manager acts like a telnet server: users start programs from the computer running the display manager, while their input and output take place on the computer where the server (and the user) sits.An administrator can configure an X server running on the computer or terminal of the user either to connect to a specific display manager, or to display a list of suitable hosts running potential X display managers. An XDMCP Chooser program allows the user to select a host from among those the terminal can connect to:
# a predefined list of hosts and their respective network addresses;
# a list of hosts (on the local TCP/IP subnet) that the XDMCP server in turn obtains by a network broadcastThe XDMCP server will often present itself in this list. When the user selects a host from the list, the X server running on the local machine will connect to the selected remote computer's X display manager.
X Display Manager Control Protocol
The X Display Manager Control Protocol uses UDP port 177. An X server requests that a display manager start a session by sending a
Query
packet. If the display manager allows access for that X server, it responds by sending aWilling
packet back to the X server. (The X server can also sendBroadcastQuery
orIndirectQuery
packets to start a session.)The display manager must authenticate itself to the server. To do this the X server sends a
Request
packet to the display manager, which returns anAccept
packet. If theAccept
packet contains the response the X server expects, the display manager is authenticated. Producing the correct response might require the display manager to have access to asecret key , for example. If the authentication succeeds, the X server sends aManage
packet to inform the display manager. Then, the display manager shows the login screen by connecting to the X server as a regular X client.During the session, the server can send
KeepAlive
packets to the display manager at intervals. If the display manager fails to respond with anAlive
packet within a certain time, the X server presumes that the display manager has ceased running, and can terminate the connection.One problem with XDMCP is that, similarly to
telnet , the authentication takes place unencrypted and if snooping is possible, leaves the system vulnerable to attack. It is more secure to use an ssh tunnel for X traffic. [http://www.gnome.org/projects/gdm/docs/2.14/security.html]History
XDM (the X Window Display Manager) originated in X11R3. This version suffered from several problems, most notably when users switched X terminals off and on. In X11R3, XDM only knew about an X terminal from its entry in the Xservers file, but XDM only consulted this file when it started. Thus every time a user switched a terminal off and on, thesystem administrator had to send aSIGHUP signal to XDM to instruct it to rescan Xservers.XDMCP arrived with the introduction of X11R4 (December
1989 ). With XDMCP, the X server must actively request a display manager connection from the host. An X server using XDMCP therefore no longer requires an entry in Xservers.Some available display managers
The
X Window System suppliesXDM as its standard display manager.Programmers have developed other X display managers, both commercial and free, offering additional functionality over the basic display management:
* scologin (provided by SCO Open Desktop) also checks for expired passwords and performs some administrative tasks
* GDM (GNOME )
* KDM (provided byKDE ) allows the user to graphically select a window manager ordesktop environment in the login screen
*XDM , the default X Window System Display Manager
*dtlogin (shipped with CDE)
*WINGs Display Manager (using the WINGs widget-set used inWindow Maker )
* entrance (employs the architecture used in Enlightenment v.17).
*SLiM , an independent desktop environment.
* [http://www.jonshouse.co.uk/xlogin.cgi xlogin] X Windows login with separate XDMCP server
* [http://enter.sf.net Enter] Lightweight graphical login managerThe default display manager is selected in /etc/X11/default-display-managerSee also
*
X Window System protocols and architecture References
* [http://cvs.freedesktop.org/*checkout*/xorg/xc/doc/hardcopy/XDMCP/xdmcp.PS.gz XDMCP documentation] (compressed
PostScript ), from the X.Org CVS repository atfreedesktop.org
* [http://www.xfree86.org/current/xdm.1.html XDM manual page] (XFree86.org)
*Linda Mui and Eric Pearce, "X Window System Volume 8: X Window System Administrator's Guide for X11 Release 4 and Release 5, 3rd edition" (O'Reilly and Associates, July 1993; softcover ISBN 0-937175-83-8)External links
* [http://www.tldp.org/HOWTO/XDMCP-HOWTO/index.html Linux XDMCP HOWTO]
* [http://www.rru.com/~meo/pubsntalks/xrj/xdm.html Taming The X Display Manager]
* [http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/x-xdm.html The X Display Manager] , from the * [http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ FreeBSD Handbook]
* [http://blogs.ittoolbox.com/linux/locutus/archives/linux-login-with-a-windows-box-and-xdmcp-15547 Linux login with a Windows box and XDMCP] A guide to login to linux using windows.
* [http://compsecblog.bruceblacklaws.com/2008/07/x-display-manager.html GNU/Linux XDMCP video tutorial]
Wikimedia Foundation. 2010.