imported>Vix |
imported>Supportadmin |
Строка 1: |
Строка 1: |
| '''Порядок установки:'''
| |
| * '''''Система Debian Stretch {9}'''''
| |
| * Используемый source.list
| |
| #
| |
| deb http://mirror.mephi.ru/debian/ stretch main
| |
| deb-src http://mirror.mephi.ru/debian/ stretch main
| |
|
| |
| deb http://security.debian.org/debian-security stretch/updates main
| |
| deb-src http://security.debian.org/debian-security stretch/updates main
| |
|
| |
| # stretch-updates, previously known as 'volatile'
| |
| deb http://mirror.mephi.ru/debian/ stretch-updates main
| |
| deb-src http://mirror.mephi.ru/debian/ stretch-updates main
| |
|
| |
| ###### Debian Main Repos
| |
| deb http://deb.debian.org/debian/ stable main contrib non-free
| |
| deb-src http://deb.debian.org/debian/ stable main contrib non-free
| |
|
| |
| deb http://deb.debian.org/debian/ stable-updates main contrib non-free
| |
| deb-src http://deb.debian.org/debian/ stable-updates main contrib non-free
| |
|
| |
| deb http://deb.debian.org/debian-security stable/updates main contrib non-free
| |
| deb-src http://deb.debian.org/debian-security stable/updates main contrib non-free
| |
|
| |
| deb http://ftp.debian.org/debian stretch-backports main contrib non-free
| |
| deb-src http://ftp.debian.org/debian stretch-backports main contrib non-free
| |
|
| |
| 1. ''Устанавливаем необходимые пакеты:''
| |
| apt-get install pkg-config libglib2.0-dev libgmime-2.6-dev libmhash-dev libevent-dev libssl1.0-dev libzdb-dev
| |
| autoconf automake libtool autotools-dev dpkg-dev fakeroot
| |
|
| |
|
| 2. ''Скачиваем с [http://www.dbmail.org/index.php?page=download dbmail.org] исходники:''
| |
| wget -c -t 0 -T 8 http://www.dbmail.org/download/3.1/dbmail-3.1.17.tar.gz
| |
|
| |
| 3. ''Распаковываем и компилируем:''
| |
| cp dbmail-3.1.17.tar.gz /usr/local/src
| |
| tar -xf dbmail-3.1.17.tar.gz
| |
| cp dbmail-3.1.17.tar.gz /usr/local/src/dbmail_3.0.2.orig.tar.gz
| |
| editor /usr/local/src/dbmail-3.2.3/debian/changelog
| |
|
| |
| ''Готовим пакет к сборке:''
| |
| cd /usr/local/src/
| |
| dpkg-source -b dbmail-3.2.3
| |
|
| |
| cd dbmail-3.2.3
| |
| ./configure --prefix=/usr && make -j3
| |
| dpkg-buildpackage -d
| |
|
| |
|
| |
| * после того как соберется пакет, копируем себе в архив и ставим.
| |
| dpkg -i dbmail_3.2.3-1_amd64.deb
| |
|
| |
| * создаем файл конфигурации:
| |
| echo>/etc/dbmail.conf
| |
| * вносим содержимое:
| |
| # (c) 2000-2006 IC&S, The Netherlands
| |
| #
| |
| # Configuration file for DBMAIL
| |
|
| |
| [DBMAIL]
| |
| #
| |
| # Database settings
| |
| #
| |
| # database connection URI
| |
|
| |
| #dburi = sqlite:///var/tmp/dbmail.db
| |
|
| |
| #
| |
| # Supported drivers are sql, ldap.
| |
| #
| |
| authdriver = sql
| |
|
| |
| #
| |
| #
| |
| # following fields are now DEPRECATED!
| |
| driver =pgsql
| |
| host =10.0.3.2
| |
| sqlport =5432
| |
| #sqlsocket =
| |
| user =adminmail
| |
| pass =password
| |
| db =dbmail
| |
|
| |
| #
| |
| # Number of database connections per threaded daemon
| |
| # This also determines the size of the worker threadpool
| |
| #
| |
| # Do NOT increase this without proper consideration. A
| |
| # very large database/worker pool will not only increase
| |
| # the connection pressure on the database, but will more
| |
| # significantly cause unnecessary context-switching in
| |
| # your CPUs.
| |
| #
| |
| #max_db_connections = 10
| |
|
| |
| #
| |
| # Table prefix. Defaults to "dbmail_" if not specified.
| |
| #
| |
| table_prefix = dbmail_
| |
|
| |
| #
| |
| # encoding must match the database/table encoding.
| |
| # i.e. latin1, utf8
| |
| encoding = utf8
| |
|
| |
| #
| |
| # messages with unknown encoding will be assumed to have
| |
| # default_msg_encoding
| |
| # i.e. iso8859-1, utf8
| |
| default_msg_encoding = utf8
| |
|
| |
| #
| |
| # Postmaster's email address for use in bounce messages.
| |
| #
| |
| #postmaster = DBMAIL-MAILER
| |
|
| |
| #
| |
| # Sendmail executable for forwards, replies, notifies, vacations.
| |
| # You may use pipes (|) in this command, for example:
| |
| # dos2unix|/usr/sbin/sendmail works well with Qmail.
| |
| # You may use quotes (") for executables with unusual names.
| |
| #
| |
| sendmail = /usr/sbin/sendmail
| |
|
| |
| #
| |
| #
| |
| # The following items can be overridden in the service-specific sections.
| |
| #
| |
| #
| |
|
| |
| #
| |
| # Logging via stderr/log file and syslog
| |
| #
| |
| # Logging is broken up into 8 logging levels and each level can be indivually turned on or off.
| |
| # The Stderr/log file logs all entries to stderr or the log file.
| |
| # Syslog logging uses the facility mail and the logging level of the event for logging.
| |
| # Syslog can then be configured to log data according to the levels.
| |
| #
| |
| # Set the log level to the sum of the values next to the levels you want to record.
| |
| # 1 = Emergency
| |
| # 2 = Alert
| |
| # 4 = Critical
| |
| # 8 = Error
| |
| # 16 = Warning
| |
| # 32 = Notice
| |
| # 64 = Info
| |
| # 128 = Debug
| |
| # 256 = Database -> Logs at debug level
| |
| #
| |
| # Examples: 0 = Nothing
| |
| # 31 = Emergency + Alert + Critical + Error + Warning
| |
| # 511 = Everything
| |
| #
| |
| file_logging_levels = 7
| |
| #
| |
| syslog_logging_levels = 31
| |
|
| |
| #
| |
| # Generate a log entry for database queries for the log level at number of seconds of query execution time.
| |
| #
| |
| query_time_info = 10
| |
| query_time_notice = 20
| |
| query_time_warning = 30
| |
|
| |
| #
| |
| # Throw an exception is the query takes longer than query_timeout seconds
| |
| query_timeout = 300
| |
|
| |
| #
| |
| # Root privs are used to open a port, then privs
| |
| # are dropped down to the user/group specified here.
| |
| #
| |
| effective_user = dbmail
| |
| effective_group = dbmail
| |
|
| |
| #
| |
| # The IPv4 and/or IPv6 addresses the services will bind to.
| |
| # Use * for all local interfaces.
| |
| # Use 127.0.0.1 for localhost only.
| |
| # Separate multiple entries with spaces ( ) or commas (,).
| |
| #
| |
| bindip = 0.0.0.0 # IPv4 only - all IP's
| |
| #bindip = :: # IPv4 and IPv6 - all IP's (linux)
| |
| #bindip = :: # IPv6 only - all IP's (BSD)
| |
| #bindip = 0.0.0.0,:: # IPv4 and IPv6 - all IP's (BSD)
| |
|
| |
|
| |
| #
| |
| # The maximum length of the queue of pending connections. See
| |
| # listen(2) for more information
| |
| #
| |
| # backlog = 128
| |
|
| |
| #
| |
| # Idle time allowed before a connection is shut off.
| |
| #
| |
| timeout = 300
| |
|
| |
| #
| |
| # Idle time allowed before a connection is shut off if you have not logged in yet.
| |
| #
| |
| login_timeout = 60
| |
|
| |
| #
| |
| # If yes, resolves IP addresses to DNS names when logging.
| |
| #
| |
| resolve_ip = no
| |
|
| |
| #
| |
| # If yes, keep statistics in the authlog table for connecting users
| |
| #
| |
| authlog = no
| |
|
| |
| #
| |
| # logfile for stdout messages
| |
| #
| |
| logfile = /var/log/dbmail.log
| |
|
| |
| #
| |
| # logfile for stderr messages
| |
| #
| |
| errorlog = /var/log/dbmail.err
| |
|
| |
| #
| |
| # directory for storing PID files
| |
| #
| |
| pid_directory = /var/run
| |
|
| |
| #
| |
| # directory for locating libraries (normally has a sane default compiled-in)
| |
| #
| |
| #library_directory = /usr/lib/dbmail
| |
|
| |
| #
| |
| # SSL/TLS certificates
| |
| #
| |
| # A file containing a list of CAs in PEM format
| |
| tls_cafile =
| |
|
| |
| # A file containing a PEM format certificate
| |
| tls_cert =
| |
|
| |
| # A file containing a PEM format RSA or DSA key
| |
| tls_key =
| |
|
| |
| # A cipher list string in the format given in ciphers(1)
| |
| tls_ciphers =
| |
|
| |
|
| |
| # hashing algorithm. You can select your favorite hash type
| |
| # for generating unique ids for message parts.
| |
| #
| |
| # for valid values check mhash(3) but minus the MHASH_ prefix.
| |
| #
| |
| # if you ever change this value run 'dbmail-util --rehash' to
| |
| # update the hash for all mimeparts.
| |
| #
| |
| # examples: MD5, SHA1, SHA256, SHA512, TIGER, WHIRLPOOL
| |
| #
| |
| # hash_algorithm = SHA1
| |
|
| |
|
| |
| # header_cache tuning
| |
| #
| |
| # set header_cache_readonly to 'yes' to prevent new
| |
| # unknown header-names from being cached.
| |
| #
| |
| # header_cache_readonly = yes
| |
|
| |
|
| |
|
| |
| [LMTP]
| |
| port = 24
| |
| #tls_port =
| |
|
| |
|
| |
| [POP]
| |
| port = 110
| |
| #tls_port = 995
| |
|
| |
| # You can set an alternate banner to display when connecting to the service
| |
| # banner = DBMAIL pop3 server ready to rock
| |
|
| |
| #
| |
| # If yes, allows SMTP access from the host IP connecting by POP3.
| |
| # This requires addition configuration of your MTA
| |
| #
| |
| pop_before_smtp = no
| |
|
| |
| [HTTP]
| |
| port = 41380
| |
| #
| |
| # the httpd daemon provides full access to all users, mailboxes
| |
| # and messages. Be very careful with this one!
| |
| bindip = 127.0.0.1
| |
| admin = admin:secret
| |
|
| |
| [IMAP]
| |
| # You can set an alternate banner to display when connecting to the service
| |
| # banner = imap 4r1 server (dbmail 2.3.x)
| |
|
| |
| #
| |
| # Port to bind to.
| |
| #
| |
| port = 143
| |
| #tls_port = 993
| |
|
| |
| #
| |
| # IMAP prefers a longer timeout than other services.
| |
| #
| |
| timeout = 4000
| |
|
| |
| #
| |
| # If yes, allows SMTP access from the host IP connecting by IMAP.
| |
| # This requires addition configuration of your MTA
| |
| #
| |
| imap_before_smtp = no
| |
|
| |
| #
| |
| # during IDLE, how many seconds between checking the mailbox
| |
| # status (default: 30)
| |
| #
| |
| # idle_timeout = 30
| |
|
| |
| # during IDLE, how often should the server send an '* OK' still
| |
| # here message (default: 10)
| |
| #
| |
| # the time between such a message is idle_timeout * idle_interval
| |
| # seconds
| |
| #
| |
| # idle_interval = 10
| |
|
| |
| #
| |
| # If TLS is enabled, login before starttls is normally
| |
| # not allowed. Use login_disabled=no to change this
| |
| #
| |
| # login_disabled = yes
| |
|
| |
| #
| |
| # Provide a CAPABILITY to override the default
| |
| #
| |
| # capability = IMAP4 IMAP4rev1 AUTH=LOGIN ACL RIGHTS=texk NAMESPACE CHILDREN SORT QUOTA THREAD=ORDEREDSUBJECT
| |
| UNSELECT IDLE
| |
|
| |
| # max message size. You can specify the maximum message size
| |
| # accepted by the IMAP daemon during APPEND commands.
| |
| #
| |
| # Supported formats:
| |
| # decimal: 1000000
| |
| # octal: 03777777
| |
| # hex: 0xfffff
| |
| #
| |
| # max_message_size =
| |
|
| |
|
| |
| [SIEVE]
| |
| #
| |
| # Port to bind to.
| |
| #
| |
| port = 2000
| |
| tls_port =
| |
|
| |
|
| |
| [LDAP]
| |
| port = 389
| |
| version = 3
| |
| hostname = ldap
| |
| base_dn = ou=People,dc=mydomain,dc=com
| |
|
| |
| #
| |
| # If your LDAP library supports ldap_initialize(), then you can use the
| |
| # alternative LDAP server DSN like following.
| |
| #
| |
| # URI = ldap://127.0.0.1:389
| |
| # URI = ldapi://%2fvar%2frun%2fopenldap%2fldapi/
| |
|
| |
| #
| |
| # Leave blank for anonymous bind.
| |
| # example: cn=admin,dc=mydomain,dc=com
| |
| #
| |
| bind_dn =
| |
|
| |
| #
| |
| # Leave blank for anonymous bind.
| |
| #
| |
| bind_pw =
| |
| scope = SubTree
| |
|
| |
| # AD users may want to set this to 'no' to disable
| |
| # ldap referrals if you are seeing 'Operations errors'
| |
| # in your logs
| |
| #
| |
| referrals = yes
| |
|
| |
| user_objectclass = top,account,dbmailUser
| |
| forw_objectclass = top,account,dbmailForwardingAddress
| |
| cn_string = uid
| |
| field_passwd = userPassword
| |
| field_uid = uid
| |
| field_nid = uidNumber
| |
| min_nid = 10000
| |
| max_nid = 15000
| |
| field_cid = gidNumber
| |
| min_cid = 10000
| |
| max_cid = 15000
| |
|
| |
| # a comma-separated list of attributes to match when searching
| |
| # for users or forwards that match a delivery address. A match
| |
| # on any of them is a hit.
| |
| field_mail = mail
| |
|
| |
| # field that holds the mail-quota size for a user.
| |
| field_quota = mailQuota
| |
|
| |
| # field that holds the forwarding address.
| |
| field_fwdtarget = mailForwardingAddress
| |
|
| |
| # override the query string used to search for users
| |
| # or forwards with a delivery address.
| |
| # query_string = (mail=%s)
| |
|
| |
| [DELIVERY]
| |
| #
| |
| # Run Sieve scripts as messages are delivered.
| |
| #
| |
| SIEVE = yes
| |
|
| |
| #
| |
| # Use 'user+mailbox@domain' format to deliver to a mailbox.
| |
| #
| |
| SUBADDRESS = yes
| |
|
| |
| #
| |
| # Turn on/off the Sieve Vacation extension.
| |
| #
| |
| SIEVE_VACATION = yes
| |
|
| |
| #
| |
| # Turn on/off the Sieve Notify extension
| |
| #
| |
| SIEVE_NOTIFY = yes
| |
|
| |
| #
| |
| # Turn on/off additional Sieve debugging.
| |
| #
| |
| SIEVE_DEBUG = no
| |
|
| |
|
| |
| # Use the auto_notify table to send email notifications.
| |
| #
| |
| AUTO_NOTIFY = no
| |
|
| |
| #
| |
| # Use the auto_reply table to send away messages.
| |
| #
| |
| AUTO_REPLY = no
| |
|
| |
| #
| |
| # Defaults to "NEW MAIL NOTIFICATION"
| |
| #
| |
| #AUTO_NOTIFY_SUBJECT =
| |
|
| |
| #
| |
| # Defaults to POSTMASTER from the DBMAIL section.
| |
| #
| |
| #AUTO_NOTIFY_SENDER =
| |
|
| |
|
| |
| # If you set this to 'yes' dbmail will check for duplicate
| |
| # messages in the relevant mailbox during delivery using
| |
| # the Message-ID header
| |
| #
| |
| suppress_duplicates = no
| |
|
| |
| #
| |
| # Soft or hard bounce on over-quota delivery
| |
| #
| |
| quota_failure = hard
| |
|
| |
|
| |
| # end of configuration file
| |
|
| |
|
| |
| * С установкой '''dbmail''' пока окончено, следующий этап установка '''postgesql''' и настройка для будущей работы.
| |
|
| |
| 4. ''[[Настройка PostgreSQL]]''
| |
|
| |
| 5. После того как мы настроили базу данных '''postgresql''', создаем пользователя '''dbmail''' и базу '''dbmail'''<br>
| |
| ...проще всего это сделать через '''pgadmin'''.
| |
|
| |
| <hr>
| |
| Ресурсы:
| |
| * [https://habrahabr.ru/post/37195/ Настройка exim+postgresql+dbmail+spamassassin...]
| |
| * [https://www.opennet.ru/docs/RUS/dbmail/#dbmail_fs Создание почтовой системы на базе exim, dbmail, amavisd-new и postgresql]
| |
| * [https://www.opennet.ru/docs/RUS/dbmail_postfix/ Почтовый сервер на основе реляционной СУБД]
| |
| * [https://habrahabr.ru/post/211078/ Почтовый сервер с хранением данных в PostgreSQL]
| |