Настройка сервера · 5 min read · Feb 14, 2026

Настройка почтового сервера с Exim, MySQL, Cyrus-Imapd, Horde Webmail на Centos 5.1 - Страница 3

Конфигурация IMP

  • Создайте базовую конфигурацию imp /usr/share/horde/imp/config/conf.php - Создайте конфигурацию серверов IMP /usr/share/horde/imp/config/servers.php (удалите все остальные) с содержимым ниже 'localserver', 'server' => 'localhost', 'hordeauth' => 'full', 'protocol' => 'imap/notls', 'port' => 143, 'maildomain' => '', 'smtphost' => 'localhost', 'smtpport' => 25, 'realm' => '', 'preferred' => '', 'admin' => array( 'params' => array( 'login' => 'cyrus', 'password' => '', 'userhierarchy' => 'user.', 'protocol' => 'imap/notls', 'hostspec' => 'localhost', 'port' => 143 ) ), 'quota' => array( 'driver' => 'cyrus', 'params' => array(), ), 'acl' => array( 'driver' => 'rfc2086', ), );- Предотвратите появление окна составления в виде всплывающего окна, отредактируйте /usr/share/horde/imp/config/prefs.php и измените переменную $prefs[‘compose_window’] так, чтобы она выглядела следующим образом ```$_prefs[‘compose_popup’] = array( ‘value’ => 0, ‘locked’ => true, ‘shared’ => true, ‘type’ => ‘checkbox’, ‘desc’ => (“Составлять сообщения в отдельном окне?”) ); ```

Конфигурация Kronolith

  • Создайте базовую конфигурацию kronolith /usr/share/horde/kronolith/config/conf.php

Конфигурация Turba

  • Настройте базовую конфигурацию turba /usr/share/horde/turba/config/conf.php

Конфигурация Ingo

  • Настройте базовую конфигурацию ingo /usr/share/horde/ingo/config/conf.php
  • Настройте бэкенд ingo для использования timsieved в /usr/share/horde/ingo/config/backends.php (удалите все остальные бэкенды) 'timsieved', 'preferred' => 'localhost', 'hordeauth' => 'full', 'params' => array( 'hostspec' => 'localhost', 'logintype' => 'PLAIN', 'usetls' => true, 'port' => 2000, 'scriptname' => 'ingo', ), 'script' => 'sieve', 'scriptparams' => array() );

Конфигурация Passwd

  • Настройте базовую конфигурацию passwd /usr/share/horde/passwd/config/conf.php
  • Настройте бэкенд passwd для использования базы данных horde mysql в /usr/share/horde/passwd/config/backends.php (удалите все остальные) 'Horde Authentication', 'preferred' => '', 'password policy' => array( 'minLength' => 5, 'maxLength' => 8, 'maxSpace' => 0, 'minUpper' => 1, 'minLower' => 1, 'minNumeric' => 1, 'minSymbols' => 1 ), 'driver' => 'sql', 'params' => array_merge($conf['sql'], array('table' => 'horde_users', 'user_col' => 'user_uid', 'pass_col' => 'user_pass', 'show_encryption' => false)), );

