当前设置:
我在电子邮件服务提供商公司工作。
2.我们有多个邮件服务器,我们使用qmail进行邮件传送。
3.每台服务器为多个客户端托pipe多个不同的域。
4.每台服务器单独工作。
5.最终用户使用qmail-pop服务从服务器和qmail-smtp服务获取邮件发送邮件。
6.每个客户端都使用自己的URL连接到服务器。
例如Mithi Software将使用指向我们的邮件服务器的mailxf.mithi.com 。
需求:
我想为最终用户启用qmail-pop3s服务,以便他们可以通过安全通道连接到服务器。
挑战:
据我所知,qmail-pop3s服务只接受单一的SSL证书。 由于我们有多台客户端托pipe在一台服务器上,每台客户端都提供了自己的证书 我想使用所有这些证书,以便所有的客户端可以访问POPS服务。
预期结果:
我们所有的客户端都应该能够通过安全通道访问qmail-pop3s服务,并且有单独的URL(SSL证书中的CN)。
你在找什么叫做Server Name Indication ,在rfc3546 section 3.1定义。
我不相信qmail支持SNI。 但是,如果它是针对和适当的TLS库进行编译的话。 邮件客户端也必须支持SNI。 我不知道有没有这样做,但这不是我以前看过的东西。
如果所有的名字都是域名的子域名,那么使用通配符证书是可行的。 那就是mail-company1.example.com , mail-company2.example.com , sntp-company1.example.com等等。
不要以为这是完全可能的。 在这种情况下,邮件服务器或pop3d不能事先知道用户正在连接什么特定的域,以便为该单一通信select适当的证书。
由于不可能使用单个证书,因此一个想法是为每个客户端设置多个pop3d实例,每个实例都监听不同的端口(995,996等),以便每个客户端都可以拥有自己的SSL证书。