xlogin(8)

NAME
xlogin - Open a login dialog on an X11 Server

SYNOPSIS
xlogin [-h] [-help] [-display <name>] [-allowroot] [-once] [-desktop <name>] [-default <name>] [-background <name>] [-pos XXX,YYY] [-mono] [-date] [-width <numeric>] [-height <numeric>] [-v] [-ver] [-conf <name>] [-identity <name>] [-xdmcp]

DESCRIPTION
xlogin is a simple login window for X11 servers. It's similar in function to xdm, gdm or kdm, except that the xdmcp server is external in xlogin.

The program is pretty crude in appearance, it offers a clickable selection of desktop environments for the user taken from xlogin's /etc configuration.

MIT MAGIC COOKIE security is available via xdmcpserver. When xlogin is executed without the -xdmcp option a valid connection must be available to the X server. The simplest way to acheive this is to start X-Windows with access controls disabled (-ac).

OPTIONS

-h or -help or --help
    display a short help text

-display <hostname:displaynumber>
    The hostname and optionally display number for an X display. For example "localhost" "localhost:0" "192.168.1.100:0" "myresolvedname:3"

-ac Once connected turn access controls off. Mostly used with xlogin-xdmcpserver arguments this option dissables access controls. So an X server issuing a -query to the xdmcp server will start its life with an MIT cookie then become wide open when xlogin starts. This option has the same function from the users perspective as typing xhost +

-allowroot
    As default connections other than localhost:0 cannot login as root, this option overrides that default behaviour.

-once
    Try and open a connection to the X server only once, if that fails exit. As default xlogin keeps trying to open the connection at 5 second intervals forever, this default behaviour is useful when using xlogin via init (/etc/inittab)

-desktop <name>
    Force the user's session to be one of the desktop names. Desktop names are simply the filenames of the scripts in xlogins etc configuration, typically /etc/xlogin/desktops. If this option is specified then the user will not be offered the selection menu and will always get the named desktop after authentication.

-default <name>
    Select the named desktop as default, the user can still change it via then menu, but with this option set the named desktop is selected first.

-background <name>
    The jpeg image named here is loaded into the X server's root window (background). This feature makes terminals a little more attractive. The background is overwritten by the session when the user logs in.

-pos XXX,YYY
    Position the top left of the xlogin window at these X and Y cordinates. The program will try and pull the window left /upwards so that it is always in viewable area of the display you can use this to position the window in any corner by putting values you know will be clipped in. For example -pos 9000,9000 on any reasonable resolution display would position the window bottom right, -pos 1,9000 would be bottom left etc. If -pos is omitted xlogin creates its window in the middle of the X display.

-mono
    In the unlikely event that you are using a true 1 bit mono display this option forces the use of colours black and white only. Its not well tested but seems to work.

-date
    Display the current date/time in the xlogin window, the line is updated once a second. Most people prefer to have this, but the default behaviour is to not have it.

-v  Verbose messages, when run from a text console the xlogin program will give lots of chatty details on what its doing. This is useful is you're not getting the expected results, it also displays the full file paths of any files used, again useful if you're changing something in configuration file and nothing seems to be happening. Basically a debugging tool.

-ver
    Display xlogin's version information

-conf <path>
    Use this path instead of the default /etc/xlogin for configration files. This is useful if you wish to have multiple logins with different desktops available. Basically copy an existing /etc/xlogin directory and specify the new location here. Basic settings like background images, positions etc can be on the command line. This switch is only used when different desktop settings are required by different X displays.

-identity <name>
    Specify a name here that was created using the xlogin-makeidentity tool. The identities are stored in /etc/xlogin/identites as default. When a name is specified for this option xlogin loads the stored identity from the encrypted file and places that username and password into the xlogin window as if the user typed it. The window will be visible for a couple of seconds and assuming the username and password authenticates a desktop will appear. When this option is combined with the -desktop option a complete automatic login is possible.

-xdmcp
    In general the user should never use this. The xlogin-xdmcpserver program passes the MIT cookie to xlogin via an environment variable. This option causes xlogin to read that environment variable and set up the initial connection to the X server using that cookie. In normal operation a user would never specify this. Note -xdmcp is NOT used to start an xdmcp server, use the xlogin-xdmcpserver command instead.

SECURITY
Security is a complex subject, the authentication used by xlogin via shadow passwords is probably ok. The files used to encrypt identities for the -identity option should be considered as weak. Large users are asked to audit the system for security themselves, I am not liable for any loss or damages resulting from defects in this software, I am also not the world's best programmer - consider yourself warned ! At the moment xlogin upon connection to the display will use host based access to allow any connection from that IP.

EXAMPLES
        Start a login on the second X server of this machine
        xlogin -display localhost:1

        Start a login on the second desktop of the machine with KDE selected for the user, but the user can still change it
        xlogin -display localhost:1 -default KDE

        Start a login on the second desktop of the machine, the user has no choice but to use GNOME
        xlogin -display localhost:1 -desktop GNOME

        Start a login on a X11 server on the network that may or may not exist yet
        xlogin -display 192.168.1.11:0

        Start a login on a X11 server on the network that may or may not exist yet, but don't keep trying to connect
        xlogin -display 192.168.1.11:0 -once

        Start a login on display 1, make the main window background black, black is a special word not a filename
        xlogin -display localhost:1 -background black

        Start a login with some wallpaper on display 1 of my local machine "X -ac :1"
        For a display with dimensions of 800x600 this will in fact use the image /etc/xlogin/backgrounds/example_800x600.jpg
        xlogin -display localhost:1 -background example

        Start a login with some wallpaper on display 1, position the login on the top left of the screen
        xlogin -display localhost:1 -background example -pos 10,10

        Make an identity for use with xlogin
        xlogin-makeidentity -user myuser

        Start a login using the identity myuser for a GNOME desktop
        xlogin -display localhost:1 -identity myuser -desktop GNOME

        # start an xdmcp server for X terminals using the "-query <hostname>" option
        xlogin-xdmcpserver -display localhost:1 -background example -pos 10,10

BUGS
Some people consider it ugly, its a matter of taste. If you like the login on XP then you dont have any !

The handling of keyboard is poor, and assumes a US style layout. Not a problem unless you use a lot of punctuation in your username/passwords

The screensaver is hard coded off ! The users session will override this, but logins have no screensaver.

AUTHOR
Jonathan Andrews (jon (at) jonshouse.co.uk)

SEE ALSO
xlogin-xdmcpserver(8) xlogin-makeidentty(8) xlogin-rootjpeg(8)