# 服务 ## Dovecot 高性能邮件代理(MDA) 配置证书 `/etc/dovecot/conf.d/10-ssl.conf` ``` ssl_cert = _ ssl_ca=/etc/pki/tls/certs/ca.crt default_pass_scheme = SHA512-CRYPT user_query = SELECT username FROM users WHERE username='%u'; password_query = SELECT username AS user, password FROM users WHERE username='%u'; iterate_query = SELECT username FROM users; ``` ### 选择性: pgsql ``` CREATE TABLE mail_domain ( id SERIAL PRIMARY KEY, domain_name VARCHAR(255) NOT NULL UNIQUE, active BOOLEAN DEFAULT TRUE, created_at TIMESTAMP DEFAULT NOW() ); ``` ### LMTP 与postfix通讯 开启lmtp协议 `/etc/dovecot/dovecot.conf`中 ``` protocols = imap pop3 lmtp ``` 默认情况下 会在`/var/run/dovecot/lmtp`创建socket 可在`/etc/dovecot/conf.d/10-master.conf`中修改 若要监听端口 在service lmtp命名空间内加入inet_listener ``` service lmtp { ... inet_listener lmtp { port = 24 } ... } ``` ## Postfix 高性能邮件服务器(MTA) - main.cf: 包含 Postfix 的全局配置。 - master.cf: 指定 Postfix 与各种进程进行交互以完成邮件发送。 - access :指定访问规则,例如允许连接到 Postfix 的主机。 - transport :将电子邮件地址映射到中继主机。 - aliases :包含一个邮件协议所需的可配置列表,其描述用户 ID 别名。请注意,您可以在 /etc/ 目录中找到此文件。 修改main.cf ``` inet_interfaces = all myhostname = smtp.example.com mydomain = example.com myorigin = $mydomain # 使用这个设置时,Postfix 使用域名而不是主机名作为本地发送的邮件的源。 smtpd_tls_cert_file = /etc/pki/tls/certs/postfix.pem smtpd_tls_key_file = /etc/pki/tls/private/postfix.key smtpd_tls_auth_only = yes ``` ### 可选的 多个域转发 在/etc/postfix/virtual加入转发 ``` ``` 其中info@example.com 会转发到user1@example.net 创建hash文件 ``` postmap /etc/postfix/virtual ``` 在main.cf加入virtual_alias_maps参数 ``` virtual_alias_maps = hash:/etc/postfix/virtual ``` ### 联动dovecot 首先在dovecot中配置了LMTP套接字或监听服务 main.cf ``` virtual_transport = lmtp:unix:/var/run/dovecot/lmtp # 虚拟邮箱 mailbox_transport = lmtp:unix:/var/run/dovecot/lmtp # 非虚拟邮箱 ``` ## Gnu mailman GNU的邮件列表管理器 ```shell ``` ## postgres 连接数据库 ``` psql -U root ```