首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 软件教学-> 其他工具
qmail+mh设计方案_qmail
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
那些想要为他们的EMAIL使用以上组合的用户,我归纳了一些安装经验来为他们提供某些帮助。我刚得到了一些新的关于LINUX管理信息,所以决定更新这期MINI-HOWTO。
  1.介绍

  什么是QMAIL?我们该怎样正确使用它?以下将给出一些解释说明。

  QMAIL是一个安全、可靠、高效、简洁的信息传送的代理。它现在完全替代了典型互联网上以unix作为平台的主机上发送-接收的系统。

  安全:安全不仅仅是一个目标,而且无疑是一个需要。用户对发送邮件的要求很高;它不能出一点差错,所以必须绝对安全可靠。(这就是我为什么开始使用QMAIL:我对其他的邮件发送系统的诸多安全漏洞感到非常不安。)

  可靠:QMAIL采用"straight-paper-path"的设计"哲理", 保证了一个信息一旦被系统接收,就永不丢失。QMAIL也支持MAILDIR功能,一个全新的、超稳定的用户邮箱格式。MAILDIRS,不像MBOX文件和MH文件夹在接收邮件时,如果系统出错会导致接收中断。更好的是,用户不仅可以安全的在NFS(网络文件系统)上读取他的邮件,而且与此同时,任何其他NFS的客户端也可以向他发送邮件。

  高效:在一个BSD/OS的PENTIUM机上,QMIAL每天可以轻易地支持200000的本地信息分开处理邮箱中信息的发送与接收!虽然DNS(域名服务器)和SMTP的远程发送原本就有速度慢的局限性,QMAIL可以在默认状态下同时发送20封邮件,所以相比下它能风驰电掣地快速通过邮件列表。(这就是我为什么使用QMAIL,我必须建立庞大的邮件列表。)

  简洁:QMAIL比其他任何互联网的MTA占用的空间都要小得多。这是因为:(1) 其他的MTA系统采用单独解析、匿名和邮件列表的机制。而QMAIL采用一个简化了的解析机制,它允许用户处理他们自己的邮件列表。(2) 其他的MTA是这样的发送模式:或者快速+不安全,或者缓慢+队列。而QMAIL,在队列中一旦有新消息的出现,就立即发送,所以QMAIL的发送模式只能是:快速+队列。(3) 其他MTA系统实际上包含了一个特别的inetd的版本,它能减少机器的负荷。而QMAIL的设计根本上减少了机器的负荷,因此QMAIL发送系统能在您的机器上安全运行。

  替代SENDMAIL的发送邮件:QMAIL支持主机和用户的匿名、完全隐藏主机、虚拟域名、无效客户、拥有者列表的重写、终继控制、可恢复的双重记录、严格的RFC 822地址列表、交叉主机邮件列表的循环侦测、每个接受端的检查点、出故障主机的备份恢复、独立进行信息的重试调度等等。简而言之,它在现代MTA中以快速的特点一枝独秀。QMAIL也包括可以透明地面对众多用户的发件箱。
 2.QMAIL的安装

  正确依照安装说明的步骤。

  注意:请花时间完整地阅读安装说明文件。在以上安装文件中有表示安装步骤的数字。

  2.1 Maildir2smtp

  Dan Bernstein已经提供了通过拨号向ISP发送一系列邮件的程序包。这个程序包用来作为从它的站点发送的系列邮件。

  这个程序包安装在此人(感谢Rupert Mazzucco(maz@pap.univie.ac.at))网页详细阐述,maildir2smtp - 通过SMTP发送一个maildir。maildir2smtp是设计用来在一个SLIP或者PPP链路上传递报文的。为了在无连接的终端建立maildir2smtp,用匿名创建一个新的maildir:


# maildirmake ~alias/pppdir
# chown -R alias ~alias/pppdir

:alias-ppp
加入
control/virtualdomains

./pppdir/
加入
~alias/.QMAIL-ppp-default

  不要忘了在pppdir/中附加的删减。然后,在PPP开始文本中,作如下操作:
  maildir2smtp ~alias/pppdir alias-ppp- $IP `hostname`

  把$IP替换为远端IP地址。

  注意:请完整地阅读正确操作的说明书。

  Maildir2smtp需要你邮件服务器的IP地址。如果你没有这个IP地址,你可以检测YourMail.host.country来返回你邮件服务器的IP地址。

  这个命令包含在你的登陆文本中,在你登陆到你的互联网服务提供商ISP后,刷新所有队列邮件。

  3.MH的安装

  除了这种设置外,我也把/mh-6.8.4/mts/sendmail/smail.c替换为Dan Bernsteins mh-QMAIL-smail.c。
  以下是我的mh-6.8.4/conf/MH设置。