Безопасная установка Horde

  • Обеспечьте безопасность установки horde chown apache:root -R /usr/share/horde/config
    chown apache:root -R /usr/share/horde//config
    chmod -R go-rwx /usr/share/horde/config
    chmod -R go-rwx /usr/share/horde/
    /config
    chown -R root:root /usr/share/horde/scripts
    chown -R root:root /usr/share/horde//scripts
    chmod -R go-rwx /usr/share/horde/scripts
    chmod -R go-rwx /usr/share/horde/
    /scripts
    chmod a-rwx /usr/share/horde/test.php
    chmod a-rwx /usr/share/horde/*/test.php
    find /usr/share/horde/ -iname readme -exec rm -f {} ;
    find /usr/share/horde/ -iname todo -exec rm -vf {} ;
    find /usr/share/horde/ -iname license -exec rm -vf {} ;
    find /usr/share/horde/ -iname copying -exec rm -vf {} ;
    find /usr/share/horde/ -iname docs -exec rm -vrf {} ;

Настройка Cyrus-imapd

Система cyrus-imapd будет иметь включенный виртуальный хостинг, скрипты sieve, квоты, установленные на 10 МБ, автоматическое создание (и автоматическая подписка) почтового ящика с этими папками (INBOX,sent-mail,drafts,spam,trash). Аутентификация пользователей будет происходить против базы данных Mysql через SASL с использованием демона saslauthd.

  • Создайте конфигурацию /etc/imapd.conf со следующим содержимым configdirectory: /var/lib/imap servername: TDS-IMAP/POP3 partition-default: /var/spool/imap virtdomains: on defaultdomain: localhost.localdomain admins: [email protected] postmaster: [email protected] quotawarn: 85 lmtp_over_quota_perm_failure: 1 lmtp_strict_quota: 1 autocreatequota: 10240 createonpost: 1 autocreateinboxfolders: sent-mail|drafts|spam|trash autosubscribeinboxfolders: sent-mail|drafts|spam|trash autocreate_sieve_script: /etc/default_sieve autocreate_sieve_compiledscript: /etc/default_sieve_script.bc sievedir: /var/lib/imap/sieve md5_dir: /var/lib/imap/md5 #sievenotifier: sms #sendsms: /usr/bin/mysmsprog sendmail: /usr/sbin/sendmail hashimapspool: true sasl_pwcheck_method: saslauthd sasl_mech_list: PLAIN allowplainwithouttls: 0 tls_cert_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem tls_key_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem tls_ca_file: /etc/pki/tls/certs/ca-bundle.crt loglevel: info
  • Создайте конфигурацию /etc/cyrus.conf со следующим содержимым START { # не удаляйте эту запись! recover cmd="ctl_cyrusdb -r" # это необходимо только в случае использования idled для IMAP IDLE idled cmd="idled" # репликация # syncclient cmd="/usr/lib/cyrus-imapd/sync_client -r" } # UNIX-сокеты начинаются со слэша и помещаются в /var/lib/imap/sockets SERVICES { # добавьте или удалите в зависимости от предпочтений imap cmd="imapd" listen="imap" prefork=1 proto=tcp maxchild=100 maxfds=1000 provide_uuid=1 # imaps cmd="imapd -s" listen="imaps" prefork=1 pop3 cmd="pop3d" listen="pop3" prefork=1 proto=tcp maxchild=100 maxfds=1000 provide_uuid=1 # pop3s cmd="pop3d -s" listen="pop3s" prefork=1 sieve cmd="timsieved" listen="localhost:sieve" prefork=0 proto=tcp maxfds=1000 provide_uuid=1 # эти команды необходимы только в случае получения/экспорта usenet через NNTP # nntp cmd="nntpd" listen="nntp" prefork=3 # nntps cmd="nntpd -s" listen="nntps" prefork=1 #fud # fud cmd="fud" listen="fud" prefork=1 proto="udp" # по крайней мере один LMTP необходим для доставки # lmtp cmd="lmtpd" listen="lmtp" prefork=0 lmtpunix cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1 maxfds=1000 provide_uuid=1 # это необходимо только в случае использования уведомлений notify cmd="notifyd" listen="/var/lib/imap/socket/notify" proto="udp" prefork=1 # репликация } EVENTS { # это требуется checkpoint cmd="ctl_cyrusdb -c" period=30 maxfds=1000 # это необходимо только в случае использования подавления дублирующей доставки, # Sieve или NNTP delprune cmd="cyr_expire -E 3" at=0400 # это необходимо только в случае кэширования TLS-сессий #tlsprune cmd="tls_prune" at=0400 squat cmd="squatter" period=30 }
Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.