1 .TH "VMM" "1" "17 Aug 2009" "Pascal Volk" |
1 .TH "VMM" "1" "2012-04-15" "vmm 0.6" "vmm" |
2 .SH NAME |
2 .SH NAME |
3 vmm \- command line tool to manage email domains/accounts/aliases |
3 vmm \- command line tool to manage email domains/accounts/aliases |
|
4 .\" ----------------------------------------------------------------------- |
4 .SH SYNOPSIS |
5 .SH SYNOPSIS |
5 .B vmm |
6 .B vmm |
6 \fIsubcommand\fP \fIobject\fP [ \fIargs\fP ] |
7 .IR subcommand " [" "argument ..." ] |
|
8 .\" ----------------------------------------------------------------------- |
7 .SH DESCRIPTION |
9 .SH DESCRIPTION |
8 \fBvmm\fP (Virtual Mail Manager) is a command line tool for |
10 .B vmm |
9 administrators/postmasters to manage domains, accounts and aliases. It's |
11 (a virtual mail manager) is the easy to use command line tool for |
10 designed for Dovecot and Postfix with a PostgreSQL backend. |
12 administrators and postmasters to manage (alias) domains, accounts, aliases |
11 .SH SUBCOMMANDS |
13 and relocated users. |
12 Each subcommand has both a long and a short form. Both forms are case sensitive. |
14 It allows you to simply and quickly administer your mail server. |
13 .SS GENERAL SUBCOMMANDS |
15 .br |
14 .TP |
16 It's designed for Dovecot and Postfix with a PostgreSQL backend. |
15 \fBconfigure\fP (\fBcf\fP) [ \fIsection\fP ] |
17 .PP |
|
18 Each |
|
19 .I subcommand |
|
20 has both a long and a short form. |
|
21 The short form is shown enclosed in parentheses. |
|
22 Both forms are case sensitive. |
|
23 .PP |
|
24 Most of the |
|
25 .IR subcommand s |
|
26 take one or more |
|
27 .IR argument s. |
|
28 .\" ----------------------------------------------------------------------- |
|
29 .SH ARGUMENTS |
|
30 .TP 12 |
|
31 .I address |
|
32 The complete e\-mail address |
|
33 .RI ( local\-part @ fqdn ) |
|
34 of an user account, alias address or relocated user. |
|
35 .\" -------------------------- |
|
36 .TP |
|
37 .I destination |
|
38 Is either an e\-mail |
|
39 .I address |
|
40 when used with |
|
41 .IR "ALIAS SUBCOMMANDS" . |
|
42 Or a |
|
43 .I fqdn |
|
44 when used with |
|
45 .IR "ALIASDOMAIN SUBCOMMANDS" . |
|
46 .\" -------------------------- |
|
47 .TP |
|
48 .I fqdn |
|
49 The fully qualified domain name \- without the trailing dot \- of a domain |
|
50 or alias domain. |
|
51 .\" -------------------------- |
|
52 .TP |
|
53 .I messages |
|
54 An integer value which specifies a quota limit in number of messages. |
|
55 .B 0 |
|
56 (zero) means unlimited \- no quota limit for the number of messages. |
|
57 .\" -------------------------- |
|
58 .TP |
|
59 .I option |
|
60 is the name of a configuration option, prefixed with the section name and a |
|
61 dot. |
|
62 For example: |
|
63 .IB misc . transport |
|
64 .br |
|
65 All configuration options are described in |
|
66 .BR vmm.cfg (5). |
|
67 .\" -------------------------- |
|
68 .TP |
|
69 .I service |
|
70 The name of a service, commonly used with Dovecot. |
|
71 Supported services are: |
|
72 .BR imap ", " pop3 ", " sieve " and " smtp . |
|
73 .\" -------------------------- |
|
74 .TP |
|
75 .I storage |
|
76 Specifies a quota limit in bytes. |
|
77 One of the following prefixes can be appended to the integer value: |
|
78 .BR b " (bytes), " k " (kilobytes), " M " (megabytes) or " G |
|
79 (gigabytes). |
|
80 .B 0 |
|
81 (zero) means unlimited \- no quota limit in bytes. |
|
82 .\" -------------------------- |
|
83 .TP |
|
84 .I transport |
|
85 A transport for Postfix, written as: |
|
86 .IB transport : |
|
87 or |
|
88 .IB transport :\c |
|
89 .IR nexthop . |
|
90 See |
|
91 .BR transport (5) |
|
92 for more details. |
|
93 .\" ----------------------------------------------------------------------- |
|
94 .SH GENERAL SUBCOMMANDS |
|
95 .SS configget (cg) |
|
96 .BI "vmm configget" " option" |
|
97 .PP |
|
98 This subcommand is used to display the actual value of the given |
|
99 configuration |
|
100 .IR option . |
|
101 .PP |
|
102 Example: |
|
103 .PP |
|
104 .nf |
|
105 .B vmm configget misc.crypt_sha512_rounds |
|
106 misc.crypt_sha512_rounds = 5000 |
|
107 .fi |
|
108 .\" ------------------------------------ |
|
109 .SS configset (cs) |
|
110 .B vmm configset |
|
111 .I option value |
|
112 .PP |
|
113 Use this subcommand to set or update a single configuration option's value. |
|
114 .I option |
|
115 is the configuration option, |
|
116 .I value |
|
117 is the |
|
118 .IR option 's |
|
119 new value. |
|
120 .IP Note: |
|
121 This subcommand will create a new |
|
122 .I vmm.cfg |
|
123 without any comments. |
|
124 Your current configuration file will be backed as |
|
125 .IR vmm.cfg.bak . |
|
126 .PP |
|
127 Example: |
|
128 .PP |
|
129 .nf |
|
130 .B vmm configget domain.transport |
|
131 domain.transport = dovecot: |
|
132 .B vmm configset domain.transport lmtp:unix:private/dovecot\-lmtp |
|
133 .B vmm cg domain.transport |
|
134 domain.transport = lmtp:unix:private/dovecot\-lmtp |
|
135 .fi |
|
136 .\" ------------------------------------ |
|
137 .SS configure (cf) |
|
138 .B vmm configure |
|
139 .RI [ section ] |
|
140 .PP |
16 Starts the interactive configuration for all configuration sections. |
141 Starts the interactive configuration for all configuration sections. |
|
142 .PP |
|
143 In this process the currently set value of each option will be displayed in |
|
144 square brackets. |
|
145 If no value is configured, the default value of each option will be |
|
146 displayed in square brackets. |
|
147 Press the return key, to accept the displayed value. |
|
148 .PP |
|
149 If the optional argument |
|
150 .I section |
|
151 is given, only the configuration options from the given section will be |
|
152 displayed and will be configurable. |
|
153 The following sections are available: |
|
154 .RS |
|
155 .TP 10 |
|
156 .B account |
|
157 Account settings |
|
158 .TP |
|
159 .B bin |
|
160 Paths to external binaries |
|
161 .TP |
|
162 .B database |
|
163 Database settings |
|
164 .TP |
|
165 .B domain |
|
166 Domain settings |
|
167 .TP |
|
168 .B mailbox |
|
169 Mailbox settings |
|
170 .TP |
|
171 .B misc |
|
172 Miscellaneous settings |
|
173 .RE |
|
174 .PP |
|
175 All configuration options are described in |
|
176 .BR vmm.cfg (5). |
|
177 .IP Note: |
|
178 This subcommand will create a new |
|
179 .I vmm.cfg |
|
180 without any comments. |
|
181 Your current configuration file will be backed as |
|
182 .IR vmm.cfg.bak . |
|
183 .PP |
|
184 Example: |
|
185 .PP |
|
186 .nf |
|
187 .B vmm configure mailbox |
|
188 Using configuration file: /usr/local/etc/vmm.cfg |
|
189 |
|
190 * Configuration section: `mailbox' |
|
191 Enter new value for option folders [Drafts:Sent:Templates:Trash]: |
|
192 Enter new value for option format [maildir]: mdbox |
|
193 Enter new value for option subscribe [True]: |
|
194 Enter new value for option root [Maildir]: mdbox |
|
195 .fi |
|
196 .\" ------------------------------------ |
|
197 .SS getuser (gu) |
|
198 .BI "vmm getuser" " uid" |
|
199 .PP |
|
200 If only the |
|
201 .I uid |
|
202 is available, for example from process list, the subcommand |
|
203 .B getuser |
|
204 will show the user's address. |
|
205 .PP |
|
206 Example: |
|
207 .PP |
|
208 .nf |
|
209 .B vmm getuser 79876 |
|
210 Account information |
|
211 ------------------- |
|
212 UID............: 79876 |
|
213 GID............: 70704 |
|
214 Address........: a.user@example.com |
|
215 .fi |
|
216 .\" ------------------------------------ |
|
217 .SS help (h) |
|
218 .B vmm help |
|
219 .RI [ subcommand ] |
|
220 .PP |
|
221 Prints a list of available subcommands with a short description to stdout. |
|
222 When a |
|
223 .I subcommand |
|
224 was given, help for that |
|
225 .I subcommand |
|
226 will be displayed. |
|
227 After this |
|
228 .B vmm |
|
229 exits. |
|
230 .\" ------------------------------------ |
|
231 .SS listdomains (ld) |
|
232 .B vmm listdomains |
|
233 .RI [ pattern ] |
|
234 .PP |
|
235 This subcommand lists all available domains. |
|
236 All domain names will be prefixed either with `[+]', if the domain is a |
|
237 primary domain, or with `[-]', if it is an alias domain name. |
|
238 The output can be limited with an optional |
|
239 .IR pattern . |
|
240 .PP |
|
241 To perform a wild card search, the % character can be used at the start |
|
242 and/or the end of the |
|
243 .IR pattern . |
|
244 .PP |
|
245 Example: |
|
246 .PP |
|
247 .nf |
|
248 .B vmm listdomains %example% |
|
249 Matching domains |
|
250 ---------------- |
|
251 [+] example.com |
|
252 [\-] e.g.example.com |
|
253 [\-] example.name |
|
254 [+] example.net |
|
255 [+] example.org |
|
256 .fi |
|
257 .\" ------------------------------------ |
|
258 .SS listpwschemes (lp) |
|
259 .B vmm listpwschemes |
|
260 .PP |
|
261 This subcommand lists all password schemes which could be used in the |
|
262 .I vmm.cfg |
|
263 as value of the |
|
264 .I misc.password_scheme |
|
265 option. |
|
266 The output varies, depending on the used Dovecot version and the system's |
|
267 libc. |
17 .br |
268 .br |
18 If the optional argument \fIsection\fP is given, only the configuration options |
269 When your Dovecot installation isn't too old, you will see additionally a |
19 from the given section will be displayed and will be configurable. The following |
270 few usable encoding suffixes. |
20 sections are available: |
271 One of them can be appended to the password scheme. |
|
272 .PP |
|
273 Example: |
|
274 .PP |
|
275 .nf |
|
276 .B vmm listpwschemes |
|
277 Usable password schemes |
|
278 ----------------------- |
|
279 CRYPT SHA512-CRYPT LDAP-MD5 DIGEST-MD5 SHA256 SHA512 SSHA512 |
|
280 SKEY SSHA NTLM RPA MD5-CRYPT HMAC-MD5 SHA1 PLAIN SHA CRAM-MD5 |
|
281 SSHA256 MD5 LANMAN CLEARTEXT PLAIN-MD5 PLAIN-MD4 OTP SMD5 |
|
282 SHA256-CRYPT |
|
283 |
|
284 Usable encoding suffixes |
|
285 ------------------------ |
|
286 .B64 .BASE64 .HEX |
|
287 .fi |
|
288 .\" ------------------------------------ |
|
289 .SS version (v) |
|
290 .B vmm version |
|
291 .PP |
|
292 Prints |
|
293 .BR vmm 's |
|
294 version and copyright information to stdout. |
|
295 After this |
|
296 .B vmm |
|
297 exits. |
|
298 .\" ----------------------------------------------------------------------- |
|
299 .SH DOMAIN SUBCOMMANDS |
|
300 .SS domainadd (da) |
|
301 .B vmm domainadd |
|
302 .IR fqdn " [" transport ] |
|
303 .PP |
|
304 Adds the new domain into the database and creates the domain directory. |
|
305 .PP |
|
306 If the optional argument |
|
307 .I transport |
|
308 is given, it will override the default transport |
|
309 .RI ( domain.transport ") from " vmm.cfg . |
|
310 The specified |
|
311 .I transport |
|
312 will be the default transport for all new accounts in this domain. |
|
313 .PP |
|
314 Configuration\-related behavior: |
21 .RS |
315 .RS |
22 .PD 0 |
316 .TP |
23 .TP |
317 .I domain.auto_postmaster |
24 - |
318 When that option is set to |
25 .B |
319 .BR true " (default) " vmm |
26 database |
320 will automatically create the postmaster account for the new domain and |
27 .TP |
321 prompt for |
28 - |
322 .BI postmaster@ fqdn\c |
29 .B |
323 \(aqs password. |
30 maildir |
324 .TP |
31 .TP |
325 .I account.random_password |
32 - |
326 When the value of that option is also set to |
33 .B |
327 .BR true ", " vmm |
34 services |
328 will automatically create the postmaster account for the new domain and |
35 .TP |
329 print the generated postmaster password to stdout. |
36 - |
|
37 .B |
|
38 domdir |
|
39 .TP |
|
40 - |
|
41 .B |
|
42 bin |
|
43 .TP |
|
44 - |
|
45 .B |
|
46 misc |
|
47 .PD |
|
48 .RE |
330 .RE |
49 .LP |
331 .PP |
50 .PP |
332 Examples: |
51 .nf |
333 .PP |
52 Example: |
334 .nf |
53 |
335 .B vmm domainadd support.example.com smtp:[mx1.example.com]:2025 |
54 \fBvmm configure services\fP |
336 Creating account for postmaster@support.example.com |
55 Using configuration file: /usr/local/etc/vmm.cfg |
337 Enter new password: |
56 |
338 Retype new password: |
57 * Config section: “services” |
339 .B vmm cs account.random_password true |
58 Enter new value for option pop3 [True]: |
340 .B vmm domainadd sales.example.com |
59 Enter new value for option smtp [True]: |
341 Creating account for postmaster@sales.example.com |
60 Enter new value for option imap [True]: |
342 Generated password: pLJUQ6Xg_z |
61 Enter new value for option sieve [True]: false |
343 .fi |
62 .fi |
344 .\" ------------------------------------ |
63 .PP |
345 .SS domaindelete (dd) |
64 .TP |
346 .BI "vmm domaindelete " fqdn |
65 \fBgetuser\fP (\fBgu\fP) \fIuserid\fP |
347 .RB [ force ] |
66 If only the userid is available, for example from process list, the subcommand |
348 .PP |
67 \fBgetuser\fP will show the user's address. |
349 This subcommand deletes the domain specified by |
68 .PP |
350 .IR fqdn . |
69 .nf |
351 .PP |
70 Example: |
352 If there are accounts, aliases and/or relocated users assigned to the given |
71 |
353 domain, |
72 \fBvmm getuser 70004\fP |
354 .B vmm |
73 Account information |
355 will abort the requested operation and show an error message. |
74 ------------------- |
356 If you know, what you are doing, you can specify the optional keyword |
75 UID............: 70004 |
357 .BR force . |
76 GID............: 70000 |
358 .PP |
77 Address........: c.user@example.com |
359 If you really always know what you are doing, edit your |
78 .fi |
360 .I vmm.cfg |
79 .\" |
361 and set the option |
80 .TP |
362 .I domain.force_deletion |
81 \fBlistdomains\fP (\fBld\fP) [ \fIpattern\fP ] |
363 to |
82 This subcommand lists all available domains. All domain names will be prefixed |
364 .BR true . |
83 either with '[+]', if the domain is a primary domain, or with '[-]', if it is |
365 .\" ------------------------------------ |
84 an alias domain name. The output can be limited with an optional \fIpattern\fP. |
366 .SS domaininfo (di) |
85 .br |
367 .B vmm domaininfo |
86 To perform a wild card search, the % character can be used at the start and/or |
368 .IR fqdn \ [ details ] |
87 the end of the \fIpattern\fP. |
369 .PP |
88 .PP |
370 This subcommand shows some information about the given domain. |
89 .nf |
371 .PP |
90 Example: |
372 For a more detailed information about the domain the optional argument |
91 |
373 .I details |
92 \fBvmm listdomains %example%\fP |
374 can be specified. |
93 Matching domains |
375 A possible |
94 ---------------- |
376 .I details |
95 [+] example.com |
377 value can be one of the following five keywords: |
96 [-] e.g.example.com |
|
97 [-] example.name |
|
98 [+] example.net |
|
99 [+] example.org |
|
100 .fi |
|
101 .\" |
|
102 .TP |
|
103 \fBhelp\fP (\fBh\fP) |
|
104 Prints all available commands to stdout. After this \fBvmm\fP exits. |
|
105 .TP |
|
106 \fBversion\fP (\fBv\fP) |
|
107 Prints the version information from \fBvmm\fP. |
|
108 .\" |
|
109 .SS DOMAIN SUBCOMMANDS |
|
110 .TP |
|
111 \fBdomainadd\fP (\fBda\fP) \fIdomain\fP [ \fItransport\fP ] |
|
112 Adds the new \fIdomain\fP into the database. |
|
113 .br |
|
114 If the optional argument \fItransport\fP is given, it will overwrite the |
|
115 default transport from \fBvmm.cfg\fP (misc/transport). The specified transport |
|
116 will be the default transport for all new accounts in this domain. |
|
117 .PP |
|
118 .nf |
|
119 Examples: |
|
120 |
|
121 \fBvmm domainadd support.example.com smtp:mx1.example.com |
|
122 vmm domainadd sales.example.com\fP |
|
123 .fi |
|
124 .TP |
|
125 \fBdomaininfo\fP (\fBdi\fP) \fIdomain\fP [ \fIdetails\fP ] |
|
126 This subcommand shows some information about the given \fIdomain\fP. |
|
127 .br |
|
128 For a more detailed information about the \fIdomain\fP the optional argument |
|
129 \fIdetails\fP can be specified. A possible \fIdetails\fP value may be one of |
|
130 the following five keywords: |
|
131 .RS |
378 .RS |
132 .PD 0 |
379 .TP 14 |
133 .TP |
|
134 .B accounts |
380 .B accounts |
135 to list all existing accounts |
381 to list the e\-mail addresses of all existing user accounts |
136 .TP |
382 .TP |
137 .B aliasdomains |
383 .B aliasdomains |
138 to list all assigned alias domains |
384 to list all assigned alias domain names |
139 .TP |
385 .TP |
140 .B aliases |
386 .B aliases |
141 to list all available aliases addresses |
387 to list all available alias e\-mail addresses |
142 .TP |
388 .TP |
143 .B relocated |
389 .B relocated |
144 to list all relocated users |
390 to list the e\-mail addresses of all relocated users |
|
391 .TP |
|
392 .B catchall |
|
393 to list all catch\-all destinations |
145 .TP |
394 .TP |
146 .B full |
395 .B full |
147 to list all information mentioned above |
396 to list all information mentioned above |
148 .PD |
|
149 .RE |
397 .RE |
150 .LP |
398 .PP |
151 .nf |
399 Example: |
152 Example: |
400 .PP |
153 |
401 .nf |
154 \fBvmm domaininfo sales.example.com\fP |
402 .B vmm domaininfo sales.example.com |
155 Domain information |
403 Domain information |
156 ------------------ |
404 ------------------ |
157 Domainname.....: sales.example.com |
405 Domain Name......: sales.example.com |
158 GID............: 70002 |
406 GID..............: 70708 |
159 Transport......: dovecot: |
407 Domain Directory.: /srv/mail/c/70708 |
160 Domaindir......: /home/mail/5/70002 |
408 Quota Limit/User.: Storage: 500.00 MiB; Messages: 10,000 |
161 Aliasdomains...: 0 |
409 Active Services..: IMAP SIEVE |
162 Accounts.......: 0 |
410 Transport........: lmtp:unix:private/dovecot-lmtp |
163 Aliases........: 0 |
411 Alias Domains....: 0 |
164 Relocated......: 0 |
412 Accounts.........: 1 |
165 |
413 Aliases..........: 0 |
166 .fi |
414 Relocated........: 0 |
167 .TP |
415 Catch-All Dests..: 1 |
168 \fBdomaintransport\fP (\fBdt\fP) \fIdomain\fP \fItransport\fP [ \fIforce\fP ] |
416 .fi |
|
417 .\" ------------------------------------ |
|
418 .SS domainquota (dq) |
|
419 .B vmm domainquota |
|
420 .IR "fqdn storage" " [" messages ] |
|
421 .RB [ force ] |
|
422 .PP |
|
423 This subcommand is used to configure a new quota limit for the accounts of |
|
424 the domain - not for the domain itself. |
|
425 .PP |
|
426 The default quota limit for accounts is defined in the |
|
427 .IR vmm.cfg " (" domain.quota_bytes " and " domain.quota_messages ). |
|
428 .PP |
|
429 The new quota limit will affect only those accounts for which the limit |
|
430 has not been overridden. If you want to restore the default to all accounts, |
|
431 you may pass the keyword |
|
432 .BR force . |
|
433 .br |
|
434 When the argument |
|
435 .I messages |
|
436 was omitted the default number of messages |
|
437 .B 0 |
|
438 (zero) will be applied. |
|
439 .PP |
|
440 Example: |
|
441 .PP |
|
442 .nf |
|
443 .B vmm domainquota example.com 1g force |
|
444 .fi |
|
445 .\" ------------------------------------ |
|
446 .SS domainservices (ds) |
|
447 .B vmm domainservices |
|
448 .IR fqdn " [" "service ..." ] |
|
449 .RB [ force ] |
|
450 .PP |
|
451 To define which services could be used by the users of the domain \(em with |
|
452 the given |
|
453 .I fqdn |
|
454 \(em use this subcommand. |
|
455 .PP |
|
456 Each specified |
|
457 .I service |
|
458 will be enabled/usable. |
|
459 All other services will be deactivated/unusable. |
|
460 Possible service names are: |
|
461 .BR imap ", " pop3 ", " sieve " and " smtp . |
|
462 .br |
|
463 The new service set will affect only those accounts for which the set has not |
|
464 been overridden. If you want to restore the default to all accounts, you may |
|
465 pass the keyword |
|
466 .BR force . |
|
467 .\" ------------------------------------ |
|
468 .SS domaintransport (dt) |
|
469 .BI "vmm domaintransport" " fqdn transport" |
|
470 .RB [ force ] |
|
471 .PP |
169 A new transport for the indicated domain can be set with this subcommand. |
472 A new transport for the indicated domain can be set with this subcommand. |
|
473 .PP |
|
474 The new transport will affect only those accounts for which the transport has |
|
475 not been overridden. If you want to restore the default to all accounts, you |
|
476 may pass the keyword |
|
477 .BR force . |
|
478 .PP |
|
479 Example: |
|
480 .PP |
|
481 .nf |
|
482 .B vmm domaintransport support.example.com dovecot: |
|
483 .fi |
|
484 .\" ------------------------------------ |
|
485 .SS domainnote (do) |
|
486 .BI "vmm domainnote" " fqdn" |
|
487 .RI [ note ] |
|
488 .PP |
|
489 With this subcommand, it is possible to attach a note to the specified |
|
490 domain. Without an argument, an existing note is removed. |
|
491 .PP |
|
492 Example: |
|
493 .PP |
|
494 .nf |
|
495 .B vmm do example.com Belongs to Robert |
|
496 .fi |
|
497 .\" ----------------------------------------------------------------------- |
|
498 .SH ALIAS DOMAIN SUBCOMMANDS |
|
499 An alias domain is an alias for a domain that was previously added with the |
|
500 subcommand |
|
501 .BR domainadd . |
|
502 All accounts, aliases and relocated users from the domain will be also |
|
503 available in the alias domain. |
170 .br |
504 .br |
171 If the additional keyword '\fBforce\fP' is given all account specific transport |
505 In the following is to be assumed that example.net is an alias for |
172 settings will be overwritten. |
506 example.com. |
|
507 .PP |
|
508 Postfix will not accept erroneously e\-mails for unknown.user@example.net |
|
509 and bounce them back later to the mostly faked sender. |
|
510 Postfix will immediately reject all e\-mails addressed to nonexistent |
|
511 users. |
173 .br |
512 .br |
174 Otherwise this setting will affect only new created accounts. |
513 This behavior is ensured as long as you use the recommended database |
175 .PP |
514 queries in your |
176 .nf |
515 .I $config_directory/pgsql\-*.cf |
177 Example: |
516 configuration files. |
178 |
517 .\" ------------------------------------ |
179 \fBvmm domaintransport support.example.com dovecot:\fP |
518 .SS aliasdomainadd (ada) |
180 .fi |
519 .BI "vmm aliasdomainadd" " fqdn destination" |
181 .TP |
520 .PP |
182 \fBdomaindelete\fP (\fBdd\fP) \fIdomain\fP [ \fIdelalias\fP | \fIdeluser\fP | \fIdelall\fP ] |
521 This subcommand adds the new alias domain |
183 This subcommand deletes the specified \fIdomain\fP. |
522 .RI ( fqdn ) |
184 .br |
523 to the |
185 If there are accounts and/or aliases assigned to the given domain, \fBvmm\fP |
524 .I destination |
186 will abort the requested operation and show an error message. If you know, what |
525 domain that should be aliased. |
187 you are doing, you can specify one of the following keywords: '\fBdelalias\fP', '\fBdeluser\fP' or '\fBdelall\fP'. |
526 .PP |
188 .br |
527 Example: |
189 |
528 .PP |
190 If you really always know what you are doing, edit your \fBvmm.cfg\fP and set |
529 .nf |
191 the option \fIforcedel\fP, in section \fImisc\fP, to true. |
530 .B vmm aliasdomainadd example.net example.com |
192 .\" |
531 .fi |
193 .SS ALIAS DOMAIN SUBCOMMANDS |
532 .\" ------------------------------------ |
194 .TP |
533 .SS aliasdomaindelete (add) |
195 \fBaliasdomainaddd\fP (\fBada\fP) \fIaliasdomain\fP \fItargetdomain\fP |
534 .BI "vmm aliasdomaindelete" " fqdn" |
196 This subcommand adds the new \fIaliasdomain\fP to the \fItargetdomain\fP that |
535 .PP |
197 should be aliased. |
536 Use this subcommand if the alias domain |
198 .PP |
537 .I fqdn |
199 .nf |
538 should be removed. |
200 Example: |
539 .PP |
201 |
540 Example: |
202 \fBvmm aliasdomainadd example.name example.com\fP |
541 .PP |
203 .fi |
542 .nf |
204 .TP |
543 .B vmm aliasdomaindelete e.g.example.com |
205 \fBaliasdomaininfo (\fBadi\fP) \fIaliasdomain\fP |
544 .fi |
206 This subcommand shows to which domain the \fIaliasdomain\fP is assigned to. |
545 .\" ------------------------------------ |
207 .PP |
546 .SS aliasdomaininfo (adi) |
208 .nf |
547 .BI "vmm aliasdomaininfo" " fqdn" |
209 Example: |
548 .PP |
210 |
549 This subcommand shows to which domain the alias domain |
211 \fBvmm aliasdomaininfo example.name\fP |
550 .I fqdn |
212 Alias domain information |
551 is assigned to. |
213 ------------------------ |
552 .PP |
214 The alias domain example.name belongs to: |
553 Example: |
215 * example.com |
554 .PP |
216 .fi |
555 .nf |
217 .TP |
556 .B vmm adi example.net |
218 \fBaliasdomainswitch\fP (\fBads\fP) \fIaliasdomain\fP \fItargetdomain\fP |
557 Alias domain information |
219 If the target of the existing \fIaliasdomain\fP should be switched to another |
558 ------------------------ |
220 \fItargetdomain\fP use this subcommand. |
559 The alias domain example.net belongs to: |
221 .PP |
560 * example.com |
222 .nf |
561 .fi |
223 Example: |
562 .\" ------------------------------------ |
224 |
563 .SS aliasdomainswitch (ads) |
225 \fBvmm aliasdomainswitch example.name example.org\fP |
564 .BI "vmm aliasdomainswitch" " fqdn destination" |
226 .fi |
565 .PP |
227 .TP |
566 If the destination of the existing alias domain |
228 \fBaliasdomaindelete\fP (\fBadd\fP) \fIaliasdomain\fP |
567 .I fqdn |
229 Use this subcommand if the alias domain \fIaliasdomain\fP should be removed. |
568 should be switched to another |
230 .PP |
569 .I destination |
231 .nf |
570 use this subcommand. |
232 Example: |
571 .nf |
233 |
572 .PP |
234 \fBvmm aliasdomaindelete e.g.example.com\fP |
573 Example: |
235 .fi |
574 .PP |
236 .\" |
575 .B vmm aliasdomainswitch example.name example.org |
237 .SS ACCOUNT SUBCOMMANDS |
576 .fi |
238 .TP |
577 .\" ----------------------------------------------------------------------- |
239 \fBuseradd\fP (\fBua\fP) \fIaddress\fP [ \fIpassword\fP ] |
578 .SH ACCOUNT SUBCOMMANDS |
240 Use this subcommand to create a new email account for the given \fIaddress\fP. |
579 .SS useradd (ua) |
241 .br |
580 .B vmm useradd |
242 If the \fIpassword\fP is not provided, \fBvmm\fP will prompt for it |
581 .IR address " [" password ] |
243 interactively. |
582 .PP |
244 .PP |
583 Use this subcommand to create a new e\-mail account for the given |
245 .nf |
584 .IR address . |
246 Examples: |
585 .PP |
247 |
586 If the |
248 \fBvmm ua d.user@example.com 'A 5ecR3t P4s5\\/\\/0rd'\fP |
587 .I password |
249 \fBvmm ua e.user@example.com\fP |
588 is not provided, |
250 Enter new password: |
589 .B vmm |
251 Retype new password: |
590 will prompt for it interactively. |
252 .fi |
591 When no |
253 .TP |
592 .I password |
254 \fBuserinfo\fP (\fBui\fP) \fIaddress\fP [ \fIdetails\fP ] |
593 is provided and |
|
594 .I account.random_password |
|
595 is set to |
|
596 .BR true ", " vmm |
|
597 will generate a random password and print it to stdout after the account |
|
598 has been created. |
|
599 .PP |
|
600 Examples: |
|
601 .PP |
|
602 .nf |
|
603 .B vmm ua d.user@example.com \(dqA 5ecR3t P4s5\(rs/\(rs/0rd\(dq |
|
604 .B vmm useradd e.user@example.com |
|
605 Enter new password: |
|
606 Retype new password: |
|
607 .fi |
|
608 .\" ------------------------------------ |
|
609 .SS userdelete (ud) |
|
610 .BI "vmm userdelete" " address" |
|
611 .RB [ force ] |
|
612 .PP |
|
613 Use this subcommand to delete the account with the given |
|
614 .IR address . |
|
615 .PP |
|
616 If there are one or more aliases with an identical destination address, |
|
617 .B vmm |
|
618 will abort the requested operation and show an error message. |
|
619 To prevent this, specify the optional keyword |
|
620 .BR force . |
|
621 .\" ------------------------------------ |
|
622 .SS userinfo (ui) |
|
623 .B "vmm userinfo" |
|
624 .IR address " [" details ] |
|
625 .PP |
255 This subcommand displays some information about the account specified by |
626 This subcommand displays some information about the account specified by |
256 \fIaddress\fP. |
627 .IR address . |
257 .br |
628 .PP |
258 If the optional argument \fIdetails\fP is given some more information will be |
629 If the optional argument |
259 displayed. |
630 .I details |
260 .br |
631 is given some more information will be displayed. |
261 Possible values for \fIdetails\fP are: |
632 Possible values for |
|
633 .I details |
|
634 are: |
262 .RS |
635 .RS |
263 .PD 0 |
636 .TP 8 |
264 .TP |
|
265 .B aliases |
637 .B aliases |
266 to list all alias addresses with the destination \fIaddress\fP |
638 to list all alias addresses with the destination |
|
639 .I address |
267 .TP |
640 .TP |
268 .B du |
641 .B du |
269 to display the disk usage of users maildir |
642 to display the disk usage of the user's mail directory. |
|
643 In order to summarize the disk usage each time the this subcommand is |
|
644 executed automatically, set |
|
645 .I account.disk_usage |
|
646 in your |
|
647 .I vmm.cfg |
|
648 to |
|
649 .BR true . |
270 .TP |
650 .TP |
271 .B full |
651 .B full |
272 to list all information mentioned above |
652 to list all information mentioned above |
273 .PD |
|
274 .RE |
653 .RE |
275 .LP |
654 .PP |
276 .TP |
655 Example: |
277 \fBusername\fP (\fBun\fP) \fIaddress\fP \fI'Users Name'\fP |
656 .PP |
278 The user's real name can be set/updated with this subcommand. |
657 .nf |
279 .PP |
658 .B vmm ui d.user@example.com |
280 .nf |
659 Account information |
281 Example: |
660 ------------------- |
282 |
661 Address..........: d.user@example.com |
283 \fBvmm un d.user@example.com 'John Doe'\fP |
662 Name.............: None |
284 .fi |
663 UID..............: 79881 |
285 .TP |
664 GID..............: 70704 |
286 \fBuserpassword\fP (\fBup\fP) \fIaddress\fP [ \fIpassword\fP ] |
665 Home.............: /srv/mail/2/70704/79881 |
287 The \fIpassword\fP from an account can be updated with this subcommand. |
666 Mail_Location....: mdbox:~/mdbox |
|
667 Quota Storage....: [ 0.00%] 0/500.00 MiB |
|
668 Quota Messages...: [ 0.00%] 0/10,000 |
|
669 Transport........: lmtp:unix:private/dovecot-lmtp |
|
670 SMTP.............: disabled |
|
671 POP3.............: disabled |
|
672 IMAP.............: enabled |
|
673 SIEVE............: enabled |
|
674 .fi |
|
675 .\" ------------------------------------ |
|
676 .SS username (un) |
|
677 .BI "vmm username" " address" |
|
678 .RI [ name ] |
|
679 .PP |
|
680 The user's real |
|
681 .I name |
|
682 can be set/updated with this subcommand. |
|
683 .PP |
|
684 If no |
|
685 .I name |
|
686 is given, the value stored for the account is erased. |
|
687 .PP |
|
688 Example: |
|
689 .PP |
|
690 .nf |
|
691 .B vmm un d.user@example.com \(dqJohn Doe\(dq |
|
692 .fi |
|
693 .\" ------------------------------------ |
|
694 .SS userpassword (up) |
|
695 .BI "vmm userpassword" " address" |
|
696 .RI [ password ] |
|
697 .PP |
|
698 The password of an account can be updated with this subcommand. |
|
699 .PP |
|
700 If no |
|
701 .I password |
|
702 was provided, |
|
703 .B vmm |
|
704 will prompt for it interactively. |
|
705 .PP |
|
706 Example: |
|
707 .PP |
|
708 .nf |
|
709 .B vmm up d.user@example.com \(dqA |\(rs/|0r3 5ecur3 P4s5\(rs/\(rs/0rd?\(dq |
|
710 .fi |
|
711 .\" ------------------------------------ |
|
712 .SS usernote (uo) |
|
713 .BI "vmm usernote" " address" |
|
714 .RI [ note ] |
|
715 .PP |
|
716 With this subcommand, it is possible to attach a note to the specified |
|
717 account. Without an argument, an existing note is removed. |
|
718 .PP |
|
719 Example: |
|
720 .PP |
|
721 .nf |
|
722 .B vmm uo d.user@example.com Only needed until end of May 2012 |
|
723 .fi |
|
724 .\" ------------------------------------ |
|
725 .SS userquota (uq) |
|
726 .BI "vmm userquota" " address storage" |
|
727 .RI [ messages ] |
|
728 .PP |
|
729 This subcommand is used to set a new quota limit for the given account. |
|
730 .PP |
|
731 When the argument |
|
732 .I messages |
|
733 was omitted the default number of messages |
|
734 .B 0 |
|
735 (zero) will be applied. |
|
736 .PP |
|
737 Instead of |
|
738 .I transport |
|
739 pass 'domain' to remove the account\-specific override, causing the |
|
740 domain's value to be in effect. |
|
741 .PP |
|
742 Example: |
|
743 .PP |
|
744 .nf |
|
745 .B vmm userquota d.user@example.com 750m |
|
746 .fi |
|
747 .\" ------------------------------------ |
|
748 .SS userservices (us) |
|
749 .B vmm userservices |
|
750 .IR address " [" "service ..." ] |
|
751 .PP |
|
752 To grant a user access to the specified services, use this command. |
|
753 .PP |
|
754 All omitted services will be deactivated/unusable for the user with the |
|
755 given |
|
756 .IR address . |
|
757 .PP |
|
758 Instead of |
|
759 .I transport |
|
760 pass 'domain' to remove the account\-specific override, causing the |
|
761 domain's value to be in effect. |
|
762 .PP |
|
763 Example: |
|
764 .PP\ |
|
765 .nf |
|
766 .B vmm userservices d.user@example.com SMTP IMAP |
|
767 .\" ------------------------------------ |
|
768 .SS usertransport (ut) |
|
769 .BI "vmm usertransport" " address transport" |
|
770 .PP |
|
771 A different |
|
772 .I transport |
|
773 for an account can be specified with this subcommand. |
|
774 .PP |
|
775 Instead of |
|
776 .I transport |
|
777 pass 'domain' to remove the account\-specific override, causing the |
|
778 domain's value to be in effect. |
|
779 .PP |
|
780 Example: |
288 .br |
781 .br |
289 If the \fIpassword\fP is not provided, \fBvmm\fP will prompt for it |
782 Assumed you want to use Dovecot's |
290 interactively. |
783 .BR dsync (1) |
291 .PP |
784 to convert a user's mailbox from Maildir format to mdbox format, you |
292 .nf |
785 can tell Postfix to retry later. |
293 Example: |
786 .PP |
294 |
787 .nf |
295 \fBvmm up d.user@example.com 'A |\\/|0r3 5ecur3 P4s5\\/\\/0rd?'\fP |
788 .B vmm ut d.user@example.com \(dqretry:4.0.0 Mailbox being migrated\(dq |
296 .fi |
789 # convert the mailbox ... then set the transport to Dovecot's lmtp |
297 .TP |
790 .B vmm ut d.user@example.com lmtp:unix:private/dovecot\-lmtp |
298 \fBusertransport\fP (\fBut\fP) \fIaddress\fP \fItransport\fP |
791 .fi |
299 A different transport for an account can be specified with this subcommand. |
792 .\" ----------------------------------------------------------------------- |
300 .PP |
793 .SH ALIAS SUBCOMMANDS |
301 .nf |
794 .SS aliasadd (aa) |
302 Example: |
795 .BI "vmm aliasadd" " address destination ..." |
303 |
796 .PP |
304 \fBvmm ut d.user@example.com smtp:pc105.it.example.com\fP |
797 This subcommand is used to create a new alias |
305 .fi |
798 .I address |
306 .TP |
799 with one or more |
307 \fBuserdisable\fP (\fBu0\fP) \fIaddress\fP [ \fIservice\fP ] |
800 .I destination |
308 If a user shouldn't have access to one or all services you can restrict the |
801 addresses. |
309 access with this subcommand. |
802 .PP |
310 .br |
803 Within the destination address, the placeholders |
311 If neither a \fIservice\fP nor the keyword '\fIall\fP' is given all services |
804 .IR %n , |
312 (\fIsmtp\fP, \fIpop3\fP, \fIimap\fP, and \fIsieve\fP) will be disabled for the |
805 .IR %d , |
313 account with the specified \fIaddress\fP. Otherwise only the specified |
806 and |
314 \fIservice\fP will be restricted. |
807 .IR %= |
315 .PP |
808 will be replaced by the local part, the domain, or the email address with '@' |
316 .nf |
809 replaced by '=' respectively. In combination with alias domains, this enables |
317 Examples: |
810 domain\-specific destinations. |
318 |
811 .PP |
319 \fBvmm u0 b.user@example.com imap\fP |
812 Examples: |
320 \fBvmm userdisable c.user@example.com\fP |
813 .PP |
321 .fi |
814 .nf |
322 .TP |
815 .B vmm aliasadd john.doe@example.com d.user@example.com |
323 \fBuserenable\fP (\fBu1\fP) \fIaddress\fP [ \fIservice\fP ] |
816 .B vmm aa support@example.com d.user@example.com e.user@example.com |
324 To allow access to one or all restricted services use this subcommand. |
817 .B vmm aa postmaster@example.com postmaster+%d@example.org |
325 .br |
818 .fi |
326 If neither a \fIservice\fP nor the keyword '\fIall\fP' is given all services |
819 .\" ------------------------------------ |
327 (\fIsmtp\fP, \fIpop3\fP, \fIimap\fP, and \fIsieve\fP) will be enabled for the |
820 .SS aliasdelete (ad) |
328 account with the specified \fIaddress\fP. Otherwise only the specified |
821 .BI "vmm aliasdelete" " address" |
329 \fIservice\fP will be enabled. |
822 .RI [ destination ] |
330 .PP |
823 .PP |
331 .TP |
824 Use this subcommand to delete the alias with the given |
332 \fBuserdelete\fP (\fBud\fP) \fIaddress\fP [ \fIdelalias\fP ] |
825 .IR address . |
333 Use this subcommand to delete the account with the given \fIaddress\fP. |
826 .PP |
334 .br |
827 If the optional |
335 If there are one or more aliases with an identical destination address, |
828 .I destination |
336 \fBvmm\fP will abort the requested operation and show an error message. To |
829 address is given, only this |
337 prevent this, specify the optional keyword '\fIdelalias\fP'. |
830 destination will be removed from the alias. |
338 .\" |
831 .PP |
339 .SS ALIAS SUBCOMMANDS |
832 Example: |
340 .TP |
833 .PP |
341 \fBaliasadd\fP (\fBaa\fP) \fIalias\fP \fItarget\fP |
834 .nf |
342 This subcommand is used to create a new alias. |
835 .B vmm ad support@example.com d.user@example.com |
343 .PP |
836 .fi |
344 .nf |
837 .\" ------------------------------------ |
345 Examples: |
838 .SS aliasinfo (ai) |
346 |
839 .BI "vmm aliasinfo" " address" |
347 \fBvmm aliasadd john.doe@example.com d.user@example.com\fP |
840 .PP |
348 \fBvmm aa support@example.com d.user@example.com\fP |
841 Information about the alias with the given |
349 \fBvmm aa support@example.com e.user@example.com\fP |
842 .I address |
350 .fi |
843 can be displayed with this subcommand. |
351 .TP |
844 .PP |
352 \fBaliasinfo\fP (\fBai\fP) \fIalias\fP |
845 Example: |
353 Information about an alias can be displayed with this subcommand. |
846 .PP |
354 .PP |
847 .nf |
355 .nf |
848 .B vmm aliasinfo support@example.com |
356 Example: |
849 Alias information |
357 |
850 ----------------- |
358 \fBvmm aliasinfo support@example.com\fP |
851 Mail for support@example.com will be redirected to: |
359 Alias information |
852 * e.user@example.com |
360 ----------------- |
853 .fi |
361 Mail for support@example.com will be redirected to: |
854 .\" ----------------------------------------------------------------------- |
362 * d.user@example.com |
855 .SH RELOCATED SUBCOMMANDS |
363 * e.user@example.com |
856 .SS relocatedadd (ra) |
364 .fi |
857 .BI "vmm relocatedadd" " address newaddress" |
365 .TP |
858 .PP |
366 \fBaliasdelete\fP (\fBad\fP) \fIalias\fP [ \fItarget\fP ] |
|
367 Use this subcommand to delete the \fIalias\fP. |
|
368 .br |
|
369 If the optional destination address \fItarget\fP is given, only this |
|
370 destination will be removed from the \fIalias\fP. |
|
371 .PP |
|
372 .nf |
|
373 Example: |
|
374 |
|
375 \fBvmm ad support@example.com d.user@example.com\fP |
|
376 .fi |
|
377 .\" |
|
378 .SS RELOCATED SUBCOMMANDS |
|
379 .TP |
|
380 \fBrelocatedadd\fP (\fBra\fP) \fIold_address\fP \fInew_address\fP |
|
381 A new relocated user can be created with this subcommand. |
859 A new relocated user can be created with this subcommand. |
382 .br |
860 .PP |
383 \fIold_address\fP is the users ex-email address, for example b.user@example.com, |
861 .I address |
384 and \fInew_address\fP points to the new email address where the user can be |
862 is the user's ex\-email address, for example b.user@example.com, and |
385 reached. |
863 .I newaddress |
386 .PP |
864 points to the new email address where the user can be reached. |
387 .nf |
865 .PP |
388 Example: |
866 Example: |
389 |
867 .PP |
390 \fBvmm relocatedadd b.user@example.com b-user@company.tld\fP |
868 .nf |
391 .fi |
869 .B vmm relocatedadd b.user@example.com b\-user@company.tld |
392 .TP |
870 .fi |
393 \fBrelocatedinfo\fP (\fBri\fP) \fIold_address\fP |
871 .\" ------------------------------------ |
394 This subcommand shows the new address of the relocated user with the |
872 .SS relocatedinfo (ri) |
395 \fIold_address\fP. |
873 .BI "vmm relocatedinfo " address |
396 .PP |
874 .PP |
397 .nf |
875 This subcommand shows the new address of the relocated user with the given |
398 Example: |
876 .IR address . |
399 |
877 .PP |
400 \fBvmm relocatedinfo b.user@example.com\fP |
878 Example: |
401 Relocated information |
879 .PP |
402 --------------------- |
880 .nf |
403 User “b.user@example.com” has moved to “b-user@company.tld” |
881 .B vmm relocatedinfo b.user@example.com |
404 .fi |
882 Relocated information |
405 .TP |
883 --------------------- |
406 \fBrelocateddelete\fP (\fBrd\fP) \fIold_address\fP |
884 User `b.user@example.com' has moved to `b\-user@company.tld' |
407 Use this subcommand in order to delete the relocated user with the |
885 .fi |
408 \fIold_address\fP. |
886 .\" ------------------------------------ |
409 .PP |
887 .SS relocateddelete (rd) |
410 .nf |
888 .BI "vmm relocateddelete " address |
411 Example: |
889 .PP |
412 |
890 Use this subcommand in order to delete the relocated user with the given |
413 \fBvmm relocateddelete b.user@example.com\fP |
891 .IR address . |
414 .fi |
892 .PP |
415 .\" |
893 Example: |
|
894 .PP |
|
895 .nf |
|
896 .B vmm relocateddelete b.user@example.com |
|
897 .fi |
|
898 .\" ----------------------------------------------------------------------- |
|
899 .SH CATCH\-ALL SUBCOMMANDS |
|
900 .SS catchalladd (caa) |
|
901 .BI "vmm catchalladd" " fqdn destination ..." |
|
902 .PP |
|
903 This subcommand allows to specify destination addresses for a domain, which |
|
904 shall receive mail addressed to unknown local parts within that domain. |
|
905 Those catch\-all aliases hence \(dqcatch all\(dq mail to any address in the |
|
906 domain (unless a more specific alias, mailbox or relocated entry exists). |
|
907 .PP |
|
908 WARNING: Catch\-all addresses can cause mail server flooding because |
|
909 spammers like to deliver mail to all possible combinations of names, e.g. |
|
910 to all addresses between abba@example.org and zztop@example.org. |
|
911 .PP |
|
912 Example: |
|
913 .PP |
|
914 .nf |
|
915 .B vmm catchalladd example.com user@example.org |
|
916 .fi |
|
917 .\" ------------------------------------ |
|
918 .SS catchallinfo (cai) |
|
919 .BI "vmm catchallinfo " fqdn |
|
920 .PP |
|
921 This subcommand displays information about catch\-all aliases defined for |
|
922 a domain. |
|
923 .PP |
|
924 Example: |
|
925 .PP |
|
926 .nf |
|
927 .B vmm catchallinfo example.com |
|
928 Catch-all information |
|
929 --------------------- |
|
930 Mail to unknown localparts in domain example.com will be sent to: |
|
931 * user@example.org |
|
932 .fi |
|
933 .\" ------------------------------------ |
|
934 .SS catchalldelete (cad) |
|
935 .BI "vmm catchalldelete " fqdn |
|
936 .RI [ destination ] |
|
937 .PP |
|
938 With this subcommand, catch\-all aliases defined for a domain can be |
|
939 removed, either all of them, or a single one if specified explicitly. |
|
940 .PP |
|
941 Example: |
|
942 .PP |
|
943 .nf |
|
944 .B vmm catchalldelete example.com user@example.com |
|
945 .fi |
|
946 .\" ----------------------------------------------------------------------- |
416 .SH FILES |
947 .SH FILES |
417 /usr/local/etc/vmm.cfg |
948 .TP |
|
949 .I /root/vmm.cfg |
|
950 will be used when found. |
|
951 .TP |
|
952 .I /usr/local/etc/vmm.cfg |
|
953 will be used when the above file doesn't exist. |
|
954 .TP |
|
955 .I /etc/vmm.cfg |
|
956 will be used when none of the both above mentioned files exists. |
|
957 .\" ----------------------------------------------------------------------- |
418 .SH SEE ALSO |
958 .SH SEE ALSO |
419 vmm.cfg(5), configuration file for vmm |
959 .BR dsync (1), |
420 .SH AUTHOR |
960 .BR transport (5), |
421 \fBvmm\fP and its man pages were written by Pascal Volk |
961 .BR vmm.cfg (5) |
422 <\fIneverseen@users.sourceforge.net\fP> and are licensed under the terms of the |
962 .\" ----------------------------------------------------------------------- |
423 BSD License. |
963 .SH INTERNET RESOURCES |
|
964 .TP |
|
965 Wiki |
|
966 http://vmm.localdomain.org/ |
|
967 .TP |
|
968 Project site |
|
969 http://sf.net/projects/vmm/ |
|
970 .TP |
|
971 Bug tracker |
|
972 https://bitbucket.org/pvo/vmm/issues |
|
973 .\" ----------------------------------------------------------------------- |
|
974 .SH COPYING |
|
975 vmm and its manual pages were written by Pascal Volk <user+vmm AT |
|
976 localhost.localdomain.org> and are licensed under the terms of the BSD |
|
977 License. |