在CentOS上安装Dovecot后和启动前需要进行初始配置。
出版日期:2021年1月4日。
INFOMARTION > 在CentOS上安装Dovecot后和启动前需要进行初始配置。
概述。
在CentOS上安装和启动Dovecot所需的初始配置步骤。 这些信息是基于使用CentOS7的假设。 入站协议设置了imaps(通过SSL的IMAP)和pop3s(通过SSL的POP3)。
也请从这里提前设置好Postfix,因为它是和Postfix一起设置的。
版本如下。
CentOS版本 | 7.6 (1810) |
---|---|
后缀版本 | 2.10.1 |
Dovecot的版本 | 2.2.36 |
目录
- 安装
- 设置细节
- 2-1. 初始化
- 2-2. POP3和IMAP设置
- 2-3. Dovecot认证方法设置
- 2-4. 将电子邮件存储改为 "Maildir "格式。
- 2-5. 认证设置
- 2-6. 引导性检查
- 2-7. 自动启动设置
- 摘要
1. 安装
本节描述了从安装到启动的Dovecot的配置。
1-1. 安装Dovecot
通过yum命令进行Dovecot的安装。 以根用户身份开展工作。
[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
修改如下:
#protocols = imap pop3 lmtp
~删节~
#listen = *, ::
~删节~
#login_greeting = Dovecot ready.
protocols = imap pop3
~删节~
listen = *
~删节~
login_greeting = pop3 and imap ready.
protocols'指定了连接到Dovecot的协议。
listen'是允许连接的IP。 设置为 "*",所以对连接的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
修改如下:
service imap-login {
inet_listener imap {
#port = 143
}
~删节~
service pop3-login {
inet_listener pop3 {
#port = 110
}
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
修改如下:
#disable_plaintext_auth = yes
~删节~
auth_mechanisms = plain
disable_plaintext_auth = no
~删节~
auth_mechanisms = login plain
2-4. 将电子邮件存储改为 "Maildir "格式。
设置电子邮件存储位置为每个用户的主目录(在"/home/xxx/"下)。
[root@hostname ~]# vi /etc/dovecot/conf.d/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 =
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
修改如下:
ssl = required
~删节~
ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
ssl_key = </etc/pki/dovecot/private/dovecot.pem
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设置。 请参考以下内容。
接下来是与密码有关的设置。 'auth-system.conf.ext'。
[root@hostname ~]# vi /etc/dovecot/conf.d/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 =
#}
#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@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
#一旦激活,将状态设为已激活。
Type=oneshot
RemainAfterExit=yes
#启动、停止和重新加载。
ExecStart=/usr/sbin/dovecot
ExecStop=/usr/sbin/dovecot stop
ExecReload=/usr/sbin/dovecot reload
[Install]
#运行级别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,请参考这一部分。
谢谢你一直看到最后。