❶ linux邮件服务器搭建
使用postfix(提供smtp服务)、squirrelmail(提供web方式收发邮件)、dovecot(IMAP、pop3)、cyrus-imapd(创建邮箱用户)、saslauthd软件来实现。 (注意:在安装linux的时候,把防火墙和selinux设为禁止,我当时没把selinux设为禁止,当时头都做大了) 1。sendmail把系统的25和110端口给占用了,所以先要将sendmail服务停止并卸载: service sendmail stop rpm -e sendmail 2.postfix服务的搭建与配置 一:首先要挂载光盘 mount /dev/cdrom /mnt 二:安装postfix rpm -ivh /mnt/Server/postfix... 三:配置postfix vi /etc/postfix/mail.cf(建议把里面的内容全删了) #myhostname = mail.fu.com #mydomain = fu.com #myorgin =$mydomain #inet_interfaces =all #mydestination =$myhostname,$mydomain #mynetworks = 192.168.1.0/24,127.0.0.0/8 #relay_domains = fu.com 四:开启postfix service postfix start chkconfig postfix on 3.smtp安装配置(发邮件的) 一:安装smtp rpm –ivh /mnt/Server/cyrus-sasl…. 二:配置smtp vi /etc/sysconfig/saslauthd #socketdir=/var/run/saslauthd #mech=shadow 三:开启smtp service saslauthd start chkconfig saslauthd on 四:配置/etc/postfix/main.cf(一定要按照顺序配置main.cf,别一下把main.cf全配了,不能你的postfix是启动不了的) smtpd_sasl_auth_enable =yes smtpd_sasl_local_domain =’’ smtpd_recipient_restrictions =permit_mynetworks, sermit_sal_authenticated,reject_unauth_destination(注意这行和上一行是一起的,是连在一起的,假如这样分段写postfix启动会失败的 我上次就犯了这种错误,能后用冒泡的方法找出来的) broken_sasl_auth_clients = yes smtpd_client_restrictions = permit_sasl_authenticated smtpd_sasl_security_options = noanonymous mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp 五:记得要重启postfix service postfix restart 4.devecot安装(这是pop3接收邮件的) 一:安装devecot yum install dovecot*(yum安装下次会说) 二:配置dovecot(配置文件/etc/dovecot.conf) protocols = pop3 pop3s; protocol pop3 { listen = *:10100 }; 三:启动dovecot service dovecot start chkconfig dovecot on 四:安装cyrus-imapd 要安装的包cyrus-imapd-perl-2.3.7-7.el5.i386.rpm cyrus-imapd-utils-2.3.7-7.el5.i386.rpm cyrus-imapd-2.3.7-7.el5.i386.rpm cyrus-imapd-devel-2.3.7-7.el5.i386.rpm 配置/etc/postfix/main.cf mailbox_transport =lmtp:unix:/var/lib/imap/socket/lmtp 五:cyrus-imapd服务开启(这个服务开启很多人会忘记,一定要记得) /etc/init.d/cyrus-imapd restart 五:为邮箱增加用户 #passwd cyrus /usr/bin/cyradm –u cyrus localhost createmailbox user.fu user.fu.Send(发邮件) user.fu.Trash(垃圾邮件) user.fu.Drafts(草稿箱) 5.web收发邮件(squirrelmail) php-mbstring-5.1.6-23.2.el5_3.i386.rpm squirrelmail-1.4.8-5.el5_3.7.noarch.rpm 一:进入配置/usr/share/squirrelmail/config/conf.pl 6.在DNS上配置(mail.fu.com)(下次会讲怎么用DNS解析) 7.安装apache rpm –ivh /mnt/Server/httpd 能后进入主配置文件把servername mail.fu.com就行了 在浏览器的地址栏里输入 http://mail.fu.com/webmail
❷ 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怎么搭建邮箱服务器
阿里云 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
这里需要注意,邮件账号是admin,并不是邮箱,另外我们没有配置SSL,所以也不要勾选。 接下来点击创建,如果一切正常的话,你已经成功了。
❹ sendmail 在linux 中如何启动
分类: 电脑/网络 >> 操作系统/系统故障
解析:
Sendmail的配置十分复杂。它的配置文件是sendmail.cf,位于/etc/mail目录下。由于sendmail.cf的语法深奥难懂,很少有人会直接去修改该文件来对Sendmail服务器进行配置。我们一般通过m4宏处理程序来生成所需的sendmail.cf文件。创建的过程中还需要一个模板文件,系统默认在/etc/mail目录下有一个sendmail.mc模板文件。
我们可以根据简单、直观的sendmail.mc模板来生成sendmail.cf文件,而无需直接编辑sendmail.cf文件。可以直接通过修改sendmail.mc模板来达到定制sendmail.cf文件的目的。这里介绍创建sendmail.cf文件的步骤:
(1)备份原有sendmail.cf文件
在终端命令窗口运行以下命令:
cp /etc/mial/sendmail.cf /etc/mail/sendmail.cf.BAK
(2)生成sendmail.cf文件
根据sendmail.mc模板文件产生sendmail.cf配置文件,并导出到/etc/mail/目录下:
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
(3)重启sendmail服务
[root@ahpeng root] /etc/rc.d/init.d/sendmail restart
很显然,用m4宏编译工具创建sendmail.cf文件比较方便,而且不容易出错,更可以避免某些带有安全漏洞或者过时的宏所造成的破坏。一个sendmail.mc模板的大致内容如下:
divert(-1)dnl
......
include('/usr/share/sendmail-cf/m4/cf.m4')dnl
VERSIONID('setup for Red Hat Linux')dnl
OSTYPE('linux')dnl
......
dnl #
dnl define('SMART_HOST',' *** tp.your.provider')
dnl #
define('confDEF_USER_ID',''8:12'')dnl
define('confTRUSTED_USER', ' *** msp')dnl
dnl define(′confAUTO_REBUILD′)dnl
......
这里介绍sendmail.mc模板的语法组成:
dnl:用来注释各项,同时dnl命令还用来标识一个命令的结束。
divert(-1):位于mc模板文件的顶部,目的是让m4程序输出时更加精简一些。
OSTYPE ('OperationSystemType'):定义使用的操作系统类型,显然这里应该用linux代替OperationSystemType,注意要用一个反引号和一个正引号把对应的操作系统类型括起来。
define:定义一些全局设置,对于Linux系统,设置了OSTYPE之后,可以定义下面的一些全局参数,如果不定义,就使用默认值。这里举两个简单例子:define('ALIAS_FILE','/etc/aliases')
定义别名文件(alia file)的保存路径,默认是/etc/aliases
define('STATUS_FILE', '/etc/mail/statistics')
sendmail的状态信息文件。
以上只是sendmai.mc的一些简单的语法解释,更多的参数含义及其配置信息可以参见sendmail/m4/eaking_config。
为新用户开电子邮件账号
在Linux里为新用户开设电子邮件账户比较简单,只需在Linux系统里新增一个用户即可。单击"主菜单→系统设置→用户和组群"菜单项,打开"Red Hat用户管理器"对话框,单击"添加用户"按钮,在出现的"创建新用户"对话框里指定用户名、登录口令即可,如图3所示。
假设我们添加了一个用户Peter(密码为peter),这样该用户就有了一个邮件地址Peter@YourDomain(此处的YourDomain用你自己域名代替)。
以上过程也可以在终端命令窗口运行以下命令来实现:
[root@ahpeng root]#adser peter -p peter
为电子邮件账户设置别名
有一些用户想使用多个电子邮件地址,是不是需要创建多个邮件账号呢?我们可以使用别名(alias)来解决这个问题。
比如说,用户peter想拥有以下3个电子邮件地址:
peter@YourDomain、dearpeter@ YourDomain、truepeter@ YourDomain。
我们可以通过以下步骤来实现这样的别名设置:
新增一个账号peter;然后用vi、或者Kate等文本编辑器打开/etc/aliases,在里面加上两行:
dearpeter: peter
truepeter: peter
保存该/etc/aliases退出。
不过,就这样还不能让Sendmail接受新增的别名,我们必须在终端命令窗口运行newaliases命令,以要求Sendmail重新读取/etc/aliases文件。如果一切无误,应该可以看到类似以下的回应消息:
[root@ahpeng root]# newaliases
/etc/aliases: 63 aliases, longest 10 bytes, 625 bytes total
这样,发给peter的邮件可以使用3个邮件地址,而peter只需要使用一个电子邮件账号peter@YourDomain就可以接收所有寄给以上3个地址的电子邮件。
指定邮箱容量限制
当一个邮件服务器为许多人提供邮件服务时,无 *** 的电子邮件将很容易塞满服务器的硬盘,造成硬盘负担。如果不想为用户提供无限空间的邮件暂存空间,可以使用"邮件限额"来给用户一个有限的暂存空间。
其实,它是利用磁盘配额功能来实现的。电子邮件的暂存空间是在/var/spool/mail目录下,只要通过磁盘配额设定每一个用户在这个目录下能使用的最大空间即可。
支持POP和IMAP功能
到现在为止,我们已经可以用Outlook Express发送邮件,或者登录服务器使用mail、pine命令收取、管理邮件。但是还不能用Outlook Express等客户端从服务器下载邮件,这是因为Sendmail并不具备POP3(IMAP)的功能,所以我们必须自己安装。
(1)POP和IMAP服务器安装
安装Red Hat Linux 9.0时,可以选择安装POP和IMAP服务器,可以在终端命令窗口运行以下命令进行验证:
[root@ahpeng root]# rpm -qa imap
imap-2001a-18
如果没有安装,可以将第2张安装光盘放进光驱,然后在终端命令窗口运行以下命令即可开始安装:
[root@ahpeng root]#cd /mnt/cdrom/RedHat/RPMS
[root@ahpeng root]#rpm -ivh imap-2001a-18.i386.rpm
由于Red Hat Linux 9.0已经将POP和IMAP打包成一个单独的套件,安装好imap-2001a-18.i386.rpm,就会同时安装这两个服务器
(2)启动POP和IMAP服务
要成功启动POP和IMAP服务器,首先要确定这些服务存在于/etc/services文件,确保以下的服务前面没有加上#注释(如果有,必须去除注释)。
imap 143/tcp imap2 # Interim Mail Access Proto v2
imap 143/udp imap2
pop2 109/tcp pop-2 postoffice # POP version 2
pop2 109/udp pop-2
pop3 110/tcp pop-3 # POP version 3
pop3 110/udp pop-3
修改好/etc/services文件,接下来就要对相应服务配置文件进行定制:
启动POP3服务:必须修改/etc/xid.d/ipop3文件,将其中的"disable=yes"改为"disable=no",保存该文件。最后必须重新启动xid程序来读取新的配置文件,使得设定内容生效:
[root@ahpeng root]#/etc/rc.d/init.d/xid reload
启动IMAP服务:必须修改/etc/xid.d/imap文件,将其中的"disable = yes"改为"disable =no",保存该文件。最后必须重新启动xid程序来读取新的配置文件,使得设定内容生效:
[root@ahpeng root]#/etc/rc.d/init.d/xid reload
设置好以后,就可以在Outlook Express里面设置好邮件账号,以后就可以直接利用Sendmail服务器进行收发邮件了,由于邮件服务器就在本地局域网,所以速度很快。
❺ linux下的sendmail如何配置
sendmail的功能强大,配置起来也十分繁琐。本例仅介绍如何架设小型的局域网电子邮局。
1、设置sendmail 作为守卫进程(daemon)启动
可以使用以下命令来确认 sendmail 是否已经启动:ps –A|grep sendmail
如果启动了 sendmail,那么这个命令将显示出它的相关信息。如果没有启动,则需要在/etc/rc.d/rc.net 文件中加上如几行代码:
if [-f /usr/lib/sendmail ];
then(cd /usr/spool/mqueue;rm –f if *)
/usr/lib/sendmail-bd-qlh;echo –n ‘sendmail’>/dev/console
fi
2、设置sendmail.cf
sendmail.cf是sendmail的配置文件。在安装了 Linux 系统之后,它将自动生成一个适合本系统使用的 sendmail.cf 文件,位于/etc/sendmail.cf
3、开启SMTP、POP 端口
在默认情况下,SMTP 端口是打开的,而 POP端口是关闭的,我们必须将它打开:
1)用 root(超级权限)登录到服务器上;
2)编辑文件/etc/inetd.conf;
3)找到描述 POP 端口的语句:#pop3 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.pop3d
4)将 POP3的描述语句那一行的注释号“#”去掉。
5)如果没有找到,就手工补上这一行;(另外,我们还可以验证一下是否存在 SMTP端口的描述语句) ;
6)存盘后退出。
7)运行 inetd 命令,使得设置生效。
8)用以下命令验证,看 POP3 端口是否打开(生效):netstat –a |grep pop
如果打开的话,可以看到以下信息:tcp 0 0 *:pop3 *:* LISTEN
4、为新用户开E-Mail 帐号
在 Linux 中开设 E-Mail 帐号十分简单,只要在 Linux 系统中新增一个用户即可。该用户帐号和密码就是E-Mail 的帐号和密码。如:为新用户 guest 开一个E-Mail帐号,用以下命令即可:
adser guest passwd guest
这样,该新用户的 E-Mail 地址就是:[email protected] ;密码为:guest
5、为E-Mail 帐号设置别名
如果某个用户想使用多个 E-Mail 地址,可通过设置别名的方法来实现。比:用户“杜
方冬”想同时拥有 E-Mail 地址:[email protected] ;[email protected] ;[email protected]
就可通过以下步骤来实现这样的别名设置:
1)以 root 登录服务器;
2)新增一个账号 dfd;
3)编辑文件/etc/aliases,加上两行:
fd:dfd
fd2000:dfd
4)存盘退出;
5)执行命令: newaliases
这样,用户杜方冬就拥有三个邮件地址,杜方冬只需使用一个E-Mail 帐号:[email protected]就可以接收所有寄给以上三个E-Mail 邮件地址的电子邮件。
6、邮箱空间的限定
如果你想控制用户邮箱空间的大小,可以对它进行限定。实现方法是利用磁盘限额功能来实现的。电子邮件的暂存空间是在/var/spool/mail 目录下,只要通过磁盘限额设定每一个用户在这个目录下能使用的最大空间就可以了。