Qmail安装及设定

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

个人qmail安装及设定过程,希望对大家有用


1. 如何获得Qmail? 
    可以通过访问www.qmail.org或mirror站点下载qmail-1.03.tar.gz,以及获得 
  更多qmail的资料. 

2 安装Qmail 
  获得qmail-1.03.tar.gz后,用tar命令解包 
  #tar xzvf qmail-1.03.tar.gz 

  进入qmail目录后,仔细阅读一下README和INSTALL文件.然后开始编译qmail. 

2.1 建/var/qmail目录: 
   #mkdir /var/qmail 

2.2 按照INSTALL.ids中方法建立qmail用户和组: 

   # groupadd nofiles 
   # useradd -g nofiles -d /var/qmail/alias alias 
   # useradd -g nofiles -d /var/qmail qmaild 
   # useradd -g nofiles -d /var/qmail qmaill 
   # useradd -g nofiles -d /var/qmail qmailp 
   # groupadd qmail 
   # useradd -g qmail -d /var/qmail qmailq 
   # useradd -g qmail -d /var/qmail qmailr 
   # useradd -g qmail -d /var/qmail qmails 

2.3 make setup check 
2.4 阅读INSTALL.ctl和FAQ,配置qmail,最简单的方法是 
   #./config 
    或者 
   #./config-fast your.full.home.name 

2.5 建立系统别名 
   # (cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root) 
   # chmod 644 ~alias/.qmail* 

2.6 复制/var/qmail/boot/proc到/var/qmail/rc 
   # cp /var/qmail/boot/proc /var/qmail/rc 

2.7 开始测试Qmail投递程序 

    启动qmail: 
   # csh -cf '/var/qmail/rc &' 

    先查看一下/var/log/maillog,搜索 
   qmail: status: local 0/10 remote 0/20 
    qmail-send通常是输出"status"或者"cannot start"如果不能正常启动. 

    用ps监视一下qmail守护进程,应该有五个相关进程: 
     qmail-send,以qmails用户运行 
        qmail-lspawn,以root用户运行 
        qmail-rspawn,以qmailr用户运行 
        qmail-clean,以qmailq用户运行 
        splogger,以qmaill用户运行 

    本地Mail测试: 
  
    % echo to: me | /var/qmail/bin/qmail-inject 
    注意:要用你的用户名代替me 
    Mail应该立即出现在你的信箱之中./var/log/maillog中应该有如下记录: 
           qmail: new msg 53 
           qmail: info msg 53: bytes 246 from  qp 20345 uid 666 
           qmail: starting delivery 1: msg 53 to local me@domain 
           qmail: status: local 1/10 remote 0/20 
           qmail: delivery 1: success: did_1+0+0/ 
           qmail: status: local 0/10 remote 0/20 
           qmail: end msg 53 

    53是inode号,20345是进程号,你的数字应该有所不同. 

    本地错误测试: 

    给一个不存在的本地用户发信: 
   % echo to: nonexistent | /var/qmail/bin/qmail-inject 
           qmail: new msg 53 
           qmail: info msg 53: bytes 246 from  qp 20351 uid 666 
           qmail: starting delivery 2: msg 53 to local nonexistent@domain 
           qmail: status: local 1/10 remote 0/20 
           qmail: delivery 2: failure: No_such_address.__#5.1.1_/ 
           qmail: status: local 0/10 remote 0/20 
           qmail: bounce msg 53 qp 20357 
           qmail: end msg 53 
           qmail: new msg 54 
           qmail: info msg 54: bytes 743 from <> qp 20357 uid 666 
           qmail: starting delivery 3: msg 54 to local me@domain 
           qmail: status: local 1/10 remote 0/20 
           qmail: delivery 3: success: did_1+0+0/ 
           qmail: status: local 0/10 remote 0/20 
           qmail: end msg 54 
    你将立即收到弹回的信件. 

    远程投递测试: 向你在其他机器上的账户发信: 
   % echo to: me@wherever | /var/qmail/bin/qmail-inject 
           qmail: new msg 53 
           qmail: info msg 53: bytes 246 from  qp 20372 uid 666 
           qmail: starting delivery 4: msg 53 to remote me@wherever 
           qmail: status: local 0/10 remote 1/20 
           qmail: delivery 4: success: 1.2.3.4_accepted_message./... 
           qmail: status: local 0/10 remote 0/20 
           qmail: end msg 53 
    投递过程将在starting delivery和success中有个间断,SMTP传送是相对较慢的 
    然后去检查一下me@wherever是否正确收到email. 

    后面还有三个测试,分别测试本地postmaster,两次弹回mail和通过mail执行 
    命令.具体方法可以在TEST.deliver中找到. 

