vmm.cfg(5)


NAME

   vmm.cfg - configuration file for vmm

SYNOPSIS

   vmm.cfg

DESCRIPTION

   vmm(1) reads its configuration data from vmm.cfg.

   The  configuration  file  is  split  into multiple sections.  A section
   starts with the section name, enclosed in square brackets `[' and  `]',
   followed by `option = value' pairs.
   Whitespace  around the `=' and at the end of a value is ignored.  Empty
   lines and lines starting with `#' or `;' will be ignored.

   Each value uses one of the following data types:

   Boolean to  indicate  if  something  is  enabled/activated  (true)   or
           disabled/deactivated (false).
           Accepted values for true are: 1, yes, true and on.
           Accepted values for false are: 0, no, false and off.

   Int     an  integer  number,  written  without  a fractional or decimal
           component.
           For example 1, 50 or 321 are integers.

   String  a sequence of characters and/or numbers.
           For example `word', `hello  world'  or  `/usr/bin/strings'  are
           strings.

   Most  options  have  a  default  value,  shown in parentheses after the
   option's name.  In order to use a option's default setting, comment out
   the  line,  either  with  a  #  or  ; or simply remove the setting from
   vmm.cfg.

   A minimal vmm.cfg would be:

   [database]
   user = me
   pass = xxxxxxxx

   [misc]
   dovecot_version = 1.2.16

SEARCH ORDER

   By  default  vmm(1)  looks  for  the  vmm.cfg  file  in  the  following
   directories in the order listed:
          /root
          /usr/local/etc
          /etc

   The first configuration file found will be used.

SECTION ACCOUNT

   The  options  in  the  section account are used to specify user account
   related settings.

   account.delete_directory
   delete_directory (default: false) : Boolean

   Determines  the  behavior  of  vmm(1)  when  an  account   is   deleted
   (userdelete).   If this option is set to true the user's home directory
   will be deleted recursively.

   account.directory_mode
   directory_mode (default: 448) : Int

   Access mode for a user's home directory  and  all  directories  inside.
   The value has to be specified in decimal (base 10) notation.
   For example: `drwx------'  octal 0700  decimal 448

   account.disk_usage
   disk_usage (default: false) : Boolean

   Determines  whether  the  disk  usage of a user's mail directory always
   should be summarized, using  du(1),  and  displayed  with  the  account
   information (userinfo).

   This  could  be  slow on large Maildirs.  When you have enabled quotas,
   vmm's userinfo subcommand will also display the current quota usage  of
   the  account.  You may also use userinfo's optional details-argument du
   or full, in order to display the current disk  usage  of  an  account's
   mail directory.

   account.password_length
   password_length (default: 8) : Int

   Determines  how  many  characters  and/or  numbers  should  be used for
   randomly generated passwords.  Any value less than 8 will be  increased
   to 8.

   account.random_password
   random_password (default: false) : Boolean

   Determines  whether  vmm(1)  should  generate a random password when no
   password was given for the useradd subcommand.  If this option  is  set
   to false vmm will prompt you to enter a password for the new account.

   You  can  specify  the  password length of generated passwords with the
   account.password_length option.

SECTION BIN

   The bin section is used to specify some paths to some binaries required
   by vmm(1).

   bin.dovecotpw
   dovecotpw (default: /usr/sbin/dovecotpw) : String

   The absolute path to the dovecotpw(1) binary.  Use the absolute path to
   the doveadm(1) binary, if you are using Dovecot v2.0.

   This   binary   is   used   to   generate   a   password    hash,    if
   misc.password_scheme is set to one of `CRAM-MD5', `HMAC-MD5', `LANMAN',
   `OTP', `RPA' or `SKEY'.  This binary will  be  also  required  if  your
   Python installation doesn't support the:

   *   md4  hash  algorithm  (hashlib  + OpenSSL or PyCrypto) used for the
       password schemes: `PLAIN-MD4' and `NTLM'

   *   sha256 hash algorithm (hashlib or PyCrypto  2.1.0alpha1) used  for
       the password schemes: `SHA256' and `SSHA256'

   *   sha512  hash  algorithm  (hashlib)  used  for the password schemes:
       `SHA512' and `SSHA512'

   The doveadm(1) binary is  also  used  to  create  a  user's  INBOX  and
   additional  mailboxes (mailbox.folders), when the mailbox.format is set
   to mdbox or sdbox.

   bin.du
   du (default: /usr/bin/du) : String

   The absolute path to du(1).  This binary is used to summarize the  disk
   usage of a user's mail directory.

   bin.postconf
   postconf (default: /usr/sbin/postconf) : String

   The  absolute  path  to  Postfix' postconf(1).  This binary is required
   when  vmm(1)  has  to  check  for  some  Postfix  settings,  e.g.   the
   virtual_alias_expansion_limit.

