IEMSI auto-login

IEMSI is an old standard (FSC-0057) that lets a terminal program log a caller in without typing. When the board asks “do you speak IEMSI?”, the terminal answers with the caller's name and password. If both are right, the caller goes straight past the name and password prompts. ProBoard v4 supports IEMSI on the board, and PBTerm supports it as a caller.

IEMSI is only a shortcut. If anything goes wrong (a wrong password, an unknown name, a terminal that does not speak IEMSI) the caller simply gets the normal prompts. It never creates accounts: new callers log on and apply as usual.

For callers using PBTerm

  1. Open the phonebook and edit the entry for the board.
  2. Fill in User name and Password.
  3. Tick Auto-login (IEMSI) and save.

When you connect, PBTerm answers the board's IEMSI request with those details. The status bar then says IEMSI auto-login accepted by and the name of the board. PBTerm only ever answers a real IEMSI request. It never types your password at a prompt, so it cannot send it to the wrong place. RLogin entries have their own login and do not use IEMSI.

PBTerm sends the password in capital letters, as the standard says. ProBoard does not care about the case of a password.

For sysops

IEMSI is on by default. ProBoard sends the request once, early in the logon, before it shows its name and password prompts, and waits a few seconds for an answer. A caller whose terminal does not speak IEMSI sees nothing for those few seconds, then the normal logon. On an ANSI terminal ProBoard wipes the request line it printed.

What happens:

  1. The name is looked up the same way as at the name prompt (including the alias, if your board allows it) and the password is checked the same way as at the password prompt.
  2. A right name and password logs the caller in. The usual checks after logon (minimum level, local-only accounts and so on) still apply.
  3. A wrong name or password counts as a failed logon for Login Guard, then the normal prompts follow.
  4. Callers over RLogin or SSH have their own auto-login and skip IEMSI. So does the local console.

IEMSI.CFG

The file is optional. Without it IEMSI is on with the values below. In PBConfig open Network > IEMSI Auto-Login: tick or clear the box, set the wait and the number of requests, type a notice if you want one, and click Save. PBConfig creates Configs\IEMSI.CFG for you and refuses a value ProBoard would not accept. You can also edit the file by hand with Notepad: one keyword per line, and a line starting with ; is a comment. A change takes effect at the next call; PBDispatch does not need a restart.

Setting Meaning Default
enabled no stops ProBoard sending the IEMSI request at all. yes
timeout Seconds to wait for the terminal's answer after each request, 1 to 15. 4
tries How many requests to send before giving up, 1 to 3. Each extra try adds timeout seconds for a caller without IEMSI. 1
notice A short text that some terminals show once the login worked. none
; Configs\IEMSI.CFG
enabled  yes
timeout  3
tries    1
notice   Welcome back!

If the few seconds of waiting bother you, lower timeout to 2, or set enabled no.

The ProBoard log shows IEMSI auto-login: <name> on success and says why when it falls back, for example wrong password for <name>. The password is never written to the log.

A word on security

IEMSI sends the password as plain text over the connection, exactly as if the caller typed it. Over plain Telnet that is no different from typing the password. Over SSH it is protected like everything else.

What it is not

  • It does not work with RLogin (which has its own login) and does not create accounts.
  • PBTerm and other programs that speak IEMSI (for example Telix and Qmodem) work. A terminal without IEMSI is unaffected apart from the short wait.