2.8 从Sendmail象Qmail转移. 

2.8.1 首先找到sendmail的启动程序,一般是在/etc/rc.d目录中 
      看上去象这样的命令: 
           sendmail -bd -q15m 
      将其注释掉. 

2.8.2 杀掉Sendmail进程. 
   如果sendmail有子进程,可以反复用-STOP和-CONT信号杀,直到没有 
      子进程后用-TERM后加-CONT杀就可以了. 

2.8.3 检查mail队列中是否还有信,如果认为有必要将他们发送出去,可以在 
      以后一段时间不定期的运行sendmail.bak -q直到队列清空. 

2.8.4 去掉sendmail等文件的setuid bit 
      # chmod 0 /usr/lib/sendmail 
      # chmod 0 /usr/sbin/sendmail 
      # chmod 0 /usr/lib/sendmail.mx 

2.8.5 
      # mv /usr/lib/sendmail /usr/lib/sendmail.bak 
      # mv /usr/sbin/sendmail /usr/sbin/sendmail.bak 

2.8.6 将 
      csh -cf '/var/qmail/rc &' 
      添加到启动文件中去. 

2.8.7 安装qmail的sendmail外壳: 
       # ln -s /var/qmail/bin/sendmail /usr/lib/sendmail 
       # ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail 

2.8.8 在/etc/inetd.conf中设置qmail-smtpd:(是一行) 
       smtp stream tcp nowait qmaild /var/qmail/bin/tcp-env 
       tcp-env /var/qmail/bin/qmail-smtpd 

2.8.9 重启动inetd,用-HUP信号杀inetd及可. 

2.9.1 使用qmail的maildir(这个问题麻烦我好几天) 

每个用户目录内:/var/qmail/bin/maildirmake /home/$LOGINNAME/Maildir 

2.9.2 这一步不做好象也可以
add a line to "/home/u user name/.bash_profile" 
MAIL=/home/$LOGINNAME/Maildir/ 
export MAIL 
2.9.3 pop3
www.qmail.org去下载checkpassword,(这个东西qmail不自带)并编译
inet.conf 中的pop-3
pop-3 stream tcp nowait qmaild /var/qmail/bin/qmail-popup mydomain 
.com /bin/checkpassword /var/qmail/bin/qmail-pop3d (在一行) 

2.9.4 rc文件 
cp /var/qmail/boot/home /var/qmail/rc
修改rc文件变成如下
exec env - PATH="/var/qmail/bin:$PATH" / 
qmail-start ./Maildir/ splogger qmail 


3 qmail的一些特殊配制 

3.1 如何设置Smart Host: 
         # echo ":your.smart.host" > /var/qmail/control/smtproutes 

3.2 为其它主机转信

在/var/qmail/control/rcpthosts添加
21cn.com
163.com 
 

3.3设置主机多个域名 

将名称加入/var/qmail/control/local,/var/qmail/control/rcpthosts
/var/qmail/control/me 

3.4 别名

本机不存的的进行转发
如:webmaster@my.com(webmaster用户本地不存在) 转发给user1@my.com(user1为
本地用户)
方法:
echo "user1">/var/qmail/alias/.qmail-webmaster  
或  
echo "user1@21cn.com">/var/qmail/alias/.qmail-webmaster    
完全的email地址

3.5 群发mailist

假如发信给list@my.com时同多人可编辑
/var/qmail/alias/.qmail-list内添加
user1
user2
user3
uu@21cn.com
ss@163.net
3.6 本地用户扩展

user1,q1,q2,qq为本地用户user1-s1,user1-s2,user1-xxx不是本地用户
设定发信给:user1-s1转为q1,user1-s2转为q2,
user1-21转为dd@21cn.com,user1-list转为dd@21cn.com,q1,q2,qq
user1-xxx(xxx表示其它名称)转为qq,
echo "q1">/home/user1/.qmail-s1
echo "qd@21cn.com">/home/user1/.qmail-21
echo "q2">/home/user1/.qmail-s2
echo "qq">/home/user1/.qmail-default
编辑/home/user1/.qmail-list内容为
dd@21cn.com
q1
q2
qq


3.7 如何设置虚拟主机 
如:
虚拟主机 ttt.com 设定 webmaster@ttt.com 转给本地用户tttweb
                 设定 help@ttt.com 转给外地用户help@other.com
                 设定 其它@ttt.com 转给本地用户tttother
