|
|
1.1 ! root 1: .TH AUTHMGR 8 ! 2: .CT 1 sa_auto secur ! 3: .SH NAME ! 4: authmgr \- authenticate users and make secure calls ! 5: .SH SYNOPSIS ! 6: .B authmgr ! 7: .BI [ "options ..." ] ! 8: .SH DESCRIPTION ! 9: .I Authmgr ! 10: receives authentication requests from the network via ! 11: .IR svcmgr (8), ! 12: authenticates the requesting user, and redials their ! 13: call using one of the network interfaces, such as ! 14: .IR dkmgr (8). ! 15: The actual method used to authenticate the user depends ! 16: on the command line arguments and the environment at the ! 17: time ! 18: .I authmgr ! 19: is executed. ! 20: .PP ! 21: One mode is used when a user connects directly to the authentication ! 22: service. ! 23: In this mode, the user is asked to enter a login name (unless ! 24: there is a login name present in the CSOURCE environment variable). ! 25: The user is then challenged to encode some character string with ! 26: their challenge box (or possibly just enter their password), and ! 27: enter this as a response. ! 28: If the response is correct (i.e. the user had the correct encryption ! 29: key or password), the user is asked to enter the name of a new ! 30: destination, and the call is redialed to this new destination. ! 31: .PP ! 32: The other mode is used when a call to a service using the V9 authentication ! 33: protocol is rerouted through the authentication server (this is currently ! 34: only possible if the call was placed over the datakit, through a trunk). ! 35: In this case, the authentication server uses an extension of the "OK"/"NO" ! 36: protocol used by ! 37: .IR con (1). ! 38: Here, ! 39: .I authmgr ! 40: responds to a connection with a string ``CH''. ! 41: The calling program should prompt the user for a login name, and ! 42: send that login back, followed by a newline. ! 43: .I Authmgr ! 44: responds with a challenge string, up to 60 characters long, followed ! 45: by a newline (the challenge will be printable ASCII). ! 46: The calling process must encode this string (unless it is blank; then ! 47: it should obtain the user's password), and send this response back, also ! 48: terminated by a newline. ! 49: If the response is correct, the "OK"/"NO" protocol continues as ! 50: normal (that is, the call is automatically redialed by the server ! 51: without further intervention); otherwise, the "CH" challenge is ! 52: repeated. ! 53: .PP ! 54: The options are ! 55: .TP ! 56: .B -n ! 57: Do not prompt the user for a new destination, even if we don't have ! 58: one already. ! 59: This option is useful for authenticating an entire host (or a ! 60: powerful terminal) as one user. ! 61: The call will automatically be redialed in a special way. ! 62: .TP ! 63: .BI -f file ! 64: Use ! 65: .I file ! 66: as the configuration file rather than the default. ! 67: .PP ! 68: When a call is redialed, the security ID of the new call is that ! 69: of the authentication server itself, rather than the original security ID. ! 70: .PP ! 71: Much of the operation of the server is keyed off its configuration ! 72: file. Each line in the file contains an initial keyword, followed ! 73: by a number of arguments (there are no continuation lines), a line ! 74: starting with a ``#'' is a comment. The various keywords are: ! 75: .TP ! 76: .BI admin " address ..." ! 77: This defines the names of the administrators of the authentication server. ! 78: The addresses (up to 10 may be specified) are the electronic mail ! 79: addresses of the administrators. These names will received mail ! 80: if the server detects a possibly security violation. ! 81: .TP ! 82: .BI failures " number" ! 83: This sets the maximum number of failures to allow an individual ! 84: instantiation of ! 85: .I authmgr ! 86: before the connection is closed and the administrators are notified. ! 87: The default is 3. ! 88: .TP ! 89: .BI disallow " login" ! 90: Defines a login name that may not authenticate itself, even if it ! 91: exists in the keys file. ! 92: Any number of ! 93: .B disallow ! 94: lines may appear in the configuration file. ! 95: .TP ! 96: .BI usepasswd " regexp" ! 97: Tells ! 98: .I authmgr ! 99: that despite what the key file says, if the source of this call ! 100: matches ! 101: .IR regexp , ! 102: the user should be requested to enter their password from the ! 103: /etc/passwd file, rather than doing some kind of key encryption. ! 104: This is useful when ! 105: .I authmgr ! 106: is being used for authentication inside a trusted network, and ! 107: using encryption boxes would be too cumbersome. ! 108: .TP ! 109: .BI setuser " regexp user" ! 110: Map all calls from machines matching ! 111: .IR regexp ! 112: to ! 113: .IR user . ! 114: If the ! 115: .I user ! 116: field is empty, prompt for the login name. This can be useful ! 117: for calls coming from untrusted machines. ! 118: .TP ! 119: .BI setsvc " regexp service" ! 120: If a call comes from a machine matching ! 121: .IR regexp , ! 122: set the default service of the redialed call to ! 123: .IR service . ! 124: .TP ! 125: .BI setlog " regexp file" ! 126: Log calls from machines matching ! 127: .I regexp ! 128: in ! 129: .IR file . ! 130: .TP ! 131: .BI secmapid " regexp securityid" ! 132: If the security ID of the incoming call matches ! 133: .I regexp ! 134: (in the format of ! 135: .IR regexp (3)) ! 136: the outgoing security ID will be ! 137: .IR securityid . ! 138: There must be at least one ! 139: .B secmapid ! 140: lines in the configuration file, that of the default (``.*'') ! 141: outgoing security ID. ! 142: Because of the way the security ID mappings are stored, any ! 143: mappings that contain wildcards should appear after those without; ! 144: the mappings are tried against an incoming security ID in top-down ! 145: order (this implies that the default mapping should appear last). ! 146: .PP ! 147: The keys are stored in a key file. ! 148: Each line in the key file is of the form ! 149: .RS ! 150: .sp ! 151: login:keytype:key encoding: ! 152: .sp ! 153: .RE ! 154: Login is a usual login name. ! 155: Keytype is the type of the key (more than one encryption box type ! 156: are supported by ! 157: .IR authmgr ). ! 158: The key encoding is the key for this user; this encoding differs ! 159: depending on the keytype. ! 160: Currently, two key types recognized. ! 161: One is ! 162: .BR atalla , ! 163: for the Atalla Confidante style key (the key encoding for this ! 164: type is 8 groups of octal numbers between 0 and 0377, specifying the DES ! 165: key kept in this box, for example ``010 342 176 214 212 101 414 527''). ! 166: The other is ! 167: .BR passwd , ! 168: which means the key encoding is a standard password file 13 character ! 169: password entry (if the key encoding is blank, ! 170: .I authmgr ! 171: look in the password file for the password). ! 172: Because these keys are stored ! 173: in the clear, this file should be well protected, and probably ! 174: should be encrypted. ! 175: .PP ! 176: Currently, the authentication server may be connected to at the ! 177: service point ``security'' on the security host. ! 178: If you use the service ``gsecurity'', you get the no-redial ! 179: option of the server. ! 180: .SH FILES ! 181: .nf ! 182: .F /usr/net/authmgr.conf ! 183: .F /usr/net/authmgr.keys ! 184: .F /etc/passwd ! 185: .fi ! 186: .SH "SEE ALSO" ! 187: .IR con (1), ! 188: .IR regexp (3), ! 189: .IR svcmgr (8), ! 190: .IR dkmgr (8) ! 191: .SH BUGS ! 192: There is currently no support for encrypting the keys file. ! 193: .br ! 194: The only current use for this is over the datakit, and the ! 195: regular expressions in the secmapid line are not of the same ! 196: format as would be expected for wildcard datakit names. ! 197: .br ! 198: Users will still have to enter a login and password if the ! 199: service they redial doesn't believe ! 200: .IR authmgr . ! 201: .br ! 202: The ! 203: .I secmapid ! 204: parameter is currently ignored.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.