postfix 邮件服务器搭建

 

1.配置yum工具

[root@localhost ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo

[rhel-server]

name=Red Hat Enterprise Linux serverbaseurl=file:///mnt/cdrom/Server

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

2.新建挂载点,挂在光盘

[root@localhost ~]# mkdir /mnt/cdrom

[root@localhost ~]# mount /dev/cdrom /mnt/cdrom

3.安装postfix软件

[root@localhost Server]# yum install postfix -y

4.关闭sendmail 或者卸载

[root@localhost Server]# service sendmail stop

关闭 sm-client: [确定]

关闭 sendmail: [确定]

5.启动postfix,查看端口号,监听在127.0.0.1 的25 号端口上

[root@localhost Server]# service postfix start

启动 postfix: [确定]

[root@localhost Server]# netstat -tupln |grep 25

tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2168/master

6.修改本地主机名

[root@localhost ~]# vim /etc/sysconfig/network

NETWORKING=yes

NETWORKING_IPV6=no

HOSTNAME=mail.sina.com

[root@localhost ~]# vim /etc/hosts

127.0.0.1 localhost.localdomain localhost

::1 localhost6.localdomain6 localhost6

临时设定主机名

[root@localhost ~]# hostname mail.sina.com

7.新建账户user1 user2

[root@localhost ~]# useradd user1

[root@localhost ~]# useradd user2

[root@localhost ~]# passwd user1

[root@localhost ~]# passwd user2

8.登录到本地邮件服务器,user1向user2 发送信件

[root@localhost ~]# telnet 127.0.0.1 25

EHLO 127.0.0.1

mail from:[email protected]

rcpt to:[email protected]

data

sssssss

.

250 2.0.0 Ok: queued as 9A80B1DAE5B

9.查看邮件日志记录,邮件被延迟发送,说是主机名或者域名不对。

clip_image004

10.换一种方式发送

[root@localhost ~]# telnet 127.0.0.1 25

mail from:[email protected]

250 2.1.0 Ok

rcpt to:[email protected]

250 2.1.5 Ok

data

dsdsdsdsd

.

250 2.0.0 Ok: queued as 67B721DAE63

日志记录显示已发送

clip_image006

切换到user2 ,接收邮件

clip_image008

.接受者的主机名为[email protected] 时无法接受邮件,但是当改为[email protected]时,却可以接收邮件。此时应该修改postfix的配置文档。

11.修改postfix的配置文件main.cf

[root@mail ~]# cd /etc/postfix/

[root@mail postfix]# vim main.cf

myhostname = mail.sina.com 定义主机名

mydomain = sina.com 域名

myorigin = $myhostname 发信时,信件来为$myhostname的值,可做地址伪装

inet_interfaces = all 监听所有的请求,默认为localhost表示只能在邮件主机上才能寄信

mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain 第10步骤定义哪些属于本地信件。当信件的目的地址为本地时,它才会接收邮件。

mynetworks = 192.168.101.0/24, 127.0.0.0/8 表示只有192.168.101.0/24, 127.0.0.0/8 网段的主机邮件客户端发来的信件才会接收闭关转发,其他网段拒绝

12.root账户可以修改/etc/aliases文件,设置别名,当有邮件向别名发送邮件时,自动向定义的其他用户发送邮件。但是普通用户不能修改该文件,权限不足

[root@mail postfix]# ll /etc/aliases

-rw-r--r-- 1 root root 1512 2005-04-26 /etc/aliases

但是普通用户可以通过在家目录下新建文件.forward文件,进行别名设置,可以达到同样的效果.当与人向自己user1 发送邮件时,同时向user2 和[email protected]发送一份

vim ~/.forward

user1

user2

[email protected]

13.重启postfix服务

root@mail postfix]# service postfix restart

关闭 postfix: [确定]

启动 postfix: [确定]

14.使用一个不存在的账户向[email protected] 发送邮件

clip_image010

15.切换到user2 接收邮件

可以看到,user2 收到了邮件

clip_image012

16.这样该邮件服务器容易成为垃圾中转站。所以要设置基于身份验证的发送。只有验证通过的账户才能发送邮件

查看postfix的手册,找到下面几句话

man 5 postconf

broken_sasl_auth_clients = yes

smtpd_sasl_auth_enable = yes

smtpd_sasl_security_options = noanonymous

#smtpd_sasl_application_name = smtpd

#smtpd_client_restrictions = permit_sasl_authenticated,reject 连接时控制

#smtpd_client_restrictions = permit_sasl_authenticated

smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination 验证接收者

smtpd_sender_restrictions = permit_sasl_authenticated,reject 控制发送者,需要认证

smtpd_helo_restrictions = permit_sasl_authenticated,reject 发送hlo 时进行验证

17.编辑/etc/main.cf ,插入上面几句话

clip_image014

18.

重启postfix服务器,启动验证服务:

[root@mail ~]# service postfix restart

关闭 postfix: [确定]

启动 postfix: [确定]

[root@mail ~]# service saslauthd restart

停止 saslauthd: [确定]

启动 saslauthd: [确定]

再次使用不存在的用户登录

clip_image016

19安装squirrelmail 使用网页来发送,接收邮件

[root@mail Server]# yum install squirrelmail

依赖的软件包

clip_image018

20.切换到[root@mail Server]# cd /usr/share/squirrelmail/config/ 下,执行conf.pl 脚本

[root@mail config]# ./conf.pl

修改语言

clip_image020

clip_image022

clip_image024

修改字符集

clip_image026

clip_image028

clip_image030

clip_image032

保存退出

clip_image034

21.启动httpd服务,并创建物理目录mail

clip_image036

[root@mail html]# ln -s /usr/share/squirrelmail mail

[root@mail html]# ll

lrwxrwxrwx 1 root root 23 09-12 11:32 mail -> /usr/share/squirrelmail

22.修改httpdl的字符集

vim /etc/httpd/conf/httpd.conf

clip_image037

重启httpd 服务

[root@mail html]# service httpd restart

23.安装并启动dovecot 软件

[root@mail html]# yum install dovecot -y

[root@mail html]# service dovecot start

启动 Dovecot Imap: [确定]

24. user1 向user2 发送邮件

clip_image038

clip_image039

clip_image040

clip_image041

clip_image042

user1 向user2 发送邮件

clip_image043

25.user2 通过squirrelmail登录服务器,接收邮件

clip_image045

clip_image047

你可能感兴趣的:(搭建,邮件服务器)