方法: 
 (1)将虚拟主机ttt.com加入/var/qmail/control/local和/var/qmail/control/rcpthosts 
 (2) 然后在/var/qmail/control/virtualdomains中加入 
    your.virtual.domains:tttcom 
 (3) 加一个用户tttcom  
 adduser tttcom
    这样所有发往me@ttt.com都将以testcom-me@test.com 
    的形式发给testcom,
 (4) echo "tttweb">/home/testcom/.qmail-webmaster
     echo "help@other.com">/home/testcom/.qmail-help
     echo "tttother">/home/testcom/.qmail-default
 (5)从新启动qmail
3.8 抄送
如:发信给 user1@red.lx,同时抄送给user2,dd@21cn.com
方法:编辑/home/user1/.qamil 内容如下
./Maildir/
|forward  user2 dd@21cn.com

3.9 转信
user1@red.lx转向dd@163.net
方法:编辑/home/user1/.qamil 内容如下
dd@163.net
3.10 如何设置 qmail 为对外smtp服务器?(去掉转信和发信的限止)
去掉/var/qmail/control/rcpthosts文件
 

基于qmail的完整WEBMAIL解决方案安装教程(使用PHP) 在本教程中,我们将详细介绍如何安装基于qmail的完整WEBMAIL解决方案,并提供相应的源代码。现在,我们需要配置Web服务器以支持WEBMAIL。最后,我们需要编写Webmail应用。接下来,我们需要安装PHP及其相关依赖项。首先,我们需要安装qmail。打开Nginx配置文件(通常位于。步骤4:编写Webmail应用。步骤2:安装PHP和相关依赖。步骤3:配置Web服务器。步骤1:安装qmail 阅读详情

相关推荐

EZ-qmail - 开源邮件服务器的简易解决方案

本文还有配套的精品资源,点击获取 简介:EZ-qmail 为业余爱好者和小型企业提供了易于部署和管理的邮件服务器解决方案,降低了使用门槛并保持了开源软件的灵活性。通过集成防垃圾邮件和防病毒软件,提供简易安装、自动更新、集成功能和可扩展性,EZ-qmail 提升了qmail邮件传输代理的安全性和可靠性。此外,它提供了丰富的文档和社区支持,帮助用户应对各种邮件系统需求。 ...

weixin_35794316的博客 1883

Qmail系统完整篇

qmail邮件系统(一)Qmail系统的介绍和准备工作 1.1目的。 本文的目的,是用自由软件在一个Linux平台上安装一套功能完整的邮件系统,和如何来管理他。这里我以qmail作为smtp服务器,vpopmail做pop3服务器和实现虚拟域、用mysql数据库来进行用户验证,用qmailadmin来实现图形化的用户管理。用ezmlm来提供对邮件列表的支持。使用igenus来提供一个友善的w...

webcenterol 1145

Qmail下载、安装、配置(全程详解)

Qmail下载、安装、配置(全程详解) linux下的邮件服务器

Qmail的介绍和配置

qmail是一个因特网邮件传送代理(简写为MTA),它运行在linux/Unix兼容系统下,是一个直接代替UNIX下Sendmail软件的邮件传送程序。qmail使用SMTP协议与其它系统上的MTA交换邮件。 目录 介绍 总体架构 简单配置及使用 目录 过程 启动设置 介绍   作为Linux下面主...

weixin_33763244的博客 838

ubuntu-qmail安装配置详解(step by step)(1)

一、简介 Qmail的特点 安全性 为了验证Qmail的安全性,Qmail的支持者甚至出资$1000悬赏寻找Qmail的安全漏洞,一年以后,该奖金没有被领取,而被捐献给自由软件基金会。目前,Qmail的作者也出资$500来寻求Qmail的安全漏洞。 速度:Qmail在一个中等规模的系统可以投递大约百万封邮件,甚至在一台486一天上能处理超过10万封邮件,起支持并行投递。Qmail支持...

深未来技术 1083

qmail邮件系统(二)安装

(二)qmail+vpopmail+mysql+qmailadmin+ezmlm+igenus的安装 作者:peng 论坛ID:peng www.chinaunix.net QQ: 螃蟹 16360544 2.1实现的功能 通过以下安装,构建一个完整的mail邮件服务器。它用qmail为MTA,用vpopmail实现pop3服务和虚拟的邮件域。用mysql来存取用户信息和认证。用qmailadmi

NETOCOOL的专栏 2571

构建基于qmail的反病毒反垃圾邮件系统

第一部分:前 言 一. 版权信息 本文档的版权属于作者姜培军[peijun.jiang]所有。转摘时请附带本信息,并且保证本文档的完整性! 关于作者: 作 者:Peijun.Jiang 『姜培军』 邮件地址:peijun.jiang act tom.com 出没地方:www.chinaunix.net www.cnfug.org www.anti-spam.org.cn 开源UNIX系统爱好者,工

逸天的Blog 3937

CNFUG服务器实现过程

系统环境:FreeBSD 4.8 Stable(具体如何将系统升级到Stable我就不多说了,请参考FreeBSD的Handbook)Qmail安装路径/usr/local/qmail/Vpopmail安装路径/home/vpopmail/Apache安装路径/server/httpd/Forum路径/www/cnfug/forum/htdocs/Mail主页路径/www/cnfug/mail/h

aladingdcl的专栏 624

工作笔记:Qmail在Debian下的安装

  注:本文档是通过参考网络上的诸多文档,然后由公司的前辈结合安装过程整理出来的。QMAIL在DEBIAN下的安装 四川龙图科技有限公司版本:1.0EMAIL:mademini@gmail.com最后更新日期:2006-12-19 本文档全面介绍如何使用qmail在Linux上建造一个高性能的邮件服务器,如何用Vpopmail实现虚拟的邮件域,如何使用qma

4025

qmail+vpopmail+sqwebmail的安装

 qmail+vpopmail+sqwebmail是非常优秀的Web mail解决方案,本文将详细介绍具体的安装过程,希望可以帮助你顺利实现Web mail系统。   一. 安装环境   安装平台:RedHat Linux   安装的机器: mail.mydomain.com   软件包:   qmail-1.03 qmail基本系统   ucspi-tcp-0.88 tcpsever等服务程序

1687

安装和使用qmail中遇到的问题及解决

 1、问题:使用igenus(web)可以对任何信箱收发邮件,但使用outlook、foxmail可以收但发信报:服务器:553 sorry, that domain isnt in my list allowed rcpthosts。  解决:mv /var/qmail/control/rcpthosts /var/qmail/control/rcpthosts_bak 原因:

java_xinjun的专栏 1214

QMAIL控制文件详解

 2002-06-07 04:58 发布者:rainbow 阅读次数:941  文档 :QMAIL控制文件详解 做成日期 :2002.02.19 做成者 :姚遠方 (RainBow) 最终修正日 :2002.06.03 最终修正者 :姚遠方 (RainBow) ----------------------------------------------------------------- 目录

天行健 1712

qmail的发信三个问题

http://www.west263.com/www/info/64709-1.htm 1.qmail的发信三个问题。    2.对于发信的rcphosts文件答疑。    3.向合法用户发信无法forward。    4.QMAIL除了禁IP控制发邮件有其他办法吗?    5.smtp启动脚本疑问。    6.由relaying问题引起的qmail能收信不能发信问题解决。

whyhonest的专栏 1538

QMAIL LDAP HOWTO

QMAIL LDAP HOWTO 本HOWTO详细完整地介绍了如何用qmail和openldap构建一个高性能的、高可用性的、大容量的、可分布式的邮件系统。 由于整套系统对初涉及此领域的朋友来说是非常复杂的,涉及到了许多方面的相关知识,同时由于每人的系统的差异性,所以需要读者有比较扎实的至少以下几个方面的知识: 基本的网络知识 tcp/ip协议族的几个成员:smtp、pop3、http Lin

天行健 2645

qmail服务架设

安装qmail具体步骤: 需要的安装包,可从http://shupp.org/toaster/#download下载 mkdir /usr/local/src cd /usr/local/src wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz wget http://cr.yp.to/ucspi-...

weixin_33861800的博客 235

《Life with qmail》中Install部分的翻译

《Life with qmail》中Install部分的翻译2.qmail安装这部分用来指导qmail安装。如果你是经验丰富的系统管理员,你可以依据qmail源代码中的INSTALL文件中的安装向导来安装qmail.安装向导是qmail官方的安装向导,他们比 Lift with qmail中的安装向导复杂,并且,他们假定读者是经验丰富的系统和邮件管理员。另外,他们也是过时的并且不被B

lkman的专栏 1202

在Linux环境中安装Qmail的经历(转)

在Linux环境中安装Qmail的经历(转)[@more@]  安装平台:Linux  版本:qmail-1.03  安装的机器: mail.mydomain.com    软件包:  qmail-1.03 qmail基本系统 ...

339
上一篇: redhat9.0下安装qmail+igenus过程实录
下一篇: 使用PHP开发qmail邮件服务器管理系统
trip
博客等级 码龄24年 20粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值