Первоначальная настройка требуется после установки Dovecot на CentOS и перед запуском.


Дата публикации:4 января 2021 года.



INFOMARTION > Первоначальная настройка требуется после установки Dovecot на CentOS и перед запуском.

Обзор.

Шаги начальной настройки, необходимые для установки и запуска Dovecot на CentOS. Информация основана на предположении, что используется CentOS7. Входящие протоколы настроены на imaps (IMAP через SSL) и pop3s (POP3 через SSL).

Пожалуйста, настройте Postfix заранее отсюда, так как он настроен совместно с Postfix.

Версии следующие.

Версия CentOS7.6 (1810)
Версия Postfix2.10.1
Версия Dovecot2.2.36

Оглавление

  1. установить
  2. Детали настройки
  3. резюме

1. установить

В этом разделе описывается конфигурация Dovecot от установки до запуска.

1-1. Установка Dovecot

Выполните установку Dovecot с помощью команды yum. Выполните работу от имени пользователя root.

[username@hostname ~]$ su -
[root@hostname ~]# yum -y install dovecot

1-2. проверка бутстрапа

Чтобы убедиться в успешной установке, проверьте запуск. Обратите внимание, что Dovecot не требует start в качестве аргумента при запуске.

[root@hostname ~]# /usr/sbin/dovecot
[root@hostname ~]# ps aux | grep dovecot
root      1470  0.0  0.1  16092  1156 ?        Ss   18:38   0:00 /usr/sbin/dovecot
dovecot   1471  0.0  0.1   9752  1120 ?        S    18:38   0:00 dovecot/anvil
root      1472  0.0  0.1   9884  1320 ?        S    18:38   0:00 dovecot/log
root      1474  0.0  0.2  12916  2384 ?        S    18:38   0:00 dovecot/config
root      1476  0.0  0.0 112824   968 pts/0    R+   18:38   0:00 grep --color=auto dovecot

Любой процесс, запущенный от имени пользователя dovecot, как описано выше, в порядке. Остановитесь.

[root@hostname ~]# /usr/sbin/dovecot stop

2. Детали настройки

2-1. инициализация

Начальная конфигурация Dovecot выполнена.

[root@hostname ~]# vi /etc/dovecot/dovecot.conf

Изменить следующим образом.

dovecot.conf【До изменений】


#protocols = imap pop3 lmtp
~сокращение~
#listen =  *, ::
~сокращение~
#login_greeting = Dovecot ready.

dovecot.conf【после изменения】


protocols = imap pop3
~сокращение~
listen = *
~сокращение~
login_greeting = pop3 and imap ready.

'protocols' указывает протоколы для подключения к Dovecot.

'listen' - IP, к которому разрешено подключение. Настройкой является "*", поэтому нет ограничений на IP-адреса для подключения. Если у вас есть определенный IP-адрес для подключения, укажите его в целях безопасности. "::" является параметром IPv6, но IPv6 не используется в данный момент и должен быть удален. Удалив его, можно принимать только IPv4.

'login_greeting' - это сообщение при установлении соединения. Это изменение не является обязательным, но в целях безопасности измените сообщение так, чтобы при подключении не было очевидно, что это dovecot.

2-2. Настройки POP3 и IMAP

Будет настроен порт 110, который является известным портом для POP3, и порт 143, который является известным портом для IMAP. Метод аутентификации связан с Postfix, и аутентификация желательна.

[root@hostname ~]# vi /etc/dovecot/conf.d/10-master.conf

Изменить следующим образом.

10-master.conf【До изменений】


