Whole document tree 3. XDM3.1. What is XDMPut simply, XDM (the X Display Manager) can be thought of as a graphical replacement for the command line 'login' prompt. In reality, it can actually do much more than that. Typcially, it would be started by the 'root' user (or the system startup scripts) on power up, and would present a user with a graphical login prompt. It will then manage the users X session once they login - ie it will initiate the running of their window manager and applications. This could be considered a typical 'simple local machine login' configuration, as may be found installed by many Linux distributions by default. However, XDM can also manage remote X servers and provide login prompts to remote 'X terminals'. In short, it is not limited to the local machine - it can easily manage other machines connected via a network. XDM is a very configurable utility and this document will only just 'scratch the surface' of what may be acheived. This document aims to provide enough information to configure your X terminals and application servers to connect to each other. The reader is refered to the Section 7 for further information on the topics discussed here. A note on security : X (in its default configuration) and XDMCP are not particularly secure. I am assuming that you are running X on a 'trusted' network and that security is not an issue. For details of how to toughen up your X connections (and more details about using the networking capabilities of X) please refer to the 'Running Remote X Applications' Howto document, which is also part of the LDP (see Section 7). 3.2. What is an X terminalThis term could be used to cover various configurations, but at its simplest form, is a machine with a network connection, keyboard, mouse and monitor, configured to run the X windows system to connect to an application server somewhere on the network. There are several configurations of 'X terminal' with varying levels of functionality, ranging from completely diskless terminals to full X workstations. 3.1. Some TerminologyBefore I go any further, I ought to explain the terms I will be using in this document. When talking about X, there is quite a lot of confusion over what is serving facilities to what. This is especially true when you are considering distributed sessions over a network involving X terminals. I will be using the terms described below.
From the above descriptions, an X Workstation could be thought of as consisting of a dumb X terminal and application server running on the same machine. This document will be looking at the architecture of the various options listed above and will describe the role that xdm can play in configuring them. 3.2. What can XDM doXDM is responsible for providing the user with a login prompt and initiating their X session. It can manage local sessions (ie people logging into an X workstation) or sessions on remote machines, via a connection to an application server from a diskless or dumb X terminal. XDM has 2 main modes of operation :
3.2.1. Query from an X ServerThe communications between XDM and the actual 'X server' (the machines with the physical screen/keyboard/mouse/etc) are handled via XDMCP the 'X display manager control protocol'. This permits X servers to send out queries to servers running XDM. Effectively, the X server has to say 'I have someone wanting to login - please give me a login prompt'. In this mode of operation, XDM will not do anything unless it is asked to by your X server. The query from the X server can take one of 3 forms :
There are several other options, but these will not be described here - refer to the XDM and XDMCP documentation in Section 7 for more details. 3.2.2. XDM Managed X ServerIf you have a set of machines (eg diskless or dumb X terminals) that just end up running an X server, all designed to provide a login prompt to a single application server, then it is possible to configure XDM on the application server to connect back to each X server and present its login prompt on each display automatically. In this mode of operation, XDM will actively 'push out' a login prompt to any listed X server that it knows about, without waiting for a query from the X servers themselves. In this case, the configuration file 'Xservers' lists each machine (including the local display, if required) to which XDM should connect, to display its login prompt. This configuration, when used with no remote X servers listed in the configuration, is the typical configuration used for a X workstation, in order to present a user with a graphical login to the local machine he is working on. As stated earlier, most distributions will support this configuration 'out of the box' in order to present the user with a local graphical login prompt. Note: XDM must be permitted to connect to the X servers in question - so the access control on the X servers must be configured accordingly. |