如果您的工作场所或学校使用Microsoft Exchange发送电子邮件,您可能希望从不支持Exchange协议的电子邮件客户端访问您的Exchange电子邮件帐户。DavMail提供了一种解决方案,将Microsoft Exchange转换为开放协议,如POP,IMAP,SMTP,Caldav,Carddav和LDAP。如果需要直接使用邮箱服务的话,可以使用腾讯云提供的企业邮箱(EXMAIL),这个是为企业量身订造的一套办公用邮箱系统。
在CentOS 6上安装DavMail需要添加第三方存储库。下载.repo文件并更新您的yum缓存:
sudo curl -o /etc/yum.repos.d/home:marcindulak.repo http://download.opensuse.org/repositories/home:/marcindulak/CentOS_CentOS-6/home:marcindulak.repo
sudo yum update
然后,用yum安装DavMail:
sudo yum install davmail
您必须安装一个额外的软件包,以便init脚本正常运行:
sudo yum install redhat-lsb-core
DavMail的配置文件位于/etc/davmail.properties
。在您喜欢的文本编辑器中打开它:
sudo nano /etc/davmail.properties
将DavMail设置为服务器模式,然后就可以不需要X11:
davmail.server=true
启用远程模式并将绑定地址设置为您的IP地址或将其设置为空白:
davmail.allowRemote=true
davmail.bindAddress=
在Outlook Web App / Outlook Web Access URL设置davmail.url
,通常以/owa
结尾:
davmail.url=https://yourcompany.com/owa
DavMail使用的默认端口是非标准端口,您可能希望更改它们以简化设置电子邮件客户端的过程。要将DavMail配置为使用SSL加密的IMAP和SMTP的默认端口,请更改davmail.imapPort
和davmail.smtpPort
选项:
davmail.imapPort=993
davmail.smtpPort=465
保存并关闭配置文件。
要启用SSL加密,您需要PEM格式的SSL证书和SSL私钥。如果您从证书颁发机构购买了证书,那么您应该已经拥有证书和密钥。如果是这样,请继续下面的配置SSL部分。否则,您可以按照以下步骤生成自签名证书。
使用OpenSSL生成RSA密钥:
sudo openssl genrsa -out /etc/pki/tls/private/davmail.key 2048
确保密钥由root用户持有,并且权限设置正确:
sudo chown root:root /etc/pki/tls/private/davmail.key
sudo chmod 600 /etc/pki/tls/private/davmail.key
现在,创建证书签名请求:
sudo openssl req -new -key /etc/pki/tls/private/davmail.key -out /etc/pki/tls/certs/davmail.csr
OpenSSL现在会问你几个问题。唯一重要的字段是Common Name,它应设置为您的电子邮件客户端将访问的域名或IP地址(例如davmail.mydomain.com或123.123.123.123)。只需按Enter即可将其他字段保留为默认值,或者可以填写任何字段:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:US
State or Province Name (full name) []:New York
Locality Name (eg, city) [Default City]:New York City
Organization Name (eg, company) [Default Company Ltd]:Lolcats United
Organizational Unit Name (eg, section) []:Keyboard Cat Department
Common Name (eg, your name or your server's hostname) []:mydomain.com
Email Address []:me@mydomain.com
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
使用您的私钥签署证书请求,使用-days参数设置过期日期:
sudo openssl x509 -req -signkey /etc/pki/tls/private/davmail.key -in /etc/pki/tls/certs/davmail.csr -out /etc/pki/tls/certs/davmail.crt -days 365
进行上述设置之后,证书将在365天(一年)后到期。
您现在拥有自己的SSL证书啦!
既然您已获得SSL证书,您需要将其转换为DavMail能够读取的格式。以下示例将使用我们在上面生成的密钥和证书。如果您从证书颁发机构购买了证书,则使用这些文件代替davmail.key
和davmail.crt
。
首先将证书和密钥文件与cat结合使用:
sudo cat /etc/pki/tls/private/davmail.key /etc/pki/tls/certs/davmail.crt > /etc/pki/tls/certs/davmail.pem
再一次,设置权限,以便只有root用户才能访问密钥文件:
sudo chown root:root /etc/pki/tls/certs/davmail.pem
sudo chmod 600 /etc/pki/tls/certs/davmail.pem
现在将组合密钥和证书转换为pkcs12文件:
openssl pkcs12 -export -in /etc/pki/tls/certs/davmail.pem -out /etc/pki/tls/certs/davmail.p12 -name “davmail”
系统将提示您输入导出密码。这不能是空白的!您必须设置密码,否则DavMail将无法正常工作。
设置权限:
sudo chown root:root /etc/pki/tls/certs/davmail.pem
sudo chmod 600 /etc/pki/tls/certs/davmail.pem
现在再次打开您的DavMail配置:
sudo nano /etc/davmail.properties
添加以下配置选项,以通知DavMail您刚刚生成的pkcs12文件的位置以及您设置的密码:
davmail.ssl.keystoreType=PKCS12
davmail.ssl.keystoreFile=/etc/pki/tls/certs/davmail.p12
davmail.ssl.keyPass=password
davmail.ssl.keystorePass=password
由于Linux系统的工作方式,我们使用的端口(993和465)需要root权限才能打开。这意味着DavMail必须以root身份运行。默认情况下,随DavMail程序包一起提供的init脚本启动Davmail作为“davmail”用户,并且无法启动我们的配置。这可以通过对init脚本的一个小调整来修复。
制作默认初始化脚本的副本:
sudo cp /etc/init.d/davmail /etc/init.d/davmail-root
在您喜欢的文本编辑器中打开副本:
sudo nano /etc/init.d/davmail-root
在start()
函数搜索以su -davmail开始的行,用root替换davmail。该行现在应该如下所示:
[...]
su - root -s /bin/sh -c "exec nohup $DAVMAIL_HOME/davmail $DAVMAIL_CONF >> $LOGFILE 2>&1 &"
[...]
保存并关闭文件。使用修改后的init脚本启动DavMail:
service davmail-root start
最后,配置DavMail以开机自启:
chkconfig davmail-root on
现在服务器正在运行,您已准备好配置电子邮件客户端。使用电子邮件客户端的“手动”选项创建新帐户。IMAP和SMTP服务器都将是您的域名或IP地址,具体取决于您在SSL证书上使用Common Name的内容。IMAP和SMTP的用户名都是没有域名的电子邮件地址。示例:您的电子邮件是<bob@yourcompany.com>
,因此您的用户名是bob。*确保IMAP和SMTP都设置为使用SSL/ TLS而不是 * STARTTLS。
您现在应该能够使用Microsoft Exchange电子邮件帐户发送/接收电子邮件啦!
参考文献:《How To Setup DavMail on CentOS 6》
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。