linux 电子邮件服务器Postfix安装与配置

linux 电子邮件服务器Postfix安装与配置

一,基本电子邮件发送
电子邮件发送
服务器使用SMTP协议将电子邮件提交至TCP端口25,或由本地客户端通过/usr/bin/sendmail程序进行提交。如果该MTA是最终目标位置,邮件将传递至MDA。否则,将使用MX记录在DNS中查找下一个MTA,并使用SMTP进行转发。
MDA:“邮件发送代理”。
MDA将邮件发送至收件人的本地邮件存储位置(默认情况下是/var/spool/mail/user)。Postfix提供自己的MDA,以发送至基于文件的本地默认邮件存储位置/usr/libexec/postfix/local.
转发:电子邮件服务器(MTA)将提交的邮件转发至另一个服务器,以进行发送
排队:失败的发送或转发尝试排队等待,并由MTA定义重试。(默认情况下,Postfix每小时执行此操作一次)
拒绝:在首次提交期间,电子邮件被电子邮件服务器拒绝
退回:远程服务器接受电子邮件以进行发送以后,又将该电子邮件退回给始发电子邮件服务器和/或用户电子邮件以进行发送以后,又将该电子邮件退回给始发电子邮件服务器和/或用户34Postfix由postfix RPM包提供,并通过postfix服务脚本控制。它是一个由多个协同操作程序构成的模块化程序,它的组件由master进程控制。Postfix的主配置文件是/etc/postfix/main.cf,可以使用编辑器或postconf命令进行编辑。postconf命令还可用于确定Postfix的所有当前和默认配置设置或逐项确定这些设置。
默认情况下,Postfix仅侦听来自本地主机的传入电子邮件。若要重新配置postfix以接收从远程主机发送的本地邮件,必须在/etc/postfix/main.cf中设置inet_interfaces = all
对电子邮件进行故障排除时,将在/var/log/maillog中保留所有与邮件相关的操作日志,其中包括关于被事件和成功事件的信息。mailq命令(或postqueue -p)显示已排队的所有传出邮件的列表。若要尝试再次立即发送所有已排队的邮件,可以运行postfix flush命令(或postqueue -f);否则,postfix将大约每小时尝试重新发送一次,直至邮件被接受或过期。
5重要的Postfix配置指令
可以在/etc/postfix/main.cf文件中找到以下所有指令。
myorigin
重写本地发布的电子邮件,使其显示为来自该域。这样有助于确保响应返回入站邮件服务器
默认:myorigin = myhostnameinetinterfacesPostfixloopbackonly,127.0.0.1::1,all,:inetinterfaces=localhostmydestinationMDA,:mydestination= myhostname, localhost. mydomain,localhostmynetworksIP(CIDR)MTA,:mynetworks=127.0.0.0/86relayhostrelayhost,MX:relayhost=localtransport mydestination的邮件的发送方式。默认情况下,设置为local: myhostname(使LocalMDA/var/spool/mail):localtransport=local: myhostname
postconf -d 显示默认值。
postconf -n显示不同于默认值的更改。
7空壳邮件客户端
实际上,大多数组织不再只用一个邮件服务器来处理所有入站和出战电子邮件。相反,出于安全方面的考虑邮件服务器专门针对特定角色进行了设置,以便可以面向其具体针
对的应用程序更好标准角色包括:null客户端:运行本地MTA的客户端计算机,使所有电子邮件都可以转发至中央邮件服务器以进行发送,null客户端不接受任何电子邮件的本地发送。
仅入站邮件服务器:在站点处理用户的所有传入电子邮件,并将之传递给MDA以发送至用户邮件存储位置的邮件服务器。在实际情况中,通常会在仅入站邮件服务器前端安装反垃圾邮件服务器或设备,以
过滤垃圾邮件并且仅将正常邮件转发至入站邮件服务器。
出站邮件转发:出站邮件转发(或“smarthost”)接收所有出站邮件,并使用MX记录和SMTP协议将邮件转发至目标位置 。
1.基本dns配置
(1)服务端
[root@mail-qq ~]# yum install bind -y
[root@mail-qq ~]# systemctl stop firewalld
[root@mail-qq ~]# vim /etc/named.conf
options {
// listen-on port 53 { 127.0.0.1; }; 设置为any
// listen-on-v6 port 53 { ::1; }; 设置为any
directory “/var/named”;
dump-file “/var/named/data/cache_dump.db”;
statistics-file “/var/named/data/named_stats.txt”;
memstatistics-file “/var/named/data/named_mem_stats.txt”;
// allow-query { localhost; }; 设置为any

/* 
 - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
 - If you are building a RECURSIVE (caching) DNS server, you need to enable 
   recursion. 
 - If your recursive DNS server has a public IP address, you MUST enable access 
   control to limit queries to your legitimate users. Failing to do so will
   cause your server to become part of large scale DNS amplification 
   attacks. Implementing BCP38 within your network would greatly
   reduce such attack surface 
*/
recursion yes;

dnssec-enable yes;
dnssec-validation no;   未注册

[root@mail-qq ~]# vim /etc/named.rfc1912.zones
zone “qq.com” IN { 配置westos和qq的dns信息
type master;
file “qq.com.zone”;
allow-update { none; };
};

zone “westos.com” IN {
type master;
file “westos.com.zone”;
allow-update { none; };
[root@mail-qq ~]# cd /var/named
[root@mail-qq named]# ls
data named.ca named.localhost slaves
dynamic named.empty named.loopback
[root@mail-qq named]# cp named.localhost westos.com.zone -p
[root@mail-qq named]# cp named.localhost qq.com.zone -p
[root@mail-qq named]# ls
data named.ca named.localhost qq.com.zone westos.com.zone
dynamic named.empty named.loopback slaves
[root@mail-qq named]# vim westos.com.zone
[root@mail-qq named]# cp westos.com.zone qq.com.zone -p
cp: overwrite ‘qq.com.zone’? y
[root@mail-qq named]# vim qq.com.zone

[root@mail-qq named]# vim qq.com.zone
[root@mail-qq named]# vim westos.com.zone
[root@mail-qq named]# systemctl restart named
[root@mail-qq named]# cat westos.com.zone
TTL 1D  
@   IN SOA dns.westos.com. root.westos.com. (  
                    0   ; serial  
                    1D  ; refresh  
                    1H  ; retry  
                    1W  ; expire  
                    3H )    ; minimum  
    NS  dns.westos.com.  
dns A   172.25.254.161  
westos.com. MX 1  172.25.254.162.  
[root@mail-qq named]# cat qq.com.zone
TTL 1D
@ IN SOA dns.qq.com. root.qq.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.qq.com.
dns A 172.25.254.161
qq.com. MX 1 172.25.254.161.
[root@mail-qq named]# vim /etc/resolv.conf
[root@mail-qq named]# cat /etc/resolv.conf
Generated by NetworkManager
search qq.com
nameserver 172.25.254.161 主dns

No nameservers found; try putting DNS servers into your
ifcfg files in /etc/sysconfig/network-scripts like so:
#
DNS1=xxx.xxx.xxx.xxx
DNS2=xxx.xxx.xxx.xxx
DOMAIN=lab.foo.com bar.foo.com
(2)客户端
[root@mail-westos ~]# vim /etc/resolv.conf
[root@mail-westos ~]# cat /etc/resolv.conf
Generated by NetworkManager
search westos.com
nameserver 172.25.254.161

No nameservers found; try putting DNS servers into your
ifcfg files in /etc/sysconfig/network-scripts like so:
DNS1=xxx.xxx.xxx.xxx
DNS2=xxx.xxx.xxx.xxx
DOMAIN=lab.foo.com bar.foo.com
2.修改配置文件/etc/postfix/main.cf
(1)服务端
[root@mail-qq named]# vim /etc/postfix/main.cf
line:76 myhostname = mail-qq.qq.com 设置主机名称
line:83 mydomain = qq.com 设置本地域名
line:99 myorigin = myhostname 设置邮件头中的mail from 值
line:116 inet_interfaces = all 设置监听地址
line:164 mydestination= myhostname mydomain,localhost 设置收信地址
[root@mail-qq named]# systemctl restart postfix.service
[root@mail-qq named]# mail root@westos.com
Subject: test
123456
.
EOT
[root@mail-qq named]# mailq
Mail queue is empty
(2)测试端
[root@mail-westos ~]# vim /etc/postfix/main.cf
line:76 myhostname = mail-qq.qq.com 设置主机名称
line:83 mydomain = qq.com 设置本地域名
line:99 myorigin = myhostname 设置邮件头中的mail from 值
line:116 inet_interfaces = all 设置监听地址
line:164 mydestination= myhostname mydomain,localhost 设置收信地址
[root@mail-westos ~]# mail
Heirloom Mail version 12.5 7/5/10. Type ? for help.
“/var/spool/mail/root”: 1 message 1 new

N 1 root Sat Apr 22 03:42 21/715 “test”
& q
Held 1 message in /var/spool/mail/root
You have mail in /var/spool/mail/root
3.远程主机发邮件
(1)远程主机
[root@foudation61 ~]# telnet 172.25.254.161 25
Trying 172.25.254.161…
Connected to 172.25.254.161.
Escape character is ‘^]’.
220 mail-qq.qq.com ESMTP Postfix
mail from:root@qq.com
250 2.1.0 Ok
rcpt to:root@westos.com
250 2.1.5 Ok
data
354 End data with .
test
test
test
.
250 2.0.0 Ok: queued as 631CB37E127
quit
221 2.0.0 Bye
Connection closed by foreign host.
(2)接受端
[root@mail-westos ~]# mail
Heirloom Mail version 12.5 7/5/10. Type ? for help.
“/var/spool/mail/root”: 2 messages 1 new 2 unread
U 1 root Sat Apr 22 03:42 22/725 “test”
N 2 root@qq.com Sat Apr 22 04:03 15/495
4.dovecot的使用与安装(代收其他用户邮件,也可远程代收)
[root@mail-westos ~]#yum install dovecot -y
[root@mail-westos ~]# vim /etc/dovecot/dovecot.conf
49 disable_plaintext_auth = no
24 protocols = imap pop3 lmtp
[root@mail-westos ~]# vim /etc/dovecot/conf.d/10-mail.conf
30 mail_location = mbox:~/mail:INBOX=/var/mail/%u
[root@mail-westos ~]# cd /var/mail
[root@mail-westos mail]# ls
root rpc student
[root@mail-westos mail]# su - student
[student@mail-westos ~] mkdirp/home/student/mail/.imap[student@mailwestos ] touch /home/student/mail/.imap/INBOX
[student@mail-westos ~]$ logout
[root@mail-westos mail]# systemctl restart dovecot
[root@mail-westos mail]# yum install mutt -y
[root@mail-qq named]# mail student@westos.com
Subject: test
test
test
.
EOT
[root@mail-qq named]# mailq
Mail queue is empty
[root@mail-westos mail]# mail -u student
Heirloom Mail version 12.5 7/5/10. Type ? for help.
“/var/mail/student”: 1 message 1 new
N 1 root Sat Apr 22 04:27 22/730 “test”
& q
Held 1 message in /var/mail/student
[root@mail-westos mail]# mutt -f pop:/student@172.25.254.162
进入后输入用户密码,登录即可查看到
5软件thunderbird(postfix)客户端
1.下载thunderbird软件
2.编辑配置文件/etc/dovecot/dovecot.conf
设置
3执行thunderbird命令。打开客户端。
跳过
按如下设置
测试后done
我了解风险
设置完成
输入student用户密码即可查看
这里写图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值