SECTION DATABASE

   The  database  section  is  used  to  specify  some options required to
   connect to the database.

   database.host
   host (default: localhost) : String

   Hostname or IP address of the database server.

   database.module
   module (default: psycopg2) : String

   The Python PostgreSQL database adapter module to  be  used.   Supported
   modules are psycopg2 and pyPgSQL.

   database.name
   name (default: mailsys) : String

   Name of the database.

   database.pass
   pass (default: None) : String

   Database password.

   database.port
   port (default: 5432) : Int

   The   TCP   port,  on  which  the  database  server  is  listening  for
   connections.

   database.sslmode
   sslmode (default: prefer) : String

   Determines whether and with what priority an  SSL  connection  will  be
   negotiated  with  the  database server.  Possible values are: disabled,
   allow, prefer, require, verify-ca and verify-full.  The modes verify-ca
   and verify-full are available since PostgreSQL 8.4

   This  setting  will  be  ignored  when  the  database.module  is set to
   pyPgSQL.

   database.user
   user (default: None) : String

   Name of the database user.

SECTION DOMAIN

   The domain section specifies some domain related settings.

   The quota limit  (quota_bytes  and  quota_messages),  service  settings
   (imap,  pop3, sieve and smtp) and the transport setting will be applied
   when a domain is created.  In order to modify  those  settings  for  an
   existing domain, use one of the following vmm(1) subcommands:

   domainquota
          in order to update a domain's quota limit

   domainservices
          in order to assign a different service set to a domain

   domaintransport
          in order to set a new default domain transport

   When  an account is created, it inherits all the settings of the domain
   to which it is added.  Different settings for an existing  account  can
   be set using the subcommands userquota, userservices and usertransport.

   domain.auto_postmaster
   auto_postmaster (default: true) : Boolean

   Determines if vmm(1) should create also a postmaster account when a new
   domain is created (domainadd).

   domain.delete_directory
   delete_directory (default: false) : Boolean

   Specifies whether the domain directory and all user directories  inside
   should be deleted when a domain is deleted (domaindelete).

   domain.directory_mode
   directory_mode (default: 504) : Int

   Access mode for the domain directory in decimal (base 10) notation.
   For example: `drwxrwx---'  octal 0770  decimal 504

   domain.force_deletion
   force_deletion (default: false) : Boolean

   Force  the  deletion  of  accounts and aliases when a domain is deleted
   (domaindelete).

   domain.imap
   imap (default: true) : Boolean

   Determines whether newly created users can log in via IMAP.

   domain.pop3
   pop3 (default: true) : Boolean

   Determines whether newly created users can log in via POP3.

   domain.quota_bytes
   quota_bytes (default: 0) : String

   Quota limit in bytes.  0 means unlimited.  This limit will  be  applied
   to all newly created domains.

   The  option's  value  can  be written as an integer value, e.g.: 20480.
   It's also possible to append one  of  the  following  prefixes  to  the
   limit: b (bytes), k (kilobytes), M (megabytes) or G (gigabytes).
   1024 is the same as 1024b or 1k.

   domain.quota_messages
   quota_messages (default: 0) : Int

   Quota limit in number of messages.  0 means unlimited.  This limit will
   be applied to all newly created domains.

   domain.sieve
   sieve (default: true) : Boolean

   Determines  whether  newly  created  users  can  log   in   via   SIEVE
   (ManageSieve).

   domain.smtp
   smtp (default: true) : Boolean

   Determines whether newly created users can log in via SMTP (SMTP AUTH).

   domain.transport
   transport (default: dovecot:) : String

   Default   transport   for   domains  and  accounts.   For  details  see
   transport(5).

SECTION MAILBOX

   The mailbox section is used to specify some  options  for  new  created
   mailboxes  in  the  users  home directories.  The INBOX will be created
   always.

   mailbox.folders
   folders (default: Drafts:Sent:Templates:Trash) : String

   A colon separated list of mailboxes that  should  be  created.   If  no
   additionally  mailboxes should be created, set the value of this option
   to a single colon (`:').

   If you want to  create  folders  containing  one  or  more  subfolders,
   separate them with a single dot (`.').

   If  you  want to use internationalized mailbox names (e.g. `Wysane' or
   `Gelschte Objekte'), write their names  UTF-8  encoded.   vmm(1)  will
   convert  internationalized  mailbox  names to a modified version of the
   UTF-7 encoding (see also: RFC 3501, section 5.1.3).

   mailbox.format
   format (default: maildir) : String

   The mailbox format to be used for a user's mailbox.  Depending  on  the
   used Dovecot version (misc.dovecot_version) vmm(1) supports up to three
   formats:

   maildir Dovecot  v1.0.0

   mdbox   Dovecot  v2.0.beta5

   sdbox   Dovecot  v2.0.rc3

   mailbox.root
   root (default: Maildir) : String

   Name of  the  mailbox  root  directory  in  a  user's  home  directory.
   Commonly used names, depending on the used mailbox.format, are Maildir,
   mdbox or sdbox.

   mailbox.subscribe
   subscribe (default: true) : Boolean

   When this option is set to true, the mailboxes from the mailbox.folders
   option  will  be listed in the user's subscriptions file.  If you don't
   want to subscribe the created mailboxes, set this option to false.

SECTION MISC

   The misc section is used to define miscellaneous settings.

   misc.base_directory
   base_directory (default: /srv/mail) : String

   All domain directories will be created inside this directory.

   misc.crypt_blowfish_rounds
   crypt_blowfish_rounds (default: 5) : Int

   Number of encryption rounds for the password_scheme BLF-CRYPT.

   The value must be in range 4 - 31.

   misc.crypt_sha256_rounds
   crypt_sha256_rounds (default: 5000) : Int

   Number of encryption rounds for the password_scheme SHA256-CRYPT.

   The value must be in range 1000 - 999999999.

   misc.crypt_sha512_rounds
   crypt_sha512_rounds (default: 5000) : Int

   Number of encryption rounds for the password_scheme SHA512-CRYPT.

   The value must be in range 1000 - 999999999.

   misc.dovecot_version
   dovecot_version (default: None) : String

   The version number  of  the  currently  used  Dovecot  version.   (see:
   dovecot --version)
   When,  for  example,  the  command  dovecot  --version prints 2.0.beta4
   (8818db00d347), set the value of this option to 2.0.beta4.

   misc.password_scheme
   password_scheme (default: CRAM-MD5) : String

   Password scheme to use.  To get a list of all usable  password  schemes
   execute the command vmm lp.

   With  Dovecot    v1.1.alpha1 it is also possible to append an encoding
   suffix to the password_scheme.  Supported encoding suffixes are:  .b64,
   .base64 and .hex.  For example: PLAIN.BASE64

EXAMPLE

   An  example  configuration.   All  options  that  are not listed in the
   configuration file will have their default values.

   [account]
   password_length = 10
   random_password = true

   [bin]
   dovecotpw = /usr/bin/doveadm

   [database]
   host = dbsrv8.example.net
   pass = PY_SRJ}L/0p-oOk
   port = 5433
   sslmode = require
   user = vmm

   [domain]
   quota_bytes = 500M
   quota_messages = 10000
   transport = lmtp:unix:private/dovecot-lmtp

   [mailbox]
   folders = Drafts:Sent:Templates:Trash:Lists.Dovecot:Lists.Postfix

   [misc]
   crypt_sha512_rounds = 10000
   dovecot_version = 2.0.beta4
   password_scheme = SHA512-CRYPT.hex

SEE ALSO

   postconf(1), vmm(1), transport(5)

INTERNET RESOURCES

   Homepage
          http://vmm.localdomain.org/

   Project site
          http://sf.net/projects/vmm/

   Bug tracker
          https://bitbucket.org/pvo/vmm/issues

COPYING

   vmm and its manual pages were  written  by  Pascal  Volk  <user+vmm  AT
   localhost.localdomain.org>  and are licensed under the terms of the BSD
   License.





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.