bin /usr/bin/mh
etc /usr/lib/mh
#mail
#mandir /usr/man
#manuals standard
chown /bin/chown
#cp cp
#ln ln
#remove mv -f
cc gcc
ccoptions -traditional -O2 -m486 -D_NFILE=getdtablesize()
-DSIGEMT=SIGUSR1
curses -lncurses
#ldoptions -s
#ldoptlibs
lex flex
#oldload off
#ranlib on
mts sendmail
#mf off
#bboards off
#bbdelivery off
#bbhome /usr/spool/bboards
pop on
popdir /usr/lib/mh
sharedlib sys5
slflags -fPIC
slibdir /usr/lib
mailgroup mail
signal void
sprintf int
#editor prompter
#debug off
#regtest off
options ATHENA
options BIND
options DPOP
options DUMB
options FCNTL
options MHE
options MHRC
options MIME
options MORE="/usr/bin/less"
options OVERHEAD
options POP2
options POPSERVICE="pop3"
options RENAME
options RPATHS
options RPOP
options SOCKETS
options SVR4
options SYS5
options SYS5DIR
options TERMINFO
options UNISTD
options VSPRINTF
  注意:

  我只编译了在comp.mail.mh中的``mts sendmail,其中/smtp 会引起一些问题。Dominic Mitchell(hdm@demon.net)在comp.mail.mh (13 June 1997)中写道:"用这个选择,MH仍然可以通过一个管道,而不是网络用SMTP通话。你确实需要在你的/.mh_profile加入一行:

  postproc: /usr/local/nmh/lib/spost

  或者无论以什么方式存在于你的系统上,它都将以传统方式把报文直接传送到sendmail,你确实在使用QMAIL,因此sendmail将成为QMAIL的包文本,这就可以了。"

  3.1 mtstailor

  因为QMAIL发送又见到默认目录(~/Mailbox)。我把下列设置加入到我的mtstailor。

localname: mickey
localdomain: n.eunet.de
mmdfldir:
mmdflfil: Mailbox
uucpldir:
uucplfil:
mmdelim1: 01010101
mmdelim2: 01010101
mmailid: 0
umincproc:
lockldir:
sendmail: /usr/lib/sendmail

  注意:sendmail: /usr/lib/sendmail是连接到在/var/QMAIL/bin中的QMAIL SENDMAIL包的路径。

  MH不像音标符号(~/),而是使用/home或者根据文本默认的$HOME置空格。

  我最近在办公室里的一台连接到以太网电脑上安装了MH和QMAIL。我在mtstailor里加入了以下一行:

  servers: mailserver.company.country

  3.2 mh_profile

以下是我的.mh_profile设置
Path: Mail
draft-folder: drafts
unseen-sequence: unseen
AliasFile: /home/rdn/.mh_aliases
send: -msgid
comp: -form /home/rdn/.mymh-components
MailDrop: /home/rdn/Mailbox

  注意:我加入"收件箱"一行,为了保证邮件的接收.
 4.Fetchmail

  由于用户很多(我的整个家庭),所以我决定使用fetchmail。Linux 和 fetchmail把mail发送到接收 QMAIL的smtp port。

  安装应该没什么问题,按以下步骤便行。

fetchmailrc:
poll PersonalMail.Germany.EU.net
protocol pop3
username myname
password mypassword
# the next two lines do the trick for multidrop
localdomains mydomain.de
is * here
# T2 of the fetchmail FAQ states that QMAIL needs this
forcecr

  5.exmh

  这是我选择的mailer。我很喜欢它。

  只存在一个麻烦----大多数的高级汇编TCL/TK包裹编译了安全条款。而随着SuSE的出现,xserverrc在确保安全的前提下解决了这个麻烦。

#!/bin/sh
#
# move this file to ~/.xserverrc, if you don want to allow everybody to
# get access to your X-Server
#
if [ -x /usr/bin/keygen ]; then
if [ ! -x /usr/bin/hostname -a ! -x /bin/hostname
-a ! -x /usr/bsd/hostname ];
then
echo "startx: can get my hostname - exiting"
exit 1
else
host=`hostname`
fi
xauth add $host:0 . `/usr/bin/keygen`
sleep 2
xauth add $host/"unix":0 . `/usr/bin/keygen`
exec X :0 -auth .Xauthority $*
else
exec X :0 $*
fi

  6.Procmail

  QMAIL FAQ 有以下要求:

  In /.QMAIL add the line
  | preline procmail

  3.11per7 的版本改变了默认邮箱的一些内容。它以前在config.h文件中,而现在在src/authenticate.c文件中:

  #define MAILSPOOLHOME "/Mailbox" /* watch the leading / */
  /* delivers to $HOME/Mailbox */

  我精简合并了一些comp.mail.mh 和 comp.mail.misc的内容放在procmailrc 文件中,感谢各位提出宝贵意见!
 #这是为新手准备的SAMPLE.PROCMAILRC 文件
  #由Catherine Hampton(ariel@best.com)编写
  #版本1.1
  #更新日期1/25/98
  #
  #向公众免费发放
  #
  #
  #SET VARIABLES
  #Internal Variables
  #以下经rdn 于19980303修改
  #有关人士称SHELL的工作环境是高效率的

  SHELL=/bin/sh (Shell用来运行procmail。确信你的系统已经备份。不要用其他的shell替换除非你对UNIX了如指掌。)

  LINEBRF=4096 (用来不让Procmail在长时间运行后或在处理特殊邮件时出现窒息现象。)

  PATH=$HOME/bin:/bin:/usr/bin:/usr/local/bin:/usr/bin/mh:/usr/lib/mh: (你程序的路径----这一项空缺可能最好)

  VERBOSE=off (如果你选"on",那么Procmail 将对所执行的每一步都检测错误。注意,不要选择"on",因为它会生成一个很庞大的检测文件。)

  #默认程序和文件定位

  MAILDIR=$HOME/Mail (你最好确信这个目录存在。)

  DEFAULT=$HOME/Mailbox (Best Internet上的默认情况是2-5个shell邮箱的使用者。个人可以按自身的不同为系统选择正确的设置。)

  LOGFILE=$MAILDIR/procmail.log (检测信息的处理,推荐照此设定----否则出错信息会mail给你。)

  FORMAIL=/usr/bin/formail (非常有用的自动回复技巧。如果你不在Best Internet上,更改formail系统拷贝上的此项信息自动回复邮件。)

  SENDMAIL=/usr/sbin/sendmail (非常有用的自动回复技巧。如果你不在Best Internet上,更改  sendmail系统拷贝上的此项信息自动回复邮件。)

  Procmail 是一个非常优秀的文档程序。请无比仔细阅读以上内容作为参考来设置你的procmailrc文件。

  7.ISDN

  尽管此项看似与与QMAIL或mh有关,我还是整理了。因为若你的ISP没有PPP线就根本无email可言。我在使用我的ISDN中遇到了相当大的麻烦。SusE包含一个专门为ISDN准备的部分,但我想更简单些。以下材料是由Bernhard Hailer更新的。
  以下的的rc.config文件装载了初始化的必要组元。

#!/bin/bash
# This is adapted Bernhard Hailers old script
LOCAL_NUMBER="91311234" # tel no. 091311234
REMOTE_NUMBER="0911123456" # ISP tel no.
LOCAL_IP="192.168.0.99" # I have dynamic IP so this will do
REMOTE_IP="195.112.123.11" # your ISPs gateway
DEVICE="ippp0"
SYSPATH="/sbin"
ISDNCTRL="$SYSPATH/isdnctrl"
case "$1" in
start)
# turn on isdn
insmod /lib/modules/2.0.33/net/slhc.o
insmod /lib/modules/2.0.33/misc/isdn.o
sleep 1
# load the hisax module
insmod /lib/modules/2.0.33/misc/hisax.o
id=Tel0 type=5 protocol=2 irq=10 io=0x300
echo "starting isdn4linux"
# global
$ISDNCTRL verbose 0
$ISDNCTRL addif $DEVICE # create new interface
$ISDNCTRL addphone $DEVICE in $REMOTE_NUMBER
$ISDNCTRL addphone $DEVICE out $REMOTE_NUMBER
$ISDNCTRL eaz $DEVICE $LOCAL_NUMBER
$ISDNCTRL l2_prot $DEVICE hdlc
$ISDNCTRL l3_prot $DEVICE trans
$ISDNCTRL encap $DEVICE syncppp
$ISDNCTRL huptimeout $DEVICE 300
$ISDNCTRL chargehup $DEVICE off
$ISDNCTRL secure $DEVICE on
$SYSPATH/ifconfig $DEVICE $LOCAL_IP pointopoint $REMOTE_IP metric 1
$SYSPATH/route add default $DEVICE
$SYSPATH/ipppd /dev/ippp0 file /etc/ppp/options.ipppd %26amp;
$SYSPATH/route del default



;;
stop)
#turn off isdn
rmmod hisax.o
sleep 1
rmmod isdn.o
rmmod slhc.o
echo "Shutting down isdn4linux"
$ISDNCTRL delif ippp0
;;
*)
echo "Usage: $0 (start|stop)"
exit 1
;;
esac


