‘壹’ 怎样在linux下架设邮件服务器Sendmail
一.安装Sendmail 完全安装Red Hat Linux 9.0时,Sendmail就会自动内置,版本号为8.12.8-4。如果你不确定Linux是否已经安装有sendmail,可以输入以下命令查看: [root@ahpeng root] rpm–qagrep sendmail 如果确定没有安装,请在图形界面下依次选择单击“主菜单-系统设置-添加删除应用程序”,然后在打开的“软件包管理”窗口里选中“邮件服务器”选项,点“更新”后按照提示安装即可。 另一种办法是:直碧或接插悔贺伍入Linux第1张安装光盘,选择/RedHat/RPMS目录下的sendmail-8.12.8-4.i386.rpm安装包,之后运行[root@ahpeng RPMS] # rpm -ivh sendmail-8.12.8-4.i386.rpm即可开始安装,再用此方法在第3张安装光盘的同目录下依次安装sendmail-cf.8.12.8-4.i386.rpm、sendmail-doc. 8.12.8-4.i386.rpm。 二.启动Sendmail服务系统 笔者建议使用带参数的Sendmail命令控制邮件服务器的运行: [root@ahpeng root]#sendmail -bd –q12h -b:设定Sendmail服务运行于后台。 -d:指定Sendmail以Daemon(守护进程)方式运行。 -q:设定当Sendmail无法成功发送邮件时,就将邮件保存在队列里,并指定保存时间。上面的12h表示保留12小时。 此外,要检测Sendmail服务器是否正常运行,可以使用命令行: [root@ahpeng root]# /etc/rc.d/init.d/sendmail status。 三.配置Sendmail sendmail.cf的配置语法比较难懂,一般资料上都是采用m4宏处理程序来生成所需的sendmail.cf文件(使用m4编译工具一般不容易出错,还可避免某些带有安全漏洞的宏对服务器造成的破坏)。其配置文件位于/etc/mail/sendmail.cf,在创建的过程中还需要一个模板文件,Linux自带有一个模板文件,位于/etc/mail/sendmail.mc。故可以直接通过修改sendmail.mc模板来达到定制sendmail.cf文件的目的,而不必去死啃哪些难理解的配置命令。配置步骤为: 第一步:用模板文件sendmail.mc生成sendmail.cf配置文件,并导出到/etc/mail/目录下,使用命令行:m4 /etc/mail/sendmail.mc >/etc/mail/sendmail.cf 第二步:再用[root@ahpeng root] /etc/rc.d/init.d/sendmail restart命令行重启sendmail。 至此,邮件服务系统配置完成,已经正常工作。接下来拍返就是创建具体的帐户了。
‘贰’ Linux的邮件服务器
1 组建两台邮件服务器A与B与一台DNS,其中
A 192.168.100.102/24 有域名mail.rhce.com
B 192.168.100.101/24 有域名mail.example.com
DNS 192.168.100.98则A上有如下配置
/etc/mail/local-host-names 用于定义收搭亮坦发邮件的主机别名
# local-host-names - include all aliases for your machine here.
rhce.com #注:不可少,否则收不到邮键橘件,虽然可以发
mail.rhce.com #注:可不要/etc/mail/access #该文件用于限制哪些客户端可以使用此邮件服务器来转发邮件 (也可全不配,默认即是转发的)
rhce.com RELAY
example.com RELAY
192.168.100. RELAY
192.168.10. REJECT #设置拒绝转发192.168.10网段的邮件注:可以设置的选项还有 OK/REJECT/DISCARD/ERROR:550
B上有如下配置
/etc/mail/local-host-names (也可不配)
# local-host-names - include all aliases for your machine here.
example.com
mail.example.com/etc/mail/access
rhce.com RELAY
example.com RELAY
192.168.100. RELAY A和B均打开sendmail/dovecot服务 注:只有使用了dovecot才能使用Foxmail/OutLokk等通过POP3/IMAP协议接受邮件改/etc/mail/sendmail.cf 设置
O DaemonPortOptions=Port=smtp,Addr=0.0.0.0, Name=MTA
service sendmail restart 注:要在0.0.0.0上监听
service dovecot restart 注:此时查看是否打开了110/143端口,实际上还打开了993(IMAP-SSL)/995(POP3-SSL)端口;
双方分别设置192.168.100.98为dns的IP
此外双方均要用makemap hash access.db<access 生成访问许可库文件
另外双方的hostname与/etc/sysconfig/network中的知桐域名均要设为相应的域名DNS中的设置如下
如果DNS服务器也作为网关的话,DNS首先要打开ip转发功能;
named.confoptions {
directory "/var/named";
mp-file "/var/named/data/cache_mp.db";
statistics-file "/var/named/data/named_stats.txt";
};
include "/etc/rndc.key";zone "." {
type hint;
file "named.ca";
};zone "example.com" {
type master;
file "example.com.zone";
allow-transfer {
192.168.1.177;
192.168.7.17;
};
};
zone "rhce.com" {
type master;
file "rhce.com.zone";
allow-transfer {
192.168.1.177;
192.168.7.17;
};
};example.com.zone$ttl 38400
example.com. IN SOA dns.example.com. admin.example.com. (
2005090503 ;Serial
10800 ;Refresh
3600 ;Retry
604800 ;Expire
38400 ) ;Negative Cache TTL
example.com. IN NS dns.example.com.
rhel4 IN CNAME dns
bbs IN CNAME www
samba IN CNAME www
example.com. IN MX 5 mail
mail IN A 192.168.100.101
rhce.com.zone$ttl 38400
rhce.com. IN SOA dns.rhce.com. admin.rhce.com. (
2005090503 ;Serial
10800 ;Refresh
3600 ;Retry
604800 ;Expire
38400 ) ;Negative Cache TTL
rhce.com. IN NS dns.rhce.com.
www.rhce.com. IN A 192.168.100.29
rhel4 IN CNAME dns
bbs IN CNAME www
samba IN CNAME www
rhce.com. IN MX 5 mail
mail IN A 192.168.100.102 注:linux默认是不让用户用root用户登录邮箱的,可以换为alading或其它用户;
可以用 host -t mx example.com可以查询出example.com的MX记录 设置POP3S和IMAPS服务器都必须生成相应的密钥和证书; pop3端口110,imap端口143,pop3s端口995,imaps端口993;
服务器使用私钥加密邮件,客户端收邮件时,使用证书中的公钥对邮件进行解密,才能够正常读邮件;
制作私钥和自签名证书
cd /etc/pki/tls/certs/
make dovecot.pem #该文件保存邮件服务器的私钥和公钥信息;
vi /etc/dovecot.conf
将
ssl_cert_file = /etc/pki/dovecot/certs/dovecot.pem
ssl_key_file = /etc/pki/dovecot/private/dovecot.pem
改为
ssl_cert_file = /etc/pki/tls/certs/dovecot.pem
ssl_key_file = /etc/pki/tls/certs/dovecot.pem
service dovecot restart关于Foxmail的使用
1 默认情况下不可以登录到root的邮箱,但可以用于发送
2 如果普通用户不能登录到邮箱,用passwd 设置密码后,再打开foxmail的邮箱账户设置,设置邮件服务器里头的高级设置,点中SMTP与POP3的SSL连接再试试;TLS Transport Layer Security
PKI Public Key Infrastructure
‘叁’ linux上如何适应邮件服务器客户端
单击“开始”按钮,指向“所有程序”,指向“管理工具”,然后单击“POP3 服务”。在“POP3 服务”下面,在左侧树中单击“HQ-CON-DC-01”。单击“新域”链接,键入“contoso.com”作为“域名”,然后单击“确定”。
在右窗格中,双击“contoso.com”。在“HQ-CON-DC-01”下面,左窗格中的树将展开并显示“contoso.com”域。单击“添加邮箱”链接。在“添加邮箱”屏幕上,键入“mike”作为“邮箱名”,清除“为此邮箱创建相关联的用户”复选框,单击“确定”,在出现“POP3 服务”确认屏幕后,再次单击“确定”。
再次单击“添加邮箱”链接,重复步骤 5 为“Administrator”创建邮箱。
‘肆’ Linux 建邮件服务器
分类: 电脑/网络 >> 互联网
问题描述:
Linux 下怎么建邮件服务器?
或者用什么软件?
解析:
一、安装环境
安装平台:RedHat Linux 7.3
安装的机器: mail.mydomain
软件包:核氏
qmail-1.03 qmail基本系统
ucspi-tcp-0.88 tcpsever等服务程序
daemontools-0.76 监视工具
checkpassword-0.90 pop3验证用户的程序
软件来源:
qmail
cr.yp.to/
inter7/main
注意:每个包安装前务必先仔细阅嫌氏棚读INSTALL和FAQ,很多问题在FAQ都有解决方法。
二、安装步骤
1、准备工作
删除sendmail
# rpm -e --nodeps sendmail
2、安装qmail
1)创建qmail安装目录
#mkdir /var/qmail
2)添加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
3)解压、解包和编译
(假设这些包都下载到/tmp目录下)
#cd /tmp
#tar xzvf qmail-1.03.tar.gz
#cd qmail-1.03
进入qmail目录后,仔细阅读一下README和INSTALL文件.然后开始编译qmail
打DNS补丁
#vi dns.c
跳到24行将PACKETSZ改为65536
#make setup check
4)配置
#./config
或
#./config-fast mail.mydomain
5)建立系统别名
#(cd /var/qmail/alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root)
#chmod 644 ~alias/.qmail*
可以在这些别名文件中指定管理用户来接受这些系统邮件,如
#echo admin > ~alias/.qmail*
6)建立启动文件和用户的Maildir
说明:个人比较喜欢将Maildir改为.Maildir,以便列目录时隐藏掉
#cp -p /var/qmail/boot/home /var/qmail/rc
#chmod 755 /var/qmail/rc
编辑 /var/qmail/rc
修改其中./Mailbox成为./.Maildir以支持maildir的pop收信方式,如下:
# !/bin/sh
# Using splogger to send the log through syslog.
# Using qmail-local to deliver messages to ~/Maildir by default.
exec env - PATH="/var/qmail/bin:$PATH" qmail-start ./.Maildir
其中splogger qmail指令删除,以后改用芹则multilog
已存在用户建立maildir:
$ /var/qmail/bin/maildirmake ~/.Maildir
$ echo ./.Maildir/ > ~/.qmail
建立maildir的方法(对于后面要建立的用户):
# /var/qmail/bin/maildirmake /etc/skel/.Maildir
# echo ./.Maildir/ > /etc/skel/.qmail
7)删除临时目录
# rm -rf /tmp/qmail-1.03
3、安装ucspi-tcp-0.88
#tar zxvf ucspi-tcp-0.88.tar.gz
#cd ucspi-tcp-0.88
#make
#make setup check
执行文件将被安装在/usr/local/bin中。
4、安装checkpassword
#tar zxvf checkpassword-0.90.tar.gz
#cd checkpassword-0.90
#make
#make setup check
#chmod og-rx /bin/checkpassword
执行文件checkpassword将被安装在/bin中。
如果不对/etc/passwd中的用户开放mail,则不需要装checkpassword,而只要装vpopmail就行了。
5、安装daemontools
# mkdir -p /package
# chmod 1755 /package
# cd /package
# tar -xvzf daemontools-0.76.tar.gz
# cd admin/daemontools-0.76
# package/install
将/etc/inittab中最后一行的svscanboot注释掉
重启:# kill -HUP 1
说明:改inittab是个人喜好
6、建立 SMTP 转信规则
1) 建立 /etc/tcp. *** tp
内容为":allow"
# echo ":allow" > /etc/tcp. *** tp
此为接受任何Client端所发出子转送信件
若要拒绝某些IP所发出的Relay则修改 /etc/tcp. *** tp如下
192.10.10.:allow,RELAYCLIENT=""
127.:allow, RELAYCLIENT=""
如此,除192.10.10.*及127.*之外的所有地址,都将被拒绝转送信件。
2)转换tcp. *** tp成为cdb格式
#/usr/local/bin/tcprules /etc/tcp. *** tp.cdb /etc/tcp. *** tp.tmp < /etc/tcp. *** tp
注意:若对tcp. *** tp有任何变更,都必须经过tcprules转换成为cdb文件才会生效。
另外,tcp. *** tp若为空白,则表示拒绝所有的转送,因为预设的规则为deny。
至此,转送规则已建立,稍后将依此规则启动qmail- *** tpd。
7、建立启动系统服务脚本
1)建立LOG目录
# mkdir /var/log/qmail
# chown qmaill.nofiles /var/log/qmail
# mkdir /var/log/qmail/ *** tpd
# chown qmaill.nofiles /var/log/qmail/ *** tpd
# mkdir /var/log/qmail/pop3d
# chown qmaill.nofiles /var/log/qmail/pop3d
2)设定services
移除id.conf中有关 *** tp及pop3的设定(加上#号)
注:redhat7.3用xid代替id了,就不用改了
编辑/etc/services,确认以下设定(实际并不按下面的顺序):
*** tp 25/tcp mail
# pop-3 110/tcp #pop version 3
# pop-3 110/udp
pop3 110/tcp
pop3 110/udp
3)写send/ *** tpd/pop3d的supervise脚本run
# cd /var/qmail
# mkdir -p supervise/qmail-send/log
# mkdir -p supervise/qmail- *** tpd/log
# mkdir -p supervise/qmail-pop3d/log
# cd supervise/qmail-send
# ln -s /var/qmail/rc run
其它run内容如下:
qmail-send/log/run:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail
qmail- *** tpd/run:
#!/bin/sh
QMAILUID=`id -u qmaild`
QMAILGID=`id -g qmaild`
exec /usr/local/bin/tcpserver -v -p -x /etc/tcp. *** tp.cdb -u $QMAILUID -g $QMAILGID 0 *** tp /var/qmail/bin/qmail- *** tpd 2>&1
qmail- *** tpd/log/run:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/ *** tpd
qmail-pop3d/run:
#!/bin/sh
exec /usr/local/bin/tcpserver -v -R 0 pop3 /var/qmail/bin/qmail-popup mail.mydomain /bin/checkpassword /var/qmail/bin/qmail-pop3d .Maildir 2>&1
qmail-pop3d/log/run:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/pop3d
4)建自启动脚本/etc/init.d/qmail
内容如下:
#!/bin/bash
# cconfig: 2345 96 6
#
######################################################################
# Description: Script to control qmail process #
# File: /etc/rc.d/init.d/qmail #
######################################################################
# Setup environment for script execution
. /etc/rc.d/init.d/functions
PATH=$PATH:/var/qmail/bin:/usr/local/bin
export PATH
SVSCANPID="/var/run/svscan.pid"
stopQmail() {
if [ -f $SVSCANPID ]; then
kill `cat $SVSCANPID`
rm -f $SVSCANPID
fi
svc -dx /var/qmail/supervise/qmail-pop3d/log
svc -dx /var/qmail/supervise/qmail-pop3d
svc -dx /var/qmail/supervise/qmail- *** tpd/log
svc -dx /var/qmail/supervise/qmail- *** tpd
svc -dx /var/qmail/supervise/qmail-send/log
svc -dx /var/qmail/supervise/qmail-send
}
case "$1" in
start)
echo "Starting qmail/ *** tp/pop3 ..."
cd /var/qmail/supervise
env - PATH="$PATH" svscan &
echo $! > $SVSCANPID
;;
stop)
echo "Stoping qmail/ *** tp/pop3 ..."
stopQmail
;;
restart)
$0 stop
$0 start
;;
status)
;;
*)
echo "Usage: $0 {start|stop|status}"
exit 1
esac
exit 0
加入cconfig管理
# chmod 755 qmail
# cconfig -add qmail
运行ntsysv关闭或启动服务
三、tips
1、使用userName@mydomain形式的命名
# cd /var/qmail/alias
# echo mydomain >> locals
2、改密码
对于仅开放mail的用户可将shell改成passwd
# useradd -s /usr/bin/passwd userName
然后用tel改密码
3、qmail1.03有不少补丁,根据你的需要打吧。
说明:附件为我的/etc/init.d/qmail和supervise脚本run
‘伍’ LINUX下如何搭建邮件服务器
可以使用U-Mail邮件服务器
步骤如下:
1、下载U-Mail邮件系统forCentOS(6.X)一体盘
请去http://www.comingchina.com/html/downloads/下载U-Mail邮件服务器最新版本。
2、解析好域名,将域名的MX记录和的A记录解析到邮件服务器的IP地址。
MX记录和A记录解析方法参考:http://www.comingchina.com/html/faq/anzhuangzhongzhuangbeifen/954.html
如果是将邮件服务器放置在内网,通过端口映射的方式将外网IP的服务端口映射到内网,那么必须映射端口:25、110、80等。
3、将BIOS启动方式设置为光驱启动,并放入U-MailforCentOS(6.X)一体盘光盘
4、出现安装界面后,按回车键
5、设置TCP/IP参数(使用Tab键切换,空格键选择),选择如下图,按“OK”按钮。
‘陆’ linux里面怎样配置邮件服务器
Sendmail服务器配置
首先,在DNS正向解析上添加一个邮件交换器的名称
这里顺便把dns的测试也附上:
启动sendmail
正向主区域配置文件:
修改sendmail的配置文件
vi /etc/mail/sendmail.cf
改成
修改sendmail的配置文件
vi /etc/mail/sendmail.mc
去掉dnl
再添加两行
做输入重定向m4 /etc/mail/sendmail.mc>/etc/mail/sendmail.cf
编辑 /etc/mail/access
执行makemap hash /etc/mail/access.db </etc/mail/access
编辑vi /etc/mail/local-host-names把邮件服务器使用的域名给添加上去
重启sendmail服务
最后给[email protected]发送测试邮件
End。。。
‘柒’ linux mail服务器怎么用
一、概述:
在配置邮件服务器之前,先解释几个概念。
通常使用Email都很容易,但是Internet的邮件系统是通过几个复杂的部分连接而成的,对于最终用户而言,我们熟悉的Outlook,Foxmail等都是用来收信和发信的,称之为MUA:Mail User Agent,邮件用户代理。
MUA并非直接将邮件发送至收件人手中,而是通过MTA:Mail Transfer Agent,邮件传输代理代为传递,Sendmail和Postfix就是扮演MTA的角色。
一封邮件从MUA发出后,可能通过一个或多个MTA传递,最终到达MDA:Mail Delivery Agent,邮件投递代理,邮件到达MDA后,就存放在某个文件或特殊的数据库里,我们将这个长期保存邮件的地方称之为邮箱。
一旦邮件到达邮箱,就原地不动了,等用户再通过MUA将其取走,就是用Outlook,Foxmail等软件收信的过程。
所以一封邮件的流程是:
发件人:MUA --发送--> MTA -> 若干个MTA... -> MTA -> MDA <--收取-- MUA:收件人
MUA到MTA,以及MTA到MTA之间使用的协议就是SMTP协议,而收邮件时,MUA到MDA之间使用的协议最常用的是POP3或IMAP。
需要注意的是,专业邮件服务商都有大量的机器来为用户服务,所以通常MTA和MDA并不是同一台服务器,因此,在Outlook等软件里,我们需要分别填写SMTP发送服务器的地址和POP3接收服务器的地址。
Linux系统下邮件服务器的搭建(Postfix+Dovecot)
对于网站来说,发送各种例如注册通知的邮件是很基本的一个需求,之前我一直用的是腾讯的企业邮箱,感觉挺方便的,直接可以绑定QQ邮箱接收邮件,网站配置一下SMTP也就可以发出邮件。
但是在前几天由于有重要信息需要立即通知用户,所以选择了群发邮件的方式。在当我以为一切都是辣么完美的时候,陆续有用户过来问我什么情况,我都会跟他们说请查收邮件,但是有好几个人说并没有任何
邮件,于是我试着再发一次,结果返回了错误提示。在网上找了下原因,后来看到这个:各大免费邮箱邮件群发账户SMTP服务器配置及SMTP发送量限制情况,才知道是因为发信数量限制了。
所以只好另寻出路了,然后我在知乎上面找到了很多个提供邮件发送的服务商,大概有这些:SendGrid、MailChimp、Amazon SES、SendCloud、Mailgun等等,在看了不少人的建议之后,我选择了Mailgun。
Mailgun注册和配置都挺简单,很快我就成功的发出了第一封邮件,怀着这封欣喜,我又发送了几封邮件,可是悲剧发生在第三封邮件,Mailgun后台有详细的发送记录,这个非常不错,在后台我看到我的邮件被拒收了,原因大概是该服务器IP的发信频率超过腾讯邮箱限制。所以这里就涉及到IP的问题,目前第三方的邮件发送服务普遍都是共享IP(后面还试过SendCloud、),而共享IP并不能确定是否已经达到接收方的数量限制,一旦达到了就无法再发送。这就是说还需要使用独立IP才能保证邮件有较高的到达率,接着就看了各家的独立IP价格,一般都是二十几甚至四十几美刀一个月,这对于我们这种小站长邮件需求不高的来说确实有点贵,买台VPS都不用这个价吧。
经过上面这些折腾,也算明白了如果要想顺畅的发出邮件的话,除了花钱,就只有自己搭建一个邮件服务器了。
好了,下面开始进入正题,教你搭建一个简单的邮件服务器。
用于搭建的服务器信息
阿里云 Centos 6.5 32位
Postfix-2.8.12.tar.gz Postfix MTA(邮件传输代理)
Dovecot-2.1.8.tar.gz IMAP 和 POP3 邮件服务器
Postfixadmin-2.3.5.tar.gz 采用php编写的开源WEB邮箱及域名账号管理工具
Roundcubemail-0.8.1.tar.gz 采用php编写的开源IMAP邮件WEB客户端
安装过程
1.安装Postfix
yum -y install postfix
安装完成还需要替换系统自带的sendmail:
rpm -e sendmail
或者
yum remove sendmail
修改MTA(默认邮件传输代理)
alternatives --config mta
然后直接回车即可。
检查一下是不是已经设置成功了。
alternatives --display mta
第一行可以看到mta的状态。 例如:mat - status is manual.
2.安装Dovecot
yum -y install dovecot
3.配置Postfix
编辑/etc/postfix/main.cf,可以下载下来修改,也可以使用vi进行编辑:
vi /etc/postfix/main.cf
修改如下:
# 75行: 取消注释,设置hostname
myhostname = mail.lomu.me
# 83行: 取消注释,设置域名
mydomain = lomu.me
# 99行: 取消注释
myorigin = $mydomain
# 116行: 修改
inet_interfaces = all
# 119行: 推荐ipv4,如果支持ipv6,则可以为all
inet_protocols = ipv4
# 164行: 添加
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# 264行: 取消注释,指定内网和本地的IP地址范围
mynetworks = 127.0.0.0/8, 10.0.0.0/24
# 419行: 取消注释,邮件保存目录
home_mailbox = Maildir/
# 571行: 添加
smtpd_banner = $myhostname ESMTP
# 添加到最后
# 规定邮件最大尺寸为10M
message_size_limit = 10485760
# 规定收件箱最大容量为1G
mailbox_size_limit = 1073741824
# SMTP认证
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject
修改好了之后使用/etc/rc.d/init.d/postfix start开启postfix,使用chkconfig postfix on将postfix开机启动。
4.配置Dovecot
修改如下:
[root@mail ~]# vi /etc/dovecot/dovecot.conf
# 26行: 如果不使用IPv6,请修改为*
listen = *
[root@mail ~]# vi /etc/dovecot/conf.d/10-auth.conf
# 9行: 取消注释并修改
disable_plaintext_auth = no
# 97行: 添加
auth_mechanisms = plain login
[root@mail ~]# vi /etc/dovecot/conf.d/10-mail.conf
# 30行: 取消注释并添加
mail_location = maildir:~/Maildir
[root@mail ~]# vi /etc/dovecot/conf.d/10-master.conf
# 88-90行: 取消注释并添加
# Postfix smtp验证
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}
[root@mail ~]# /etc/rc.d/init.d/dovecot start
Starting Dovecot Imap: [ OK ]
[root@mail ~]# chkconfig dovecot on
到这里,我们的邮件服务器就已经搭建成功了。
5.域名解析
最后别忘了还需要进行域名解析工作。
添加一个子域名mail,A记录解析到服务器IP。
再添加一个MX记录,主机记录为空,记录值为上面解析的二级域名mail.lomu.me,优先级10。
注意:解析生效可能需要一段时间。
6.防火墙设置
/sbin/iptables -A INPUT -p tcp --dport 25 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 110 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 143 -j ACCEPT
突破封锁25口的转发
/sbin/iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10025 -j REDIRECT --to-ports 25
7.邮箱使用
一切都弄好以后,就可以使用Foxmail等第三方软件来收发邮件了。在这里需要说一下,系统用户就是邮件的用户,例如root,就是一个邮箱用户,邮箱是[email protected],密码就是root的密码,所以需要创建用户,只要使用useradd创建用户,再使用passwd设置密码。
好了,假如我们创建一个admin的用户:
# 创建用户
useradd admin
#设置密码,会要求输入两次密码
passwd admin
接下来登录Foxmail,如图:
点击创建,进入:
这里需要注意,邮件账号是admin,并不是邮箱,另外我们没有配置SSL,所以也不要勾选。 接下来点击创建,如果一切正常的话,你已经成功了。
‘捌’ 141Linux 安装及配置邮件服务器
效果截图
Sendmail :sendmail 是最古老的 MTA(Mail Transfer Agent,电子邮件系统)之一,最早它诞生的时候,Internet 还没有被标准化,当时主机之间使用的是 UUCP 技术来交换邮件。它被设计得比较灵活,便于配置和运行于各种类型的机器。
Qmail :qmail 是新生一代的 MTA 代表,它以速度快、体积小、易配置安装等特性而着称。作者 D.J.Bernstein 是一个数学教授,富有传奇色彩。他于 1995 年开发 qmail,1996 年发布 0.70 版,并使用了多种当时比较先进的 技术,包括 Maildir,与 sendmail 单个 binary 不同的模块化设计,权限分离,以及使用了大量由他编写的配套工具,如 daemontool,ucsip-tcp 等。qmai 迅速成为了 Internet 上最有名的 MTA,使用者众。
postfix :postfix 如今已经独树一帜,流水线、模块化的设计,兼顾了效率和功能。灵活的配置和扩展,使得配置 postfix 变得富有趣味。其主要的特点是速度快、稳定,而且配置/功能非常强大,并和 sendmail 类似,提供了与外部程序对接的 API/protocol。尤其是配置部分,postfix 另一个优势是至今依然保持活跃的开发工作,而且稳步发展,适合高流量大负载的系统,扩充能力较强。本实验也是基于 postfix 服务器软件来实现。
邮件服务器基本的工作原理
MUA(Mail User Agent):向外发送邮件,以及提供用户浏览与编写邮件的功能。
MTA(Mail Transfer Agent):(可以理解为 smtpd 服务器)帮忙将用户的邮件传递出去或接收进来。
MDA(Mail Delivery Agent):将接收下来的邮件存放到对应用户邮筒当中的程序。通过分析 MTA 所收到邮件的表头或内容,来判断此邮件是属于哪个用户,然后决定将此邮件投递给哪个用户的邮筒里。
MRA(Mail Retrieval Agent):通过 MRA 服务器提供的邮政服务协议(POP)来接收自己的邮件。
邮件中继:
SMTPD 要支持邮件路由功能,需要打开 Open Relay 开放式中继。
SMTPD 是根据收件人判断邮件是否需要中继,而且只给指定的客户端中继。
注:当 DNS 上存在多个 MX 记录的主机这时就是根据 DNS 的邮件级判断了。DNS 上定义的值越小,其优先级越高。辅助交换器接受到邮件并不能保存邮件。而是这个辅助交换器会等到主邮件交换器空闲的时候把代替它接受下来的邮件在转给主邮件交换器。所以任何邮件处理都是主邮件交换器处理的。所以我们实际情况下,如果有 2 台服务器做邮件交换器,性能比较高的应该为主的。
安装配置过程中,postfix 通过 Internet 发送和接收 email,并存储在用户邮箱里。同时客户也可以通过 IMAP 或者 POP3 恢复他们的邮件。其中的客户认证是通过 Courier Authdaemon 模块的。下图表示出了这个过程:
出现安装界面时,首先按下 <tab> 键切换到确定,然后按下回车。
安装 postfix 的时候会问你安装的服务器类型,对于我们的需要,我们选择默认的 Internet Site,这是最符合我们的服务器类型,然后按下回车确认。
使用 vim 编辑配置文件:
大概在第 31 行,编辑 myhostname,修改为 myhostname = shiyanlou.com。
然后我们把alias_map参数修改为 alias_maps = hash:/etc/postfix/virtual,之后会讲解virtual里面填写什么。
之后设置mynetworks段落,它定义可以使用这台服务器的主机,我们这里就用默认的本地地址。你也可设置为其他地址。
编辑完成后按下 Esc 键,输入 :wq 保存退出。
此命令创建了一个用户 master,其中 -d 和 -m 选项用来为登录名 master 产生一个主目录 /usr/master(/usr 为默认的用户主目录所在的父目录)。
我们编写之前设置的 virtual 文件,这些邮箱地址是用来传送邮件的。
在这个文件里,我们将设置一个表,对应相关的邮件地址。
完成后保存关闭文件。
我们可以通过调用下面这个命令来实现我们的映射:
接着我们重启 postfix,完成我们的修改:
我们可以用 shiyanlou 这个账号给 master 这个账号发一封邮件。首先我们需要安装一个命令行收发邮件的软件 mailutils 。
写一封邮件
输入如下内容:
其中 -s 参数是指邮件的标题,< 后面是将要发送的邮件内容从 hello.txt 中重定向。这个命令如果正确执行不会有输出。
然后我们切换到 master 用户,查看我们的邮件。
按下回车建可以查看邮件内容,输入 quit 即可退出邮箱。
Linux 邮件服务器原理介绍,编译安装 Postfix 实现本地的邮件服务
Ubuntu 服务器指南-邮件服务-Postfix
how-to-run-your-own-mail-server-with-mail-in-a-box-on-ubuntu-14-04
‘玖’ 怎么在Linux中搭建邮件服务器
兄弟,建议你使用U-Mail邮件服务器软件去搭建邮件服务器,安装很方便。U-mail在数千家企业单位应用需求基础上,做了大量改进,使之更加适合政府、教育、企事业集团和从事销售企业邮箱的网络服务商、集成商使用。历经十年的研发,U-Mail已成为国内唯一一款具有全球收发保证的邮件系统。无缝内嵌卡巴斯基杀毒引擎,是最强大的邮件反垃圾反病毒软件,终身使用免费升级,以高安全、高稳定性位居业界前列。
‘拾’ linux配置邮件服务器,提示外部主机关闭
这个问题可能是由于您的邮件服务器被配置为拒绝来自外部主机的连接所导致的。这是一种常见的安全措施,可以防止未经授权的访问和攻击。
要解决这个问题,您需要检查您的邮件服务器的配置文件,以确保它允许来自外部主机的连接。具体来说,您需要检查余陵以下配置项:
1. 检查您的邮件服务器是否配置为监听所有网络接口。您可以通过查看配置文件中的“bind”或“listen”选项来确定这一点。如果这些选项被设置为“localhost”或“127.0.0.1”,则您的邮件服务器只能接受来自本地主机的连接。
2. 检查您的防火墙设置,确保它们允许来自外部主机的邮件流量。您可以使用iptables或ufw等竖喊戚工具来配置防火墙规则。
3. 检查您的DNS设置,确保您的邮件服务器的MX记录已正确配置,并且可以从外部访问。
如果您已经检查了以上配置项,但仍然无法解决问题,则可能需要检查您的ISP是否封锁了SMTP端口(通常是25端口)。如果是这样,您可以尝试使用其他端口(如587)来发送邮件。
总之,要解决这个问题,渗塌您需要仔细检查您的邮件服务器的配置,并确保它可以从外部主机访问。