Identd: Ident Authorization Server Daemon v1.5 Documentation
Please read the license before using the program
Table of Contents
1. Introduction
1.1 Why write a server?
1.2 Change log
2. Setting
the program up
2.1 Start automatically (for all users)
2.2 Start only when a user is logged in
2.3 Start only on request
2.5 What you'll see
3. Administering
the program
3.1 Administrative techniques
3.2 Start with an NT Logon script
4. Using the
program
4.1 Command-line arguments
5. Contacting
the author
Identd is a protocol commonly used in Unix environments. It allows a server to get a bit of information about a connecting individual before allowing them to connect to the server. This lets certain programs fill in default login information and in some cases, is the only way you can actually log into the server.
This program is freeware.
In Windows '95 and Windows '98, there isn't an identd server run by the operating system. This means that IRC programs like mIRC and BitchX must implement their own, internal identd servers. These internal servers are only available while the IRC program is running, so if you need an identd server at any point in time, you need to fire up your IRC client (after figuring out how to use the identd server for other programs) and then shut it down when you finish.
Windows IRC bots, like the popular eggdrop program, do not supply their own identd server and require an external program to perform the authorization for them.
Not all IRC clients allow you to set up specific identd replies for different users who log in. This presents problems when bots are trained to look for certain usernames in the hostmask to recognize a user. Running this identd server ensures that you always log on with your username and others always with their usernames.
As well, some web servers and firewalls can make use of an ident response for logging and administrative purposes. These facilities are usually unused, as Windows does not come with an identd server by default.
This program exists to make certain tasks easier. It was written to serve as an identd server for the Windows-based IRC bot I will (possibly) be releasing at some point in the future.
The change log has been started from version 1.4:
1.4: December 12, 1998
1.5: July 27, 1999
Before you begin setting up the program, you must decide if you want the program to start automatically and run as a hidden process for all users, or only when a user has logged in. If you have a dial-up networking system, you'll probably want to start the program "on request", as the dialer window will come up for the other configurations if you are not connected.
Important: The first time you run the program, the program needs to create a configuration file. Open up a command prompt window, change to the directory you want to run the program from and run the command:
IDENTD.EXE
This will create the initial configuration file in the current directory for you if you answer yes to the prompt below. You will need to set the "Start in" directory of any shortcuts to the program to point to this directory.
2.1 Start automatically (for all users)
To start the program when Windows boots, run the command:
IDENTD.EXE /SERVICE
This will register the program as a Windows '95/'98 service, ready for use. When you log out, the program will continue to run. The program will not start until you reboot. If you provide the /READONLY or /NOSHUTDOWN options on the commandline with /SERVICE, those options will be used when the service is started.
To access the configuration/log, run the identd.exe executable.
2.2 Start only when a user is logged in
To start the program when a user logs in, place a shortcut to the executable in the user's startup menu. Change the shortcut properties to run the executable with the /START switch as shown:
Each time a user logs in (or a specfic user in Windows '98 if you place the shortcut in the user's "Profiles/username/Start Menu/Startup" directory), the program will start up. When the user logs out, the program will terminate.
To start the program when you need it, simply double-click the executable or shortcut. This will bring the log window up and the program will being running.
When everything is set up, you can double-click the identd.exe executable and get a screen like this:
For those wishing to use Identd in a controlled environment, a number of options are available to you:
Global configuration file
You can set up a global configuration file in a central location on your server using the /CONFIG: option. When you install the service on each machine, make sure you specify the correct location for the file. If your identd.ini file is on \\NTSERVER\Users\Identd\identd.ini, the line you use to install the program would be:
IDENTD /SERVICE /CONFIG:"\\NTSERVER\Users\Identd\identd.ini"
You'll probably want to combine a global configuration file with the /READONLY option.
No shutdown option
If you don't want the users terminating the identd process from the log window, you can specify the /NOSHUTDOWN option on the command line. This will gray out the shutdown button so the user cannot kill the process from the dialog box. When running in service mode, the process does not appear in the ctrl+alt+del "end task" box.
Read-only mode
If you don't want your users to modify the properties of the program, use the /READONLY switch. This will not write back to the configuration file and will disable the properties button:
3.2 Starting with an NT Logon Script
The /INSTALL option is the best way to get the program to start from an NT Logon script. Here is a sample logon batch file (adapted from the one sent by Chris Dillon):
IF (%LOGONSERVER%)==() SET
LOGONSERVER=\\server-name
%LOGONSERVER%\NETLOGON\IDENTD /READONLY /NOSHUTDOWN
/CONFIG:"%LOGONSERVER%\NETLOGON\IDENTD.INI"
/INSTALL:"C:\LOCAL\IDENTD"
Each time the user logs on, the Identd program will be recopied to the directory specified, without user intervention. This ensures that the path to the configuration files is always up-to-date, as well as the program executable itself. The /READONLY and /NOSHUTDOWN options have been enabled to prevent the user from saving configuration info (which will usually not be possible anyways, but this prevents error messages related to read-only shares) and from shutting the program down.
The following command-line arguments are used by the program:
/CONFIG:"full path to file"
Selects the configuration file to use when starting the program. Use this if you are running the program from a central server.
/INSTALL:"full path to install directory"
Selects the directory to copy Identd to before setting it up. This is a method of ensuring users always have the latest version of Identd and the latest path to the configuration files. Usually used in a logon script. See the section in this documentation for using logon scripts.
/START
Starts the program in non-service, invisible mode. When the current user logs out, the program will terminate. Running the program without any arguments will bring up the log window.
/READONLY
Indicates that the Properties button should not be available for the user to change options.
/NOSHUTDOWN
Indicates that the Shutdown button should not be available to stop the program.
/SERVICE
Installs the program as a service. Does not start the program. If the /CONFIG:, /READONLY or /NOSHUTDOWN options are present on the command-line, they are passed to the program when it starts up. The information is stored in the registry key:
HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices
Since version 1.4, the Run key is no longer used, due to a bug in the Windows '95 and '98 service code.
/UNINSTALL
Uninstalls the program if installed as a service. Does not start the program.
You can find the author's homepage at: http://www.acs.ucalgary.ca/~mmastrac
The latest version of Identd will always be on this page.
Comments, complaints, compliments and other interactive messages are all welcome. Look for me as Rayban on Efnet (usually on #babylon5, #sg-1 and #hp48) too.
You can email me at: mmastrac@ucalgary.ca