<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DevOps技术分享 &#187; EXTMAIL</title>
	<atom:link href="http://www.showerlee.com/archives/tag/extmail/feed" rel="self" type="application/rss+xml" />
	<link>http://www.showerlee.com</link>
	<description>与你共同学习运维开发</description>
	<lastBuildDate>Mon, 19 Oct 2020 05:51:41 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.6</generator>
		<item>
		<title>EXTMAIL增加FCGI支持</title>
		<link>http://www.showerlee.com/archives/307</link>
		<comments>http://www.showerlee.com/archives/307#comments</comments>
		<pubDate>Sat, 24 Aug 2013 05:23:53 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[MAIL]]></category>
		<category><![CDATA[EXTMAIL]]></category>
		<category><![CDATA[FCGI]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=307</guid>
		<description><![CDATA[为extmail增加FCGI的支持，主要是为了获得优异的web效能，克服CGI不能应付大量访问及低效率的缺陷。 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">为extmail增加<a href="http://www.showerlee.com/archives/tag/fcgi" title="查看FCGI中的全部文章" class="tag_link">FCGI</a>的支持，主要是为了获得优异的web效能，克服CGI不能应付大量访问及低效率的缺陷。根据我们的测试，CGI模式下的页面效率只有<a href="http://www.showerlee.com/archives/tag/fcgi" title="查看FCGI中的全部文章" class="tag_link">FCGI</a>下的1/10~1/100，因此建议有条件的用户还是使用<a href="http://www.showerlee.com/archives/tag/fcgi" title="查看FCGI中的全部文章" class="tag_link">FCGI</a>。日后</span><a href="http://wiki.extmail.org/extmail"><span style="font-size:14px;font-family:Arial;color:#333333;">ExtMail</span></a><span style="font-size:14px;font-family:Arial;color:#333333;">Solution的web CGI程序将全部都支持<a href="http://www.showerlee.com/archives/tag/fcgi" title="查看FCGI中的全部文章" class="tag_link">FCGI</a>。</span>
</p>
<p>
	
</p>
<p>
	
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">Extmail开发团队花了大量时间重新设计了<a href="http://www.showerlee.com/archives/tag/fcgi" title="查看FCGI中的全部文章" class="tag_link">FCGI</a> server的进程管理模型，并参考了apache的机制，新版dispatch.fcgi 终于可以象apache一样定义max server数，min server（启动进程数）以及每进程服务次数，每进程执行时限等，可较好的利用系统cpu/内存资源，既保证不多占内存，又可保证请求数上升时能有足够进程数服务。</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">就我们搜索发现，目前网上还没有开源版的</span><a href="http://wiki.extmail.org/fastcgi"><span style="font-size:14px;font-family:Arial;color:#333333;">FastCGI</span></a><span style="font-size:14px;font-family:Arial;color:#333333;">&nbsp;server能实现上述自适应负载功能（例如php-fpm还未实现，POE等也未实现），所以Extmail的dispatch.fcgi也许是第一个实现了这个功能。</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">mod_fastcgi 是针对Apache Web服务器的<a href="http://www.showerlee.com/archives/tag/fcgi" title="查看FCGI中的全部文章" class="tag_link">FCGI</a>支持模块</span><br />
<span style="font-size:14px;font-family:Arial;color:#333333;"> 下载地址：&nbsp;</span><a href="http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz"><span style="font-size:14px;font-family:Arial;color:#333333;"><a href="http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz" rel="nofollow">http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz</a></span></a>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">安装mod_fastcgi ：</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;"></span>
</p>
<div>
<div>
<p>
			<span style="font-size:14px;font-family:Arial;color:#333333;">shell</span>
		</p>
<div>
			<span style="font-size:14px;font-family:Arial;color:#333333;"># wget&nbsp;</span><a href="http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz"><span style="font-size:14px;font-family:Arial;color:#333333;"><a href="http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz" rel="nofollow">http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz</a></span></a><br />
<span style="font-size:14px;font-family:Arial;color:#333333;"> # tar xfz mod_fastcgi-2.4.6.tar.gz</span><br />
<span style="font-size:14px;font-family:Arial;color:#333333;"> # cd mod_fastcgi-2.4.6</span><br />
<span style="font-size:14px;font-family:Arial;color:#333333;"> # cp Makefile.AP2 Makefile</span>
		</div>
<div>
			<span style="font-size:14px;font-family:Arial;color:#333333;"># yum install make -y</span>
		</div>
<div>
			<span style="font-size:14px;font-family:Arial;color:#333333;"># yum install httpd-devel -y</span><br />
<span style="font-size:14px;font-family:Arial;color:#333333;"> # make top_dir=/usr/lib64/httpd/ install</span>
		</div>
</p></div>
</div>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">安装perl-<a href="http://www.showerlee.com/archives/tag/fcgi" title="查看FCGI中的全部文章" class="tag_link">FCGI</a> 除了Apache需要FCGI的支持外，extmail也需要相应的perl-FCGI模块。</span>
</p>
<div>
<div>
<p>
			<span style="font-size:14px;font-family:Arial;color:#333333;">shell</span>
		</p>
<div>
			<span style="font-size:14px;font-family:Arial;color:#333333;"># yum install perl-FCGI</span>
		</div>
</p></div>
</div>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">配置虚拟主机：</span>
</p>
<p>
	
</p>
<p>
	
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">shell</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;"># vi /etc/httpd/conf/vhost_extmail.conf</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">#增加内容如下：</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">LoadModule&nbsp;fastcgi_module&nbsp;modules/mod_fastcgi.so&nbsp;&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">&lt;Ifmodule&nbsp;mod_fastcgi.c&gt;&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">FastCgiExternalServer&nbsp;/usr/bin/dispatch.fcgi&nbsp;-host&nbsp;127.0.0.1:8888&nbsp;-idle-timeout&nbsp;240&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">&lt;/Ifmodule&gt;&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">#同时，去掉如下行：&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">#ScriptAlias&nbsp;/extmail/cgi/&nbsp;/var/www/extsuite/extmail/cgi/ &nbsp;&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">#在去掉之行下方添加：&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">Alias&nbsp;/extmail/cgi/&nbsp;/usr/bin/dispatch.fcgi/&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">&lt;Location&nbsp;"/extmail/cgi"&gt;&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">SetHandler&nbsp;fastcgi-script&nbsp;</span>
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">&lt;/Location&gt;&nbsp;</span>
</p>
<p>
	
</p>
<p>
	
</p>
<p>
	
</p>
<p>
	<span style="font-size:14px;font-family:Arial;color:#333333;">重启Apache和fastcgi server开机自启动：</span>
</p>
<div>
<div>
<p>
			<span style="font-size:14px;font-family:Arial;color:#333333;">shell</span>
		</p>
<div>
			<span style="font-size:14px;font-family:Arial;color:#333333;"># service httpd restart</span><br />
<span style="font-size:14px;font-family:Arial;color:#333333;"> # /var/www/extsuite/extmail/dispatch-init start</span><br />
<span style="font-size:14px;font-family:Arial;color:#333333;"> # echo '/var/www/extsuite/extmail/dispatch-init start' &gt;&gt; /etc/rc.d/rc.local</span>
		</div>
</p></div>
</div>
<p>
	
</p>
<p>
	
</p>
<p></p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/307">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="EXTMAIL增加FCGI支持" href="http://www.showerlee.com/archives/307">http://www.showerlee.com/archives/307</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/307/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extmail修改模板</title>
		<link>http://www.showerlee.com/archives/304</link>
		<comments>http://www.showerlee.com/archives/304#comments</comments>
		<pubDate>Sat, 24 Aug 2013 05:19:02 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[MAIL]]></category>
		<category><![CDATA[EXTMAIL]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=304</guid>
		<description><![CDATA[1 修改文件：/var/www/extsuite/extmail/html/default/index.htm [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="font-family:微软雅黑;font-size:10pt;">1 修改文件：/var/www/extsuite/extmail/html/default/index.html<br />
设定默认域名<br />
&lt;TD&gt;&lt;INPUT TYPE="text" class="input_n" NAME="domain" value="example.com"&gt;&lt;/TD&gt;<br />
其中的domain和example.com随自己实际情况进行更改。<br />
POP3和SMTP设置信息提示&nbsp;&nbsp;&nbsp;<br />
POP3 &lt;b&gt;:&lt;/b&gt;&amp; nbsp;&amp; nbsp;pop3.yourdomain.com&lt;br /&gt;<br />
SMTP &lt;b&gt;:&lt;/b&gt;&amp; nbsp;&amp; nbsp;smtp.yourdomain.com&lt;br /&gt;<br />
技术支持和自愿捐助连接，用&lt;!-- --&gt;注释掉。<br />
&lt;div class=donate&gt; &lt;a href="http://www.extmail.org/support/&lt;%LANG%&gt;/index.html" target="_blank"&gt; &lt;b&gt;&lt;%support_link%&gt;&lt;/b&gt;&lt;/a&gt; | &lt;img style="vertical-align: middle" src=\'#\'" /extmail/images/donate.png"&gt; &lt;a<br />
2 修改文件：/var/www/extsuite/extmail/webmail.cf<br />
去除免费注册<br />
修改位置：SYS_SHOW_SIGNUP = 1<br />
修改结果：SYS_SHOW_SIGNUP = 0<br />
去掉网络磁盘功能<br />
修改位置：SYS_NETDISK_ON = 1<br />
修改结果：SYS_NETDISK_ON = 0<br />
3 更换logo标志<br />
修改文件：/var/www/extsuite/extmail/html/default/images/logo.gif<br />
修改内容：替换成需要的Logo图片文件<br />
4 修改文件：/var/www/extsuite/extmail/lang/zh_CN<br />
修改位置：<br />
%lang_login = (<br />
meta_title =&gt; '欢迎使用ExtMail'</p>
<p>修改位置：<br />
%lang_login = (<br />
intro2 =&gt; '&lt;b&gt;快速而可靠&lt;/b&gt;&lt;br /&gt;引入索引缓存(Cache)技术和高效核心，WebMail操作疾步如飞',<br />
intro3 =&gt; '&lt;b&gt;多语言同屏读写&lt;/b&gt;&lt;br /&gt;全面支持UTF8，实现同屏读写多国语言，真正做到国际邮、无乱码',<br />
intro4 =&gt; '&lt;b&gt;真正模板化设计&lt;/b&gt;&lt;br /&gt;MVC设计+高速模板引擎，实现了内容数据完全分离，轻松修改模板',<br />
intro5 =&gt; '&lt;b&gt;高性能I/O&lt;/b&gt;&lt;br /&gt;;轻松应付&gt;1GB邮箱/200M附件，远强于流行的各式php webmail',</p>
<p>修改位置：<br />
%lang_login = (<br />
wsplash =&gt; '快速可靠, 高性能I/O<br />
开源MAIL开足马力迈进中...',</p>
<p>修改位置：<br />
%lang_login = (<br />
welcome_index =&gt; '欢迎使用ExtMail!'<br />
5 修改文件：/var/www/extsuite/extmail/html/default/TOP_BAN.html<br />
注释掉<br />
href="http://www.extmail.org/support/&lt;%LANG%&gt;/about.html"&gt;&lt;%about%&gt;&lt;/a&gt; | &lt;a target=_blank href="http://www.extmail.org/support/&lt;%LANG%&gt;/help.html"&gt;&lt;%help%&gt;&lt;/a&gt;&lt;/span&gt;<br />
6修改文件：/var/www/extsuite/extmail/html/default/BOTTOM.html<br />
&lt;div id="Bcr"&gt;Powered by &lt;%VERSION%&gt; ? 2006 ExtMail.Org Runtime: &lt;%TIME%&gt;&lt;br&gt;<br />
&lt;%extmail_whatis%&gt;&lt;/div&gt;<br />
上面内容可以根据页面底部的显示信息对比修改。<br />
7 修改文件：/var/www/extsuite/extmail/html/default/welcome.html<br />
去掉项目新闻 注释掉下面内容<br />
&lt;div style="padding-left: 5px;padding-right:5px"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;div class="panelout" id="etnews_div"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;div class="paneltit"&gt;&amp;nbsp;ExtMail Project News&lt;/div&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;div class="panelin" id="etnews_container"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/div&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/div&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;script type="text/javascript"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;etnews_init();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/script&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/div&gt;<br />
8 更换原天气预报代码<br />
更换掉原来的这段代码<br />
&lt;TD&nbsp;&nbsp;width=230px valign=top style=""&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;div class="panelout" id="coolweather_div"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;div class="paneltit"&gt;&amp;nbsp;&lt;%weatherinfo%&gt;&lt;/div&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;div class="panelin" id="coolweather_container"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/div&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;script type="text/javascript"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;coolweather_iconspath = '/extmail/plugins/coolweather/icons/';<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;coolweather_init();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/script&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/div&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TD&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TD width=10px&gt;&lt;/TD&gt;<br />
新的代码为<br />
&lt;TD&nbsp;&nbsp;width=230px valign=top style=""&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;iframe src=\'#\'" //www.thinkpage.cn/weather/weather.aspx?c=BU5CI&amp;l=&amp;p=CMA&amp;a=1&amp;u=C&amp;s=1&amp;m=1&amp;x=1&amp;d=3&amp;fc=&amp;bgc=&amp;bc=" frameborder="0" scrolling="no" width="200" height="260" allowTransparency="true"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/iframe&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/TD&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TD width=10px&gt;&lt;/TD&gt;<br />
以上是extmail相关界面的模板修改，个人认为extman界面只是管理员使用，不建议修改模板了。</p>
<p>[[i] 本帖最后由 syhandwork 于 2009-9-14 09:58 编辑 [/i]]</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="font-family:微软雅黑;font-size:10pt;"><strong>syhandwork</strong>发表于 2009-9-14 09:59</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="font-family:微软雅黑;font-size:10pt;">三防火墙的相关设置<br />
先下介绍下常用的命令：<br />
[root@tp ~]# service iptables restart<br />
[root@tp ~]# service iptables stop<br />
[root@tp ~]# service iptables start<br />
更改配置文件/etc/sysconfig/iptables (如果之前没有开启防火墙，不会有iptables文件，需运行命令启动防火墙便会生成此文件)<br />
原则是input,forward默认drop，output默认acceput。<br />
然后开启ping DNS 相应服务端口。<br />
#头两行是注释说明<br />
# Firewall configuration written by system-config-securitylevel<br />
# Manual customization of this file is not recommended.<br />
#使用filter表<br />
*filter<br />
#下面四条内容定义了内建的INPUT、FORWAARD、ACCEPT链，还创建了一个被称为RH-Firewall-1-INPUT 的新链<br />
:INPUT DROP [0:0]<br />
:FORWARD DROP [0:0]<br />
:OUTPUT ACCEPT [0:0]<br />
:RH-Firewall-1-INPUT - [0:0]<br />
#下面这条规则，所有发往INPUT、forward链上的数据包将跳转到RH-Firewall-1 //链上。<br />
-A INPUT -j RH-Firewall-1-INPUT<br />
-A FORWARD -j RH-Firewall-1-INPUT<br />
#下面这条规则将被添加到RH-Firewall-1-input链。它可以匹配所有的数据包其中流入接口（-i）//是一个环路接口(lo)。<br />
-A RH-Firewall-1-INPUT -i lo -j ACCEPT<br />
#定制相应的规则<br />
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT<br />
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT<br />
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT<br />
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT<br />
COMMIT<br />
上面的语句只做了--dport连接，这是因为-A RH-Firewall-1-INPUT只针对了input和forward这两项，而output在上面也经默认为accept，如果output默认规则为drop，那一条规则我们需要两条语句来完成，一条是input的dport，一条是output的sport，则还需再加一句类似的规则。<br />
-A output -m state --state NEW -m tcp -p tcp --sport 25 -j ACCEPT</p>
<p>[[i] 本帖最后由 syhandwork 于 2009-9-14 10:13 编辑 [/i]]</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="font-family:微软雅黑;font-size:10pt;"><strong>syhandwork</strong>发表于 2009-9-14 10:25</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="font-family:微软雅黑;font-size:10pt;">四垃圾邮件防护<br />
我使用的是slockd+Dspam<br />
对于slockd，主要编辑黑白名单，及RBL<br />
1 blacklist&nbsp;&nbsp;黑名单，这项里只能写域名<br />
whitelist&nbsp;&nbsp;&nbsp;&nbsp;白名单，这项里只能写域名<br />
sender_blackist 黑名单，这项里即可写域名也可以对某域里某一用户。<br />
sender_whitelist 白名单，同上。<br />
recip_whitelist<br />
recip blacklist<br />
黑白名单配置文件路径 /usr/local/slockd/config/<br />
黑白名单的编辑方法可以用正值表达式。编辑时格式：/正值表达式/<br />
如里直接写就是普通表达式<br />
2 RBL<br />
vi /usr/local/slockd/config/plugin.cf<br />
少数RBL可能拦截过于敏感，建议只使用以下的RBL<br />
zen.spamhaus.org<br />
bl.spamcop.net<br />
3 关于启动slockd的命令，EMOS1.4集成的slockd可以不重启，修改即时生效。<br />
/usr/local/slockd/slockd-init start<br />
这里我还闹了一个笑话，在测试黑白名单时，明明已经在黑名单里把163设值了，结果还是可以正常通信，无论正值表达式还是普通表达式都无效果，最后一看白名单才明白，系统默认就已经在白名单里加了好多正规邮箱域名了，白名单是先于黑名单起作用的，所以大家测试时一定要细心，不要再犯这样类似的错。还有我上面提到的黑白名单不同的效果，大家千万不要在blacklist文件里去编辑形如<a href="mailto:emos@extmail.org">emos@extmail.org</a>的表达式，它只支持域的形式extmail.org，若是要编辑<a href="mailto:emos@extmail.org">emos@extmail.org</a>那只能在 sender_blacklist文件里去设置，还有所有的正值表达式都是用/表达式/的形式，不用/把内容括起来就被认为普通表达式。</p>
<p>关于DSPAM方面，我没有太多的研究，只是参照了论坛中的帖子，链接如下<br />
[url]http://www.extmail.org/forum/redirect.php?tid=11250&amp;goto=lastpost#lastpost[/url]</p>
<p>[[i] 本帖最后由 syhandwork 于 2009-9-14 10:44 编辑 [/i]]</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="font-family:微软雅黑;font-size:10pt;"><strong>syhandwork</strong>发表于 2009-9-14 11:06</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="font-family:微软雅黑;font-size:10pt;">五是EMOS的备份<br />
1 邮箱的账号及密码邮件用户的用户名,密码,过期时间,邮箱容量等信息都存放在mysql数据库中ExtMail使用的库是extmail库<br />
2 用户的邮件内容 /home/domains<br />
鉴于邮箱账号等信息，文件不是很大，我选择了先用mysqldump备份数据库到某一目录下，每天晚上备份一次，只保留最近5天的备份，然后再通过 rsync把这些文件同步到固定文件服务器上去。关于用户邮件内容文件肯定会较大，我不在本地压缩保留几天的备份了，直接用rsync同步到文件服务器。</p>
<p>mysql本地备份脚本back_mysql.sh文件，<br />
NowTime=`date +%Y_%m_%d`<br />
preTime=`date +%Y_%m_%d --date="-5 day"`<br />
Directory=/back/mysql<br />
mkdir -p $Directory&nbsp;&nbsp;&nbsp;&nbsp;#-p的作用是可以建多级目录<br />
mysqldump -uroot -ppasswd extmail &gt; $Directory/extmail_$NowTime.sql&nbsp;&nbsp;# -u和-p后不要跟空格，若是备份所有库文件可以--all-database<br />
rm -rf $Directory/extmail_$pretime.sql&nbsp;&nbsp;#-rf强制并琢级删除文件或文件夹<br />
默认建立的脚本没有执行权限，所以要用命令对其赋权。<br />
chmod back_mysql.sh 764</p>
<p>然后添加计划任务，定义每天运行一次，<br />
运行crontab -e命令添加任务计划:<br />
40 01 * * * /back/mysql/back_mysql.sh</p>
<p>解释:<br />
*号之间是有空格的<br />
01 1 * * *&nbsp;&nbsp;此5个"*"的意思. 第一个是分钟,取值范围0-59<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;第二个是小时,取值范围0-23<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;第三个是天,取值范围1-31<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;第四个是月,取值范围1-12<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;第五个是周,取值范围0-6(0表示是周日)<br />
上面的内容就已经可以达到每天在/back/mysql目录下自动备份邮箱用户名及密码相关信息了，并可以保持最近5天的记录。接下来就是要用rsync来同步备份的内容到其它服务器了。</p>
<p>rsync的配置:<br />
rsync分服务端和客户端,在这里服务端就是运行Extmail服务的服务器,客户端就是备份Extmail数据的服务器.<br />
服务端的配置:<br />
1.&nbsp;&nbsp;编辑 /etc/xinetd.d/rsync文件,<br />
将rsync文件中的<br />
disable = yes&nbsp;&nbsp;改成&nbsp;&nbsp;disable = no<br />
保存退出.<br />
2.&nbsp;&nbsp;编辑rsyncd.conf文件,此文件可能没有,需要新建(=号的两边一定要有空格，否则无效)<br />
编辑 /etc/rsyncd.conf文件,在此文件中添加:<br />
uid = root&nbsp;&nbsp;&nbsp;#运行RSYNC守护进程的用户<br />
gid = root&nbsp;&nbsp;&nbsp;#运行RSYNC守护进程的组<br />
use chroot = no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#不使用chroot<br />
max connections = 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# 最大连接数为4<br />
strict modes = yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#是否检查口令文件的权限<br />
port = 873&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#默认端口873</p>
<p>&nbsp;&nbsp;&nbsp;#模块参数<br />
[mail]&nbsp;&nbsp;#这里是认证的模块名，在client端需要指定<br />
path = /home/domains&nbsp;&nbsp;#需要做镜像的目录,不可缺少！<br />
ignore errors&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#可以忽略一些无关的IO错误<br />
read only = yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# 只读<br />
list = no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#不允许列文件<br />
auth users = beifen&nbsp;&nbsp;#认证的用户名，如果没有这行则表明是匿名，此用户与系统无关<br />
secrets file = /etc/rsyncd.pas&nbsp;&nbsp;#密码和用户名对比表，密码文件自己生成<br />
#下面的设置可以选用，因为这些安全设置完全可以在防火墙中来实现。<br />
hosts allow = 192.168.0.254,10.10.10.10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#允许主机<br />
hosts deny = 0.0.0.0/0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#禁止主机</p>
<p>[mysql]<br />
path = /back/mysql<br />
ignore errors&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#可以忽略一些无关的IO错误<br />
read only = yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# 只读<br />
list = no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#不允许列文件<br />
auth users = beifen&nbsp;&nbsp;#认证的用户名，如果没有这行则表明是匿名，此用户与系统无关<br />
secrets file = /etc/rsyncd.pas&nbsp;&nbsp;#密码和用户名对比表，密码文件自己生成<br />
保存退出.<br />
3. 编辑/etc/rsyncd.pas文件,此文件是rsyncd的密码文件,里面只存放了用户名和密码<br />
,在这里是beifen用户和密码,此文件内容:<br />
beifen:123456<br />
保存退出.<br />
权限：因为rsyncd.pas存储了rsync服务的用户名和密码，所以非常重要。要将rsyncd.pas设置为root拥有, 且权限为600。<br />
#cd /etc<br />
#chown root.root rsyncd.pas&nbsp;&nbsp;#如果属主属组本身就是root，这步可以省略。<br />
#chmod 600 rsync.pas<br />
因rsync使用了873端口,因此我们需要在服务端上打开873端口,否则客户端连接不上.<br />
到此,服务端的配置就完了.</p>
<p>让配置生效<br />
#service xinetd restart<br />
如果rsync不能同步的话，可以用这个命令来启动rsync为server模式启动<br />
#/usr/bin/rsync –daemon<br />
设置开机自动启动rsync<br />
编辑<br />
vi /etc/rc.d/rc.local<br />
在文档未尾加入service xinetd start</p>
<p>服务端配置就已经成功了，我们来配置客户端，我的是windows系统，配置如下，<br />
安装完成之后，记下安装路径，先点"我的电脑"属性——设置环境变量，对path增加安装路径下的bin目录，要加；号。这样可以在CMD窗口中任意目录下调用rsync命令。然后建立一个批处理文件，内容是同步目标服务器上的文件到本地目录。Password.txt是验证文件，其中只有密码同上的 rsync.pass<br />
下面命令".\test8\"用的是相对命令，一定是相对命令，切记。先用命令进入备份目录的上级目录，然后再用相对命令。<br />
rsync -vzrtopg --progress --delete --password-file="/cygdrive/C/Documents and Settings/Administrator/password.txt</span></p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/304">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="Extmail修改模板" href="http://www.showerlee.com/archives/304">http://www.showerlee.com/archives/304</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/304/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