我用以下技巧拨号,它被称为简洁的isdn on|off



#!/bin/bash
# This is based on an old script from Bernhard Hailer


IP_ADDRESS="195.112.123.11"


case "$1" in
on)


echo "Calling ippp0"
/sbin/isdnctrl dial ippp0
# the sleep is important as it gives the PPP time to settle down
echo "Sleep for 8s for PPP handshake"
sleep 8s
/sbin/route add default ippp0
echo "line open - checking...."


# check whether PPP negotiation was successful:
set `ping -qc3 -i1 $IP_ADDRESS 2>/dev/null | grep transmitted`
if [ $4 -gt 0 ];
then
echo "succeeded."
echo "Starting fetchmail daemon"
/usr/bin/fetchmail -d 600 -k -v -a -L /var/log/fetchmail
echo "Flushing mail queue...."
/usr/local/bin/serialmail/maildir2smtp
~alias/pppdir alias-ppp- mail.server.ip.no `hostname`
else
echo "failed!"
/sbin/isdnctrl hangup ippp0
fi


;;


off)
echo -n "Shutting down fetchmail daemon"
/usr/bin/fetchmail --quit


/sbin/isdnctrl hangup ippp0
/sbin/route del default # and delete route
echo "You e off line"
;;


*)
echo -e "aUsage:"
echo "isdn on"
echo "isdn off"
;;


esac


接下来的是 ipppd选项文件/etc/ppp/options.ipppd
#基于:
#Klaus Franken,kfr@srse.de
#版本:27。08。97 (5。1)
#
#该文件由YaST在/etc/ppp/ioptions.YaST 拷贝至optiongs.



user"myrserid"


#我的系统名(只在CHAP上使用!)
# name my_system_name
#从peer处得到IP地址
ipcp-accept-local
ipcp-accept-remote
noipdefault


#试着从interface处得到IP地址
#ipppd的特定选项(比如与pppd的冲突)
#只能使用静态IP
#useifip


#把所有的header-compression都设为disable
-vj
-vjccomp
-ac
-pc
-bsdcomp
#有时你需要这个:
#noccp


#最大接受数
mru 1524
#最大传送数
mtu 1500
#如果你的机器是服务器,就要求签证以下未注释的条项。然而,如果你的机器是客户机,做了以上的事就不会成功连接!(信息将提示"peer refused to authenticate"即peer 拒绝签证)所以,只有在服务器上对于未注释的部分做以下步骤:
# "+pap" / "+chap" NUR AKTIVIEREN, WENN DIES EIN SERVER IST!!!
#+pap
#+chap
#如果你对handshaking有什么问题(比如第一次lcp-package没响应)可以试试减少重试次数,默认情况下是3 sec,试试2 sec:
# lcp-restart 2

,
文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·用javascript调用webservice(webservice behavior)-ASP教程,ASP应用
·Java中对文件的操作-JSP教程,Java技巧及代码
·VB.net进阶:VB.net下的Sniffer-.NET教程,VB.Net语言
·如何利用VB.NET修改系统时间-.NET教程,VB.Net语言
·电源技术与电子变压器
·解析几种有效开关电源电磁干扰抑制
·教你完全卸载智能abc输入法
·电源系统中多个子系统之间电磁兼容
·ASP.net 2.0 自定义控件的开发之数据分页 第一章-.NET教程,Asp.Net开发
·VS2005新控件之GridView 使用高级技巧系列[二][视频]-.NET教程,评论及其它
最新文章
·3000ip以下网站该如何赚钱_网赚技巧
·谈谈我的下载站日ip5000 月收入3000的经验_站长心得
·photoshop绘制逼真的自然背景:山间瀑布_photoshop教程
·删掉系统文件 让windows vista少占用我们的硬盘_windows vista
·突出网页内重要内容保证adsense匹配准确_网赚技巧
·借台电脑办网站—访深圳外来工站长姚永卫_站长访谈
·创建优秀网站的6个好习惯_站长心得
·做一个网站 营造氛围有多重要?_站长心得
·如何让网民爱上你的网站?(3)_站长心得
·专家支招域名安全“三原则”有效规避域名掠夺_站长心得
相关主题
  • qmail+vpopmail+mysql+qmailadmin+ezmlm+igenus构建企业邮局_qmail
  • qmail邮件系统安装(freebsd 3.4)_qmail
  • qmail邮件系统下防止滥用mail relay完全解决方案_qmail
  • qmail使用smtp发信的设置问题集_qmail
  • qmail+vpopmail邮件过滤(练习篇)_qmail
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