为Postfix添加TLS支持

近来邮件服务器上暴破的机器人越来越多,居然还破了几个用户的密码,用来发送垃圾邮件,好贱!琢磨着怎么改进一下这种情况,但是除了限制访问频率,似乎没有别的好方法,顺便把smtp和pop3都改为了ssl支持,也就是smtps和pop3s。

由于原有的邮件系统架设于courier-imap+postfix,所以启用pop3s是很简单的事情,两步操作即可:

1,生成crt:/usr/local/share/courier-imap/mkpop3dcert,执行完成后,会在当前目录生成一个被叫做pop3d.pem的文件。

2,启动courier-imap-pop3d-ssl即可,当然了,同时关闭掉courier-imap-pop3d。

接下来我们启用postfix的smtps,首先当然是生成crt,由于postfix要求有CA crt,所以呢,不能生成一个self-verification的crt,必须先整一个CA,这个流程和之前生成Openvpn证书的类似,这里就不多说了。

证书生成之后呢,我们添加一点点配置到postfix的main.cf里面:

#################TLS Support################
smtp_use_tls = yes
smtpd_use_tls = yes
smtpd_tls_auth_only = no
smtp_tls_CAfile = /usr/local/etc/postfix/certs/cacert.pem
smtp_tls_cert_file = /usr/local/etc/postfix/certs/servercert.pem
smtp_tls_key_file = /usr/local/etc/postfix/certs/serverkey.pem
smtpd_tls_CAfile = /usr/local/etc/postfix/certs/cacert.pem
smtpd_tls_cert_file = /usr/local/etc/postfix/certs/servercert.pem
smtpd_tls_key_file = /usr/local/etc/postfix/certs/serverkey.pem
smtpd_tls_received_header = yes
smtpd_tls_loglevel = 3
smtpd_starttls_timeout = 60s

然后还需要修改一下master.cf,在smtp监听那一行下面,添加smtps的监听:

smtps inet n – n – – smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject

最后,重启一下postfix,设置客户端就可以了,465和995哦亲!不要设置错了哦亲!

使用负载均衡技术建设高负载的网络站点

Internet的快速增长使多媒体网络服务器,特别是Web服务器,面对的访问者数量快速增加,网络服务器需要具备提供大量并发访问服务的能力。例如 Yahoo每天会收到数百万次的访问请求,因此对于提供大负载Web服务的服务器来讲,CPU、 I/O处理能力很快会成为瓶颈。

简单的提高硬件性能并不能真正解决这个问题,因为单台服务器的性能总是有限的,一般来讲,一台PC服务器所能提供的并发访问处理能力大约为1000个,更 为高档的专用服务器能够支持3000-5000个并发访问,这样的能力还是无法满足负载较大的网站的要求。尤其是网络请求具有突发性,当某些重大事件发生 时,网络访问就会急剧上升,从而造成网络瓶颈,例如在网上发布的克林顿弹劾书就是很明显的例子。必须采用多台服务器提供网络服务,并将网络请 求分配给这些服务器分担,才能提供处理大量并发服务的能力。

当使用多台服务器来分担负载的时候,最简单的办法是将不同的服务器用在不同的方面。按提供的内容进行分割时,可以将一台服务器用于提供新闻页面,而另一台 用于提供游戏页面;或者可以按服务器的功能进行分割,将一台服务器用于提供静态页面访问,而另一些用于提供CGI等需要大量消耗资源的动态页面访问。然而 由于网络访问的突发性,使得很难确定那些页面造成的负载太大,如果将服务的页面分割的过细就会造成很大浪费。事实上造成负载过大的页面常常是在变化中的, 如果要经常按照负载变化来调整页面所在的服务器,那么势必对管理和维护造成极大的问题。因此这种分割方法只能是大方向的调整,对于大负载的网站,根本的解 决办法还需要应用负载均衡技术。

负载均衡的思路下多台服务器为对称方式,每台服务器都具备等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。然后通过某种负载分担技术,将外部 发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器都独立回应客户机的请求。由于建立内容完全一致的Web服务器并不复杂,可以使 用服务器同步更新或者共享存储空间等方法来完成,因此负载均衡技术就成为建立一个高负载Web站点的关键性技术。 Continue reading 使用负载均衡技术建设高负载的网络站点