Updated docs
[mirror/userdir-ldap.git] / doc / ud-info.1.yo
1 mailto(admin@db.debian.org)
2 manpage(ud-info)(1)(17 Sep 1999)(userdir-ldap)()
3 manpagename(ud-info)(Command line LDAP user record manipulator)
4
5 manpagesynopsis()
6   ud-info [options]
7    
8 manpagedescription()
9
10 ud-info is the command-line tool for end users to manipulate their own
11 database information and to view other users information. It also provides
12 root functions which when combined with sufficient LDAP privilages allow
13 an administrator to completely manipulate a users record.
14
15 The defined fields are:
16 itemize(
17   it() cn - Common (first) name. [root]
18   it() mn - Middle name or initial. [root]
19   it() sn - Surname (last name). [root]
20   it() cn - ISO 3166 country code, see file(/usr/share/zoneinfo/iso3166.tab)
21             Should be upper case.
22   it() ircnick - IRC nickname.
23   it() l - City name, state/province. The part of a mailing address that is
24            not the street address. e.g.: Dallas, Texas
25   it() postalcode - Postal Code or ZIP Code 
26   it() postaladdress - Complete mailing address including postal codes and
27            country designations. Newlines are seperated by a $ character. The
28            address should be formed exactly as it would appear on a parcel.
29   it() latitude/longitude - The physical latitude and longitude. This 
30            information is typically used to generate an xearth marker file. 
31            See the discussion below on position formats.
32   it() facsimiletelephonenumber - FAX phone number, do not forget to specify a
33            country code [North Armerica is +1].
34   it() telephonenumber - Voice phone number. 
35   it() loginshell - Full path to the prefered Unix login shell. e.g. file(/bin/bash)
36   it() emailforward - Destination email address.
37   it() userpassword - Encrypted version of the password. [root]
38   it() sshrsaauthkey - SSH RSA public authentication key.
39   it() supplementarygid - A list of group names that the user belongs.
40            This field emulates the functionality of the traditional Unix group
41            file. [root]
42   it() allowedhosts - Permits access to hosts outside of the group list. [root]
43   it() onvacation - A message indicating that the user is on vacation. The
44            time of departure and expected return date should be included as
45            well as any special instructions.
46   it() comment - Administrative comment about the account. [root]
47   it() labeledurl - User's web site.
48 )  
49
50 When prompted for a password it is possible to enter a blank password and
51 access the database anonymously. This is useful to check PGP key
52 fingerprints, for instance.
53
54 manpagesection(SECURITY AND PRIVACY)
55 Three levels of information security are provided by the database. The first
56 is completely public information that anyone can see either by issuing an
57 LDAP query or by visiting the web site. The next level is "maintainer-only"
58 information that requires authentication to the directory before it can be
59 accessed. The final level is admin-only or user-only information; this
60 information can only be viewed by the user or an administrator. 
61
62 Maintainer-only information includes precise location information
63 [postalcode, postal address, lat/long] telephone numbers, and the vacation
64 message.
65
66 Admin-only/user-only information includes email forwarding, ssh keys and
67 the encrypted password. Note that email forwarding is necessarily publicly 
68 viewable from accounts on the actual machines.
69
70 manpagesection(LAT/LONG POSITION)
71 There are three possible formats for giving position information and several
72 online sites that can give an accurate position fix based on mailing address.
73
74 startdit()
75 dit(Decimal Degrees)
76 The format is +-DDD.DDDDDDDDDDDDDDD. This is the format programs like
77 bf(xearth)
78 use and the format that many positioning web sites use. However typically
79 the precision is limited to 4 or 5 decimals.
80
81 dit(Degrees Minutes (DGM))
82 The format is +-DDDMM.MMMMMMMMMMMMM. It is not an arithmetic type, but a
83 packed representation of two seperate units, degrees and minutes. This
84 output is common from some types of hand held GPS units and from NMEA format
85 GPS messages.
86
87 dit(Degrees Minutes Seconds (DGMS))
88 The format is +-DDDMMSS.SSSSSSSSSSS. Like DGM, it is not an arithmetic type but
89 a packed representation of three seperate units, degrees minutes and
90 seconds. This output is typically derived from web sites that give 3 values
91 for each position. For instance 34:50:12.24523 North might be the position
92 given, in DGMS it would be +0345012.24523.
93 enddit()
94
95 For Latitude + is North, for Longitude + is East. It is important to specify
96 enough leading zeros to dis-ambiguate the format that is being used if your
97 position is less than 2 degrees from a zero point.
98
99 So locations to find positioning information are:
100
101 itemize(
102  it() Good starting point - http://www.ckdhr.com/dns-loc/finding.html
103  it() AirNav - GPS locations for airports around the world http://www.airnav.com/
104  it() GeoCode - US index by ZIP Code http://www.geocode.com/eagle.html-ssi
105  it() Map Blast! Canadian, US and some European maps - http://www.mapblast.com/
106  it() Australian Database http://www.environment.gov.au/database/MAN200R.html
107  it() Canadian Database http://GeoNames.NRCan.gc.ca/
108  it() Atlas of the World, indexed by city http://www.astro.com/atlas/
109  it() GNU Timezone database, organized partially by country /usr/share/zoneinfo/zone.tab
110 )
111
112 Remember that we are after reasonable coordinates for drawing an xearth
113 graph and looking for people to sign keys, not for coordinates accurate
114 enough to land an ICBM on your doorstop!
115
116 manpagesection(EDITING SUPPLEMENTAL GIDS)
117 When the root function is activated then the supplemental GIDs can be
118 manipulated as a list of items. It is possible to add and remove items from
119 the list by name. Proper prompts are given. A similar editing function is
120 made available for the host acl list.
121
122 manpagesection(ENCRYPTION PUBLIC KEYS)
123 The directory associates two types of public encryption keys with the user,
124 a PGP key fingerprint and a SSH RSA authentication key. It is not possible for
125 a user to change their associated key fingerprint, that can only be done by
126 the keyring maintainers after performing reasonable verification of the new
127 key. Who ever controls the PGP key can make any modification to the LDAP
128 account by using the PGP mail gateways.
129
130 SSH RSA authentication keys are used by the SSH protocol to authenticate a
131 user based on a cryptographic challenge. These keys pairs are created by the
132 ssh-keygen program. The public version that is stored in the directory is
133 generally placed in a file called identity.pub. SSH RSA authentication keys
134 are password equivelents, whoever has the private half of the key can use it
135 to login to any machine, but not affect changes to the LDAP entry. SSH
136 authentication keys are kept private.
137
138 manpageoptions()
139 startdit()
140 dit(bf(-a))
141 Set the authentication user. This is the user whose authority is used when 
142 accessing the LDAP directory. The default is to use the current system user
143 name.
144
145 dit(bf(-u))
146 Select the user whose fields will be displayed/edited. The default is to use
147 the current system user name.
148
149 dit(bf(-c))
150 Set both the authentication user and the target user. This option is useful
151 if the login name does not match the user who is operating the program.
152
153 dit(bf(-r))
154 Enable root functions. This enables more options to allow changing
155 any entry in the directory. This function only has meaning if the
156 authentication user has the necessary permissions at the LDAP server.
157
158 dit(bf(-n))
159 No actions. Anonymously bind and show the information for the user and then
160 exit.
161 enddit()
162
163 manpagefiles()
164 itemize(
165   it() /etc/userdir-ldap/userdir-ldap.conf
166   Configuration variables to select what server and what base DN to use.
167 )
168         
169 manpageauthor()
170 userdir-ldap was written by Jason Gunthorpe <jgg@debian.org>.
171