service imap-login {
  inet_listener imap {
    #port = 143
  }
~сокращение~
service pop3-login {
  inet_listener pop3 {
    #port = 110
  }

10-master.conf【после изменения】


service imap-login {
  inet_listener imap {
    port = 143
  }
~сокращение~
service pop3-login {
  inet_listener pop3 {
    port = 110
  }

2-3. Настройки метода аутентификации Dovecot

Добавьте вход в систему в метод аутентификации Dovecot.

[root@hostname ~]# vi /etc/dovecot/conf.d/10-auth.conf

Изменить следующим образом.

10-auth.conf【До изменений】


#disable_plaintext_auth = yes
~сокращение~
auth_mechanisms = plain

10-auth.conf【после изменения】


disable_plaintext_auth = no
~сокращение~
auth_mechanisms = login plain

2-4. Изменение хранения электронной почты на формат 'Maildir'.

Установите место хранения электронной почты в домашнем каталоге каждого пользователя (в каталоге "/home/xxx/").

[root@hostname ~]# vi /etc/dovecot/conf.d/10-mail.conf

Изменить следующим образом.

10-mail.conf【До изменений】


#mail_location =
~сокращение~
namespace inbox {
  # Namespace type: private, shared or public
  #type = private

  # Hierarchy separator to use. You should use the same separator for all
  # namespaces or some clients get confused. '/' is usually a good one.
  # The default however depends on the underlying mail storage format.
  #separator =

  # Prefix required to access this namespace. This needs to be different for
  # all namespaces. For example "Public/".
  #prefix =

  # Physical location of the mailbox. This is in same format as
  # mail_location, which is also the default for it.
  #location =

10-mail.conf【после изменения】


mail_location = maildir:~/Maildir
~сокращение~
namespace inbox {
  # Namespace type: private, shared or public
  #type = private

  # Hierarchy separator to use. You should use the same separator for all
  # namespaces or some clients get confused. '/' is usually a good one.
  # The default however depends on the underlying mail storage format.
  #separator =

  # Prefix required to access this namespace. This needs to be different for
  # all namespaces. For example "Public/".
  #prefix =

  # Physical location of the mailbox. This is in same format as
  # mail_location, which is also the default for it.
  location = maildir:~/Maildir

2-5. Настройки аутентификации

Включить конфигурацию ssl.

[root@hostname ~]# vi /etc/dovecot/conf.d/10-ssl.conf

Изменить следующим образом.

10-ssl.conf【До изменений】


ssl = required
~сокращение~
ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
ssl_key = </etc/pki/dovecot/private/dovecot.pem

10-ssl.conf【после изменения】


ssl = required
~сокращение~
ssl_cert = </etc/pki/tls/certs/localhost.crt
ssl_key = </etc/pki/tls/private/localhost.key

'ssl_cert' и 'ssl_key' должны быть установлены в соответствии с окружением. Задайте путь, где хранится сертификат сервера.

Настройки SSL требуются заранее, поэтому если вы еще не настроили параметры SSL, пожалуйста, сначала выполните настройки SSL. Пожалуйста, обратитесь к следующему.

Требуется начальная настройка от установки Apache на CentOS до запуска.


Далее следуют настройки, связанные с паролями. 'auth-system.conf.ext'.

[root@hostname ~]# vi /etc/dovecot/conf.d/auth-system.conf.ext

Изменить следующим образом.

auth-system.conf.ext【До изменений】


passdb {
  driver = pam
  # [session=yes] [setcred=yes] [failure_show_msg=yes] [max_requests=<n>]
  # [cache_key=<key>] [<service name>]
  #args = dovecot
}
~сокращение~
#passdb {
  #driver = shadow
  # [blocking=no]
  #args =
#}

auth-system.conf.ext【после изменения】


#passdb {
#driver = pam
  # [session=yes] [setcred=yes] [failure_show_msg=yes] [max_requests=<n>]
  # [cache_key=<key>] [<service name>]
  #args = dovecot
#}
~сокращение~
passdb {
  driver = shadow
  # [blocking=no]
  #args =
}

2-6. проверка бутстрапа

На этом конфигурация завершена, поэтому проверьте, что Dovecot запускается с завершенной конфигурацией. Обратите внимание, что start не требуется в качестве аргумента.

[root@hostname ~]# /usr/sbin/dovecot
[root@hostname ~]# ps aux | grep dovecot
root      1716  0.0  0.1  16092  1184 ?        Ss   22:09   0:00 /usr/sbin/dovecot
dovecot   1717  0.0  0.1   9752  1120 ?        S    22:09   0:00 dovecot/anvil
root      1718  0.0  0.1   9884  1312 ?        S    22:09   0:00 dovecot/log
root      1720  0.5  0.2  12916  2396 ?        S    22:09   0:00 dovecot/config
root      1722  0.0  0.0 112824   972 pts/0    S+   22:09   0:00 grep --color=auto dovecot

Если есть процесс, запущенный от имени пользователя dovecot, как описано выше, то он успешно настроен и запущен. После подтверждения запуска пора остановиться.

[root@hostname ~]# /usr/sbin/dovecot stop

2-7. Настройка автоматического запуска

Наконец, хотя это и не является обязательным, трудно запускать Dovecot каждый раз при перезагрузке сервера, поэтому введен параметр, чтобы Dovecot запускался автоматически при запуске сервера. Он также регистрируется командой systemctl. Обратите внимание, что эта процедура предназначена для CentOS7, поэтому если вы используете что-то другое, кроме CentOS7, вам нужно будет использовать команду Service для решения этой проблемы.

Проверьте, существует ли '/usr/lib/systemd/system/dovecot.service'. Если его нет, создайте 'dovecot.service' с помощью следующей процедуры. Запустите от имени пользователя root.

[root@hostname ~]# touch /etc/systemd/system/dovecot.service
[root@hostname ~]# vi /etc/systemd/system/dovecot.service

Предоставляется следующая информация.

[Unit]
#Описание.
Description=Dovecot
#Контроль до и после исполнения.
#Before=xxx.service
After = network.target

[Service]
#Назначение пользователей и групп
User=root
Group=root
#После активации установите статус Activated.
Type=oneshot
RemainAfterExit=yes
#Запуск, остановка и перезарядка.
ExecStart=/usr/sbin/dovecot
ExecStop=/usr/sbin/dovecot stop
ExecReload=/usr/sbin/dovecot reload

[Install]
#Эквивалентные настройки Runlevel 3.
WantedBy=multi-user.target

Затем зарегистрируйтесь с помощью команды systemctl.

[root@hostname ~]# systemctl enable dovecot
[root@hostname ~]# systemctl is-enabled dovecot
enabled
[root@hostname ~]# systemctl list-unit-files --type=service | grep dovecot
dovecot.service                                enabled
[root@hostname ~]# systemctl daemon-reload

3. резюме

Мы описали начальную конфигурацию, необходимую при установке Dovecot.

Настроить его было довольно сложно, поэтому если вы создаете Dovecot, обратитесь к этому разделу.

Спасибо, что досмотрели до конца.