1 .TH "VMM" "1" "2012-09-27" "vmm 0.6" "vmm" |
|
2 .SH NAME |
|
3 vmm \- command line tool to manage email domains/accounts/aliases |
|
4 .\" ----------------------------------------------------------------------- |
|
5 .SH SYNOPSIS |
|
6 .B vmm |
|
7 .IR subcommand " [" "argument ..." ] |
|
8 .\" ----------------------------------------------------------------------- |
|
9 .SH DESCRIPTION |
|
10 .B vmm |
|
11 (a virtual mail manager) is the easy to use command line tool for |
|
12 administrators and postmasters to manage (alias) domains, accounts, aliases |
|
13 and relocated users. |
|
14 It allows you to simply and quickly administer your mail server. |
|
15 .br |
|
16 It's designed for Dovecot and Postfix with a PostgreSQL backend. |
|
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 |
|
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 listaddresses (ll) |
|
259 .B vmm listaddresses |
|
260 .RI [ pattern ] |
|
261 .PP |
|
262 This command lists all defined addresses. Addresses belonging to |
|
263 alias-domains are prefixed with a '-', addresses of regular domains with |
|
264 a '+'. Additionally, the letters 'u', 'a', and 'r' indicate the type of |
|
265 each address: user, alias and relocated respectively. |
|
266 The output can be limited with an optional |
|
267 .IR pattern . |
|
268 .PP |
|
269 To perform a wild card search, the % character can be used at the start |
|
270 and/or the end of the |
|
271 .IR pattern . |
|
272 .PP |
|
273 Example: |
|
274 .PP |
|
275 .nf |
|
276 .B vmm listaddresses example.com |
|
277 .B vmm listaddresses %master@% |
|
278 .\" ------------------------------------ |
|
279 .SS listaliases (la) |
|
280 .B vmm listaliases |
|
281 .RI [ pattern ] |
|
282 .PP |
|
283 This command lists all defined aliases. Aliases belonging to |
|
284 alias-domains are prefixed with a '-', addresses of regular domains with |
|
285 a '+'. |
|
286 The output can be limited with an optional |
|
287 .IR pattern . |
|
288 .PP |
|
289 To perform a wild card search, the % character can be used at the start |
|
290 and/or the end of the |
|
291 .IR pattern . |
|
292 .PP |
|
293 Example: |
|
294 .PP |
|
295 .nf |
|
296 .B vmm listaliases example.com |
|
297 .B vmm listaliases %master@% |
|
298 .\" ------------------------------------ |
|
299 .SS listrelocated (lr) |
|
300 .B vmm listrelocated |
|
301 .RI [ pattern ] |
|
302 .PP |
|
303 This command lists all defined relocated addresses. Relocated entries |
|
304 belonging to alias-domains are prefixed with a '-', addresses of regular |
|
305 domains with |
|
306 a '+'. |
|
307 The output can be limited with an optional |
|
308 .IR pattern . |
|
309 .PP |
|
310 To perform a wild card search, the % character can be used at the start |
|
311 and/or the end of the |
|
312 .IR pattern . |
|
313 .PP |
|
314 Example: |
|
315 .PP |
|
316 .nf |
|
317 .B vmm listrelocated example.com |
|
318 .B vmm listrelocated %master@% |
|
319 .\" ------------------------------------ |
|
320 .SS listusers (lu) |
|
321 .B vmm listusers |
|
322 .RI [ pattern ] |
|
323 .PP |
|
324 This command lists all user accounts. User accounts belonging to |
|
325 alias-domains are prefixed with a '-', addresses of regular |
|
326 domains with |
|
327 a '+'. |
|
328 The output can be limited with an optional |
|
329 .IR pattern . |
|
330 .PP |
|
331 To perform a wild card search, the % character can be used at the start |
|
332 and/or the end of the |
|
333 .IR pattern . |
|
334 .PP |
|
335 Example: |
|
336 .PP |
|
337 .nf |
|
338 .B vmm listusers example.com |
|
339 .B vmm listusers %master@% |
|
340 .\" ------------------------------------ |
|
341 .SS listpwschemes (lp) |
|
342 .B vmm listpwschemes |
|
343 .PP |
|
344 This subcommand lists all password schemes which could be used in the |
|
345 .I vmm.cfg |
|
346 as value of the |
|
347 .I misc.password_scheme |
|
348 option. |
|
349 The output varies, depending on the used Dovecot version and the system's |
|
350 libc. |
|
351 .br |
|
352 When your Dovecot installation isn't too old, you will see additionally a |
|
353 few usable encoding suffixes. |
|
354 One of them can be appended to the password scheme. |
|
355 .PP |
|
356 Example: |
|
357 .PP |
|
358 .nf |
|
359 .B vmm listpwschemes |
|
360 Usable password schemes |
|
361 ----------------------- |
|
362 CRYPT SHA512-CRYPT LDAP-MD5 DIGEST-MD5 SHA256 SHA512 SSHA512 |
|
363 SKEY SSHA NTLM RPA MD5-CRYPT HMAC-MD5 SHA1 PLAIN SHA CRAM-MD5 |
|
364 SSHA256 MD5 LANMAN CLEARTEXT PLAIN-MD5 PLAIN-MD4 OTP SMD5 |
|
365 SHA256-CRYPT |
|
366 |
|
367 Usable encoding suffixes |
|
368 ------------------------ |
|
369 .B64 .BASE64 .HEX |
|
370 .fi |
|
371 .\" ------------------------------------ |
|
372 .SS version (v) |
|
373 .B vmm version |
|
374 .PP |
|
375 Prints |
|
376 .BR vmm 's |
|
377 version and copyright information to stdout. |
|
378 After this |
|
379 .B vmm |
|
380 exits. |
|
381 .\" ----------------------------------------------------------------------- |
|
382 .SH DOMAIN SUBCOMMANDS |
|
383 .SS domainadd (da) |
|
384 .B vmm domainadd |
|
385 .IR fqdn " [" transport ] |
|
386 .PP |
|
387 Adds the new domain into the database and creates the domain directory. |
|
388 .PP |
|
389 If the optional argument |
|
390 .I transport |
|
391 is given, it will override the default transport |
|
392 .RI ( domain.transport ") from " vmm.cfg . |
|
393 The specified |
|
394 .I transport |
|
395 will be the default transport for all new accounts in this domain. |
|
396 .PP |
|
397 Configuration\-related behavior: |
|
398 .RS |
|
399 .TP |
|
400 .I domain.auto_postmaster |
|
401 When that option is set to |
|
402 .BR true " (default) " vmm |
|
403 will automatically create the postmaster account for the new domain and |
|
404 prompt for |
|
405 .BI postmaster@ fqdn\c |
|
406 \(aqs password. |
|
407 .TP |
|
408 .I account.random_password |
|
409 When the value of that option is also set to |
|
410 .BR true ", " vmm |
|
411 will automatically create the postmaster account for the new domain and |
|
412 print the generated postmaster password to stdout. |
|
413 .RE |
|
414 .PP |
|
415 Examples: |
|
416 .PP |
|
417 .nf |
|
418 .B vmm domainadd support.example.com smtp:[mx1.example.com]:2025 |
|
419 Creating account for postmaster@support.example.com |
|
420 Enter new password: |
|
421 Retype new password: |
|
422 .B vmm cs account.random_password true |
|
423 .B vmm domainadd sales.example.com |
|
424 Creating account for postmaster@sales.example.com |
|
425 Generated password: pLJUQ6Xg_z |
|
426 .fi |
|
427 .\" ------------------------------------ |
|
428 .SS domaindelete (dd) |
|
429 .BI "vmm domaindelete " fqdn |
|
430 .RB [ force ] |
|
431 .PP |
|
432 This subcommand deletes the domain specified by |
|
433 .IR fqdn . |
|
434 .PP |
|
435 If there are accounts, aliases and/or relocated users assigned to the given |
|
436 domain, |
|
437 .B vmm |
|
438 will abort the requested operation and show an error message. |
|
439 If you know, what you are doing, you can specify the optional keyword |
|
440 .BR force . |
|
441 .PP |
|
442 If you really always know what you are doing, edit your |
|
443 .I vmm.cfg |
|
444 and set the option |
|
445 .I domain.force_deletion |
|
446 to |
|
447 .BR true . |
|
448 .\" ------------------------------------ |
|
449 .SS domaininfo (di) |
|
450 .B vmm domaininfo |
|
451 .IR fqdn \ [ details ] |
|
452 .PP |
|
453 This subcommand shows some information about the given domain. |
|
454 .PP |
|
455 For a more detailed information about the domain the optional argument |
|
456 .I details |
|
457 can be specified. |
|
458 A possible |
|
459 .I details |
|
460 value can be one of the following six keywords: |
|
461 .RS |
|
462 .TP 14 |
|
463 .B accounts |
|
464 to list the e\-mail addresses of all existing user accounts |
|
465 .TP |
|
466 .B aliasdomains |
|
467 to list all assigned alias domain names |
|
468 .TP |
|
469 .B aliases |
|
470 to list all available alias e\-mail addresses |
|
471 .TP |
|
472 .B catchall |
|
473 to list all catch\-all destinations |
|
474 .TP |
|
475 .B relocated |
|
476 to list the e\-mail addresses of all relocated users |
|
477 .TP |
|
478 .B full |
|
479 to list all information mentioned above |
|
480 .RE |
|
481 .PP |
|
482 Example: |
|
483 .PP |
|
484 .nf |
|
485 .B vmm domaininfo sales.example.com |
|
486 Domain information |
|
487 ------------------ |
|
488 Domain Name......: sales.example.com |
|
489 GID..............: 70708 |
|
490 Domain Directory.: /srv/mail/c/70708 |
|
491 Quota Limit/User.: Storage: 500.00 MiB; Messages: 10,000 |
|
492 Active Services..: IMAP SIEVE |
|
493 Transport........: lmtp:unix:private/dovecot-lmtp |
|
494 Alias Domains....: 0 |
|
495 Accounts.........: 1 |
|
496 Aliases..........: 0 |
|
497 Relocated........: 0 |
|
498 Catch-All Dests..: 1 |
|
499 .fi |
|
500 .\" ------------------------------------ |
|
501 .SS domainquota (dq) |
|
502 .B vmm domainquota |
|
503 .IR "fqdn storage" " [" messages ] |
|
504 .RB [ force ] |
|
505 .PP |
|
506 This subcommand is used to configure a new quota limit for the accounts of |
|
507 the domain - not for the domain itself. |
|
508 .PP |
|
509 The default quota limit for accounts is defined in the |
|
510 .IR vmm.cfg " (" domain.quota_bytes " and " domain.quota_messages ). |
|
511 .PP |
|
512 The new quota limit will affect only those accounts for which the limit |
|
513 has not been overridden. If you want to restore the default to all accounts, |
|
514 you may pass the keyword |
|
515 .BR force . |
|
516 .br |
|
517 When the argument |
|
518 .I messages |
|
519 was omitted the default number of messages |
|
520 .B 0 |
|
521 (zero) will be applied. |
|
522 .PP |
|
523 Example: |
|
524 .PP |
|
525 .nf |
|
526 .B vmm domainquota example.com 1g force |
|
527 .fi |
|
528 .\" ------------------------------------ |
|
529 .SS domainservices (ds) |
|
530 .B vmm domainservices |
|
531 .IR fqdn " [" "service ..." ] |
|
532 .RB [ force ] |
|
533 .PP |
|
534 To define which services could be used by the users of the domain \(em with |
|
535 the given |
|
536 .I fqdn |
|
537 \(em use this subcommand. |
|
538 .PP |
|
539 Each specified |
|
540 .I service |
|
541 will be enabled/usable. |
|
542 All other services will be deactivated/unusable. |
|
543 Possible service names are: |
|
544 .BR imap ", " pop3 ", " sieve " and " smtp . |
|
545 .br |
|
546 The new service set will affect only those accounts for which the set has not |
|
547 been overridden. If you want to restore the default to all accounts, you may |
|
548 pass the keyword |
|
549 .BR force . |
|
550 .\" ------------------------------------ |
|
551 .SS domaintransport (dt) |
|
552 .BI "vmm domaintransport" " fqdn transport" |
|
553 .RB [ force ] |
|
554 .PP |
|
555 A new transport for the indicated domain can be set with this subcommand. |
|
556 .PP |
|
557 The new transport will affect only those accounts for which the transport has |
|
558 not been overridden. If you want to restore the default to all accounts, you |
|
559 may pass the keyword |
|
560 .BR force . |
|
561 .PP |
|
562 Example: |
|
563 .PP |
|
564 .nf |
|
565 .B vmm domaintransport support.example.com dovecot: |
|
566 .fi |
|
567 .\" ------------------------------------ |
|
568 .SS domainnote (do) |
|
569 .BI "vmm domainnote" " fqdn" |
|
570 .RI [ note ] |
|
571 .PP |
|
572 With this subcommand, it is possible to attach a note to the specified |
|
573 domain. Without an argument, an existing note is removed. |
|
574 .PP |
|
575 Example: |
|
576 .PP |
|
577 .nf |
|
578 .B vmm do example.com Belongs to Robert |
|
579 .fi |
|
580 .\" ----------------------------------------------------------------------- |
|
581 .SH ALIAS DOMAIN SUBCOMMANDS |
|
582 An alias domain is an alias for a domain that was previously added with the |
|
583 subcommand |
|
584 .BR domainadd . |
|
585 All accounts, aliases and relocated users from the domain will be also |
|
586 available in the alias domain. |
|
587 .br |
|
588 In the following is to be assumed that example.net is an alias for |
|
589 example.com. |
|
590 .PP |
|
591 Postfix will not accept erroneously e\-mails for unknown.user@example.net |
|
592 and bounce them back later to the mostly faked sender. |
|
593 Postfix will immediately reject all e\-mails addressed to nonexistent |
|
594 users. |
|
595 .br |
|
596 This behavior is ensured as long as you use the recommended database |
|
597 queries in your |
|
598 .I $config_directory/pgsql\-*.cf |
|
599 configuration files. |
|
600 .\" ------------------------------------ |
|
601 .SS aliasdomainadd (ada) |
|
602 .BI "vmm aliasdomainadd" " fqdn destination" |
|
603 .PP |
|
604 This subcommand adds the new alias domain |
|
605 .RI ( fqdn ) |
|
606 to the |
|
607 .I destination |
|
608 domain that should be aliased. |
|
609 .PP |
|
610 Example: |
|
611 .PP |
|
612 .nf |
|
613 .B vmm aliasdomainadd example.net example.com |
|
614 .fi |
|
615 .\" ------------------------------------ |
|
616 .SS aliasdomaindelete (add) |
|
617 .BI "vmm aliasdomaindelete" " fqdn" |
|
618 .PP |
|
619 Use this subcommand if the alias domain |
|
620 .I fqdn |
|
621 should be removed. |
|
622 .PP |
|
623 Example: |
|
624 .PP |
|
625 .nf |
|
626 .B vmm aliasdomaindelete e.g.example.com |
|
627 .fi |
|
628 .\" ------------------------------------ |
|
629 .SS aliasdomaininfo (adi) |
|
630 .BI "vmm aliasdomaininfo" " fqdn" |
|
631 .PP |
|
632 This subcommand shows to which domain the alias domain |
|
633 .I fqdn |
|
634 is assigned to. |
|
635 .PP |
|
636 Example: |
|
637 .PP |
|
638 .nf |
|
639 .B vmm adi example.net |
|
640 Alias domain information |
|
641 ------------------------ |
|
642 The alias domain example.net belongs to: |
|
643 * example.com |
|
644 .fi |
|
645 .\" ------------------------------------ |
|
646 .SS aliasdomainswitch (ads) |
|
647 .BI "vmm aliasdomainswitch" " fqdn destination" |
|
648 .PP |
|
649 If the destination of the existing alias domain |
|
650 .I fqdn |
|
651 should be switched to another |
|
652 .I destination |
|
653 use this subcommand. |
|
654 .nf |
|
655 .PP |
|
656 Example: |
|
657 .PP |
|
658 .B vmm aliasdomainswitch example.name example.org |
|
659 .fi |
|
660 .\" ----------------------------------------------------------------------- |
|
661 .SH ACCOUNT SUBCOMMANDS |
|
662 .SS useradd (ua) |
|
663 .B vmm useradd |
|
664 .IR address " [" password ] |
|
665 .PP |
|
666 Use this subcommand to create a new e\-mail account for the given |
|
667 .IR address . |
|
668 .PP |
|
669 If the |
|
670 .I password |
|
671 is not provided, |
|
672 .B vmm |
|
673 will prompt for it interactively. |
|
674 When no |
|
675 .I password |
|
676 is provided and |
|
677 .I account.random_password |
|
678 is set to |
|
679 .BR true ", " vmm |
|
680 will generate a random password and print it to stdout after the account |
|
681 has been created. |
|
682 .PP |
|
683 Examples: |
|
684 .PP |
|
685 .nf |
|
686 .B vmm ua d.user@example.com \(dqA 5ecR3t P4s5\(rs/\(rs/0rd\(dq |
|
687 .B vmm useradd e.user@example.com |
|
688 Enter new password: |
|
689 Retype new password: |
|
690 .fi |
|
691 .\" ------------------------------------ |
|
692 .SS userdelete (ud) |
|
693 .BI "vmm userdelete" " address" |
|
694 .RB [ force ] |
|
695 .PP |
|
696 Use this subcommand to delete the account with the given |
|
697 .IR address . |
|
698 .PP |
|
699 If there are one or more aliases with an identical destination address, |
|
700 .B vmm |
|
701 will abort the requested operation and show an error message. |
|
702 To prevent this, specify the optional keyword |
|
703 .BR force . |
|
704 .\" ------------------------------------ |
|
705 .SS userinfo (ui) |
|
706 .B "vmm userinfo" |
|
707 .IR address " [" details ] |
|
708 .PP |
|
709 This subcommand displays some information about the account specified by |
|
710 .IR address . |
|
711 .PP |
|
712 If the optional argument |
|
713 .I details |
|
714 is given some more information will be displayed. |
|
715 Possible values for |
|
716 .I details |
|
717 are: |
|
718 .RS |
|
719 .TP 8 |
|
720 .B aliases |
|
721 to list all alias addresses with the destination |
|
722 .I address |
|
723 .TP |
|
724 .B du |
|
725 to display the disk usage of the user's mail directory. |
|
726 In order to summarize the disk usage each time this subcommand is |
|
727 executed automatically, set |
|
728 .I account.disk_usage |
|
729 in your |
|
730 .I vmm.cfg |
|
731 to |
|
732 .BR true . |
|
733 .TP |
|
734 .B full |
|
735 to list all information mentioned above |
|
736 .RE |
|
737 .PP |
|
738 Example: |
|
739 .PP |
|
740 .nf |
|
741 .B vmm ui d.user@example.com |
|
742 Account information |
|
743 ------------------- |
|
744 Address..........: d.user@example.com |
|
745 Name.............: None |
|
746 UID..............: 79881 |
|
747 GID..............: 70704 |
|
748 Home.............: /srv/mail/2/70704/79881 |
|
749 Mail_Location....: mdbox:~/mdbox |
|
750 Quota Storage....: [ 0.00%] 0/500.00 MiB |
|
751 Quota Messages...: [ 0.00%] 0/10,000 |
|
752 Transport........: lmtp:unix:private/dovecot-lmtp |
|
753 SMTP.............: disabled |
|
754 POP3.............: disabled |
|
755 IMAP.............: enabled |
|
756 SIEVE............: enabled |
|
757 .fi |
|
758 .\" ------------------------------------ |
|
759 .SS username (un) |
|
760 .BI "vmm username" " address" |
|
761 .RI [ name ] |
|
762 .PP |
|
763 The user's real |
|
764 .I name |
|
765 can be set/updated with this subcommand. |
|
766 .PP |
|
767 If no |
|
768 .I name |
|
769 is given, the value stored for the account is erased. |
|
770 .PP |
|
771 Example: |
|
772 .PP |
|
773 .nf |
|
774 .B vmm un d.user@example.com \(dqJohn Doe\(dq |
|
775 .fi |
|
776 .\" ------------------------------------ |
|
777 .SS userpassword (up) |
|
778 .BI "vmm userpassword" " address" |
|
779 .RI [ password ] |
|
780 .PP |
|
781 The password of an account can be updated with this subcommand. |
|
782 .PP |
|
783 If no |
|
784 .I password |
|
785 was provided, |
|
786 .B vmm |
|
787 will prompt for it interactively. |
|
788 .PP |
|
789 Example: |
|
790 .PP |
|
791 .nf |
|
792 .B vmm up d.user@example.com \(dqA |\(rs/|0r3 5ecur3 P4s5\(rs/\(rs/0rd?\(dq |
|
793 .fi |
|
794 .\" ------------------------------------ |
|
795 .SS usernote (uo) |
|
796 .BI "vmm usernote" " address" |
|
797 .RI [ note ] |
|
798 .PP |
|
799 With this subcommand, it is possible to attach a note to the specified |
|
800 account. Without an argument, an existing note is removed. |
|
801 .PP |
|
802 Example: |
|
803 .PP |
|
804 .nf |
|
805 .B vmm uo d.user@example.com Only needed until end of May 2012 |
|
806 .fi |
|
807 .\" ------------------------------------ |
|
808 .SS userquota (uq) |
|
809 .BI "vmm userquota" " address storage" |
|
810 .RI [ messages ] |
|
811 .PP |
|
812 This subcommand is used to set a new quota limit for the given account. |
|
813 .PP |
|
814 When the argument |
|
815 .I messages |
|
816 was omitted the default number of messages |
|
817 .B 0 |
|
818 (zero) will be applied. |
|
819 .PP |
|
820 Instead of |
|
821 .I storage |
|
822 pass the keyword |
|
823 .B domain |
|
824 to remove the account\-specific override, causing the domain's value to be |
|
825 in effect. |
|
826 .PP |
|
827 Example: |
|
828 .PP |
|
829 .nf |
|
830 .B vmm userquota d.user@example.com 750m |
|
831 .fi |
|
832 .\" ------------------------------------ |
|
833 .SS userservices (us) |
|
834 .B vmm userservices |
|
835 .IR address " [" "service ..." ] |
|
836 .PP |
|
837 To grant a user access to the specified services, use this command. |
|
838 .PP |
|
839 All omitted services will be deactivated/unusable for the user with the |
|
840 given |
|
841 .IR address . |
|
842 .PP |
|
843 Instead of |
|
844 .I service |
|
845 pass 'domain' to remove the account\-specific override, causing the |
|
846 domain's value to be in effect. |
|
847 .PP |
|
848 Example: |
|
849 .PP |
|
850 .nf |
|
851 .B vmm userservices d.user@example.com SMTP IMAP |
|
852 .\" ------------------------------------ |
|
853 .SS usertransport (ut) |
|
854 .BI "vmm usertransport" " address transport" |
|
855 .PP |
|
856 A different |
|
857 .I transport |
|
858 for an account can be specified with this subcommand. |
|
859 .PP |
|
860 Instead of |
|
861 .I transport |
|
862 pass 'domain' to remove the account\-specific override, causing the |
|
863 domain's value to be in effect. |
|
864 .PP |
|
865 Example: |
|
866 .br |
|
867 Assumed you want to use Dovecot's |
|
868 .BR dsync (1) |
|
869 to convert a user's mailbox from Maildir format to mdbox format, you |
|
870 can tell Postfix to retry later. |
|
871 .PP |
|
872 .nf |
|
873 .B vmm ut d.user@example.com \(dqretry:4.0.0 Mailbox being migrated\(dq |
|
874 # convert the mailbox ... then set the transport to Dovecot's lmtp |
|
875 .B vmm ut d.user@example.com lmtp:unix:private/dovecot\-lmtp |
|
876 .fi |
|
877 .\" ----------------------------------------------------------------------- |
|
878 .SH ALIAS SUBCOMMANDS |
|
879 .SS aliasadd (aa) |
|
880 .BI "vmm aliasadd" " address destination ..." |
|
881 .PP |
|
882 This subcommand is used to create a new alias |
|
883 .I address |
|
884 with one or more |
|
885 .I destination |
|
886 addresses. |
|
887 .PP |
|
888 Within the destination address, the placeholders |
|
889 .IR %n , |
|
890 .IR %d , |
|
891 and |
|
892 .IR %= |
|
893 will be replaced by the local part, the domain, or the email address with '@' |
|
894 replaced by '=' respectively. In combination with alias domains, this enables |
|
895 domain\-specific destinations. |
|
896 .PP |
|
897 Examples: |
|
898 .PP |
|
899 .nf |
|
900 .B vmm aliasadd john.doe@example.com d.user@example.com |
|
901 .B vmm aa support@example.com d.user@example.com e.user@example.com |
|
902 .B vmm aa postmaster@example.com postmaster+%d@example.org |
|
903 .fi |
|
904 .\" ------------------------------------ |
|
905 .SS aliasdelete (ad) |
|
906 .BI "vmm aliasdelete" " address" |
|
907 .RI [ destination " ...]" |
|
908 .PP |
|
909 This subcommand is used to delete one or multiple |
|
910 .IR destination s |
|
911 from the alias with the given |
|
912 .IR address . |
|
913 .PP |
|
914 When no |
|
915 .I destination |
|
916 address was specified the alias with all its destinations will be deleted. |
|
917 .PP |
|
918 Example: |
|
919 .PP |
|
920 .nf |
|
921 .B vmm ad support@example.com d.user@example.com |
|
922 .fi |
|
923 .\" ------------------------------------ |
|
924 .SS aliasinfo (ai) |
|
925 .BI "vmm aliasinfo" " address" |
|
926 .PP |
|
927 Information about the alias with the given |
|
928 .I address |
|
929 can be displayed with this subcommand. |
|
930 .PP |
|
931 Example: |
|
932 .PP |
|
933 .nf |
|
934 .B vmm aliasinfo support@example.com |
|
935 Alias information |
|
936 ----------------- |
|
937 Mail for support@example.com will be redirected to: |
|
938 * e.user@example.com |
|
939 .fi |
|
940 .\" ----------------------------------------------------------------------- |
|
941 .SH RELOCATED SUBCOMMANDS |
|
942 .SS relocatedadd (ra) |
|
943 .BI "vmm relocatedadd" " address newaddress" |
|
944 .PP |
|
945 A new relocated user can be created with this subcommand. |
|
946 .PP |
|
947 .I address |
|
948 is the user's ex\-email address, for example b.user@example.com, and |
|
949 .I newaddress |
|
950 points to the new email address where the user can be reached. |
|
951 .PP |
|
952 Example: |
|
953 .PP |
|
954 .nf |
|
955 .B vmm relocatedadd b.user@example.com b\-user@company.tld |
|
956 .fi |
|
957 .\" ------------------------------------ |
|
958 .SS relocatedinfo (ri) |
|
959 .BI "vmm relocatedinfo " address |
|
960 .PP |
|
961 This subcommand shows the new address of the relocated user with the given |
|
962 .IR address . |
|
963 .PP |
|
964 Example: |
|
965 .PP |
|
966 .nf |
|
967 .B vmm relocatedinfo b.user@example.com |
|
968 Relocated information |
|
969 --------------------- |
|
970 User `b.user@example.com' has moved to `b\-user@company.tld' |
|
971 .fi |
|
972 .\" ------------------------------------ |
|
973 .SS relocateddelete (rd) |
|
974 .BI "vmm relocateddelete " address |
|
975 .PP |
|
976 Use this subcommand in order to delete the relocated user with the given |
|
977 .IR address . |
|
978 .PP |
|
979 Example: |
|
980 .PP |
|
981 .nf |
|
982 .B vmm relocateddelete b.user@example.com |
|
983 .fi |
|
984 .\" ----------------------------------------------------------------------- |
|
985 .SH CATCH\-ALL SUBCOMMANDS |
|
986 .SS catchalladd (caa) |
|
987 .BI "vmm catchalladd" " fqdn destination ..." |
|
988 .PP |
|
989 This subcommand allows to specify destination addresses for a domain, which |
|
990 shall receive mail addressed to unknown local parts within that domain. |
|
991 Those catch\-all aliases hence \(dqcatch all\(dq mail to any address in the |
|
992 domain (unless a more specific alias, mailbox or relocated entry exists). |
|
993 .PP |
|
994 WARNING: Catch\-all addresses can cause mail server flooding because |
|
995 spammers like to deliver mail to all possible combinations of names, e.g. |
|
996 to all addresses between abba@example.org and zztop@example.org. |
|
997 .PP |
|
998 Example: |
|
999 .PP |
|
1000 .nf |
|
1001 .B vmm catchalladd example.com user@example.org |
|
1002 .fi |
|
1003 .\" ------------------------------------ |
|
1004 .SS catchallinfo (cai) |
|
1005 .BI "vmm catchallinfo " fqdn |
|
1006 .PP |
|
1007 This subcommand displays information about catch\-all aliases defined for |
|
1008 a domain. |
|
1009 .PP |
|
1010 Example: |
|
1011 .PP |
|
1012 .nf |
|
1013 .B vmm catchallinfo example.com |
|
1014 Catch-all information |
|
1015 --------------------- |
|
1016 Mail to unknown localparts in domain example.com will be sent to: |
|
1017 * user@example.org |
|
1018 .fi |
|
1019 .\" ------------------------------------ |
|
1020 .SS catchalldelete (cad) |
|
1021 .BI "vmm catchalldelete " fqdn |
|
1022 .RI [ destination " ...]" |
|
1023 .PP |
|
1024 With this subcommand, catch\-all aliases defined for a domain can be |
|
1025 removed, either all of them, or those |
|
1026 .IR destination s |
|
1027 which were specified explicitly. |
|
1028 .PP |
|
1029 Example: |
|
1030 .PP |
|
1031 .nf |
|
1032 .B vmm catchalldelete example.com user@example.com |
|
1033 .fi |
|
1034 .\" ----------------------------------------------------------------------- |
|
1035 .SH FILES |
|
1036 .TP |
|
1037 .I /root/vmm.cfg |
|
1038 will be used when found. |
|
1039 .TP |
|
1040 .I /usr/local/etc/vmm.cfg |
|
1041 will be used when the above file doesn't exist. |
|
1042 .TP |
|
1043 .I /etc/vmm.cfg |
|
1044 will be used when none of the both above mentioned files exists. |
|
1045 .\" ----------------------------------------------------------------------- |
|
1046 .SH SEE ALSO |
|
1047 .BR dsync (1), |
|
1048 .BR transport (5), |
|
1049 .BR vmm.cfg (5) |
|
1050 .\" ----------------------------------------------------------------------- |
|
1051 .SH INTERNET RESOURCES |
|
1052 .TP |
|
1053 Homepage |
|
1054 http://vmm.localdomain.org/ |
|
1055 .TP |
|
1056 Project site |
|
1057 http://sf.net/projects/vmm/ |
|
1058 .TP |
|
1059 Bug tracker |
|
1060 https://bitbucket.org/pvo/vmm/issues |
|
1061 .\" ----------------------------------------------------------------------- |
|
1062 .SH COPYING |
|
1063 vmm and its manual pages were written by Pascal Volk <user+vmm AT |
|
1064 localhost.localdomain.org> and are licensed under the terms of the BSD |
|
1065 License. |
|