`

Window & CentOS6.4 邮箱服务器配置

 
阅读更多
本文配置还要参考http://panyongzheng.iteye.com/blog/1879717

Postfix 是MTA负责接收MUA传过来要发送到信件,以及和其他MTA传递信件和relay,用的是SMTP协定。
Dovecot是 MDA,负责MUA收信。用的是POP3,POP3S,IMAP, IMAPS协定



Windows下的免费邮件服务器软件hMailServer http://dagai.net/hmailserver/
原文 Centos6.4 Postfix Server安裝設定教學: http://tonyhack.asuscomm.com/wordpress/?p=1326
使用Postfix dovecot配置简单的邮件系统 http://www.centos.bz/2011/06/centos-install-setup-postfix/

Mail命令:
Linux下使用mail命令发送邮件 http://www.mzone.cc/article/317.html
Linux mail命令使用方法详解 http://www.isstudy.com/linux/693.html
linux mail收发邮件命令 http://hi.baidu.com/_liucheng/item/28f2ff9b19e8fcd87b7f0194

CentOS6.2-DNS+Sendmail+Dovecot+openwebmail 邮件服务器
DNS篇 http://blog.chinaunix.net/uid-16607457-id-3311717.html
sendmail+dovecot篇 http://blog.chinaunix.net/uid-16607457-id-3314705.html
openwebmail篇 http://blog.chinaunix.net/uid-16607457-id-3317661.html 这个工具很丑陋,在Fiefox和IE下面,惨不忍睹。
手把手让你实现postfix+extmail+mysql虚拟用户邮件体系 http://www.5dmail.net/html/2011-8-25/2011825145611.htm

CentOS 5.5 x64上使用Postfix + Dovecot + MySQL搭建邮件服务器 http://yyy3y.blog.51cto.com/3907806/718339
搭建PostfixAdmin 用于管理postfix虚拟域、虚拟用户不在是难题 http://linuxxx.blog.51cto.com/1824808/668673
需要安装PHP插件:
sudo yum -y install php-mbstring
sudo yum -y install php-imap
并下载:postfixadmin-2.3.6.tar.gz
进入setup.php安装,生成hashcode后,会重新修改config.inc.php一次,一共修改两次。
postfix+dovecot+postfixadmin+mysql架设邮件服务器 http://www.5dmail.net/html/2010-7-22/2010722110835.htm

CentOS6.3下安装fail2ban防暴力破解工具 http://www.myhack58.com/Article/48/66/2013/38127_5.htm


注意:
检查postfix是否支持虚拟用户postconf – m | grep msyql 如果出现mysql表示支持

Postfix安裝
安裝指令

sudo yum -y install postfix  //邮件服务器,会自动安装sendmail发送工具
sudo yum -y install dovecot*   //安装收信工具dovecot
sudo yum -y install cyrus-imapd

CentOS 5之前預設的Mail Server服務是Sendmail,而在CentOS 6 後即是以Postfix當作預設的 Mail Server,Postfix比起Sendmail在設定上更容易上手,因此不需要像網路上其它的教學安裝system-switch-mail,因為system-switch-mail是用來將Sendmail切換成Postfix。
Postfix最主要的功能則是啟動SMTP的服務,也就是架設一台MTA(Mail Transfer Agent)。




Postfix設定
Postmail的主要設定都在”etc/postfix/main.cf”,編輯的方式如下

#vi /etc/postfix/main.cf
以下就來介紹要架設完一台MTA(也就是Mail Server的SMTP服務)的相關設定

1.設定Hostname,Hostname即是我們的郵件伺服器的主機名稱,是由英文字母或數字所組成,比如www.google.com或mail.google.com就是一個Hostname。Postmail的Hostname設定如下
尋找”#myhostname =”字串,預設會看到”#myhostname = host.domain.tld”和”#myhostname = virtual.domain.tld”這二行字串
請在這二行後面增加以下的字串設定即可
#myhostname = host.domain.tld
#myhostname = virtual.domain.tld
myhostname = 你的主機名稱        #新增此行,約加在第77 行


2.設定網域名稱(Domain Name),主機名稱通常都是在建立在網域名稱之內,像是www.google.com則是網頁服務,mail.google.com則會是郵件主機服務,通常網域名稱都會是主機名稱(Hostname)去掉第一個掉包含前面的文字部份,比如說www.google.com的Domain則是google.com。 以下則是Postfix的網域名稱設定方法

尋找”#mydomain =”字串,預設會看到”#mydomain =domain.tld”
新增一行如下
#mydomain =domain.tld
mydomain = 你的網域名稱         #新增此行,約加在第  85 行

注意,这里一定随便给一个带点的字符串,比如:test.oicp.net, 那么本机的邮箱就是:pandy@test.oicp.net,不能包含下划线等特殊字符

3.設定Origin Name,Origin Name是我們的郵件位址在”@”後面的文字內容,比如像是stnet253@gmail.com,gmail.com就是我們的Origin Name,而stnet253則是郵件擁有人的帳號名稱。以下為Postfix的Origin Name的設定。
尋找”#myorigin = $mydomain”字串,將”#”移除,變成
#myorigin = $mydomain                               #刪除此行
myorigin = $mydomain                 #新增此行,約加在第  100 行


4.設定 postfix 的監聽介面,Postfix預設只會監聽來自於本機端的所傳出的封包,必須使用下列設定,才可以傳收所有來自於網路端的所有封包。
尋找”#inet_interfaces = all”字串,將”#”移除 (表示此行Enable) 。
後面的”inet_interfaces = localhost”字串,在最前面加上”#”(表示disable此行設定)
此步驟的設定內容整理如下
inet_interfaces = all            #修改此行,約在第 114 行
#inet_interfaces = $myhostname       
#inet_interfaces = $myhostname, locatlhost
#inet_interfaces = localhost        #修改此行,約在第 117 行


5.修改Postfix的通訊協定,目前網路的協定主流有IPv4與IPv6,在大部份的情況下,我們都是利用IPv4在通訊的,如果你的Mail Server沒有需要使用到IPv6,可以做以下的設定修改。
尋找” inet_protocols = all”字串,改成
inet_protocols = ipv4                #約在第 120 行

6.設定能收收信件的主機名稱,Postfix預設只能收到設定的Hostname與Domain Name以及本機端的信件,此步驟是再增加能收信件的網路名稱。
尋找”mydestination = $myhostname, localhost.$mydomain, localhost”字串,在最前面加入”#”(表示此行disable)。
將”#mydestination = $myhostname, localhost.$mydomain, localhost, mydomain”的”#”移除(表示此行Enable)。
#mydestination = $myhostname, localhost.$mydomain, localhost 
#修改此行,約在第 165行

mydestination = $myhostname, localhost.$mydomain, localhost, mydomain
#修改此行,約在第 166行


7.設定信任的用戶端,當要寄信時,會參考此值,若非信任的用戶,則不會幫你的信件轉到其它的MTA主機上
尋找”#mynetworks =”,在”#mynetworks = hash:/etc/postfix/networks”這行後面加上
#mynetworks = hash:/etc/postfix/networks
mynetworks = 127.0.0.0/8, 192.168.1.0/24, hash:/etc/postfix/access
#加入此行,約在268行


8.規範可以 relay 的 MTA 主機位址,通常這個都直接設為mydestination
尋找”#relay_domains = $mydestination”,將”#”移除,變成
relay_domains = $mydestination                 #修改此行,約在第 298 行

9.設定郵件別名的路徑
檢查” alias_maps”設定是否為以下字串設定
alias_maps = hash:/etc/aliases                     #約在第 388 行

10.設定指定郵件別名表資料庫路徑
檢查” alias_ database”設定是否為以下字串設定
alias_database = hash:/etc/aliases               #約在第 399行
在main.cf的設定整理如下:
myhostname = 你的主機名稱                    #約在第  77 行
mydomain = 你的網載名稱                        #約加在第  85 行
myorigin = $myhostname                             #約在第 100 行
inet_interfaces = all                       #約在第 114 行,117 行要註解掉
inet_protocols = ipv4                     #約在第 120 行
mydestination = $myhostname, localhost.$mydomain, localhost, mydomain  #約在第166 行
mynetworks = 127.0.0.0/8, 192.168.1.0/24, hash:/etc/postfix/access #約在268行
relay_domains = $mydestination                 #約在第 298 行
alias_maps = hash:/etc/aliases                     #約在第 388 行
alias_database = hash:/etc/aliases               #約在第 399 行


11.設定完成後,請在終端機下輸入以下二行指令(詳細請參考後面章節” 設定郵件主機使用權限與過濾機制”及” 郵件別名”)
# postmap hash:/etc/postfix/access
# postalias hash:/etc/aliases


12.重啟postfix就可以利用smtp的服務收發信件,在終端機視窗下輸入
# service postfix restart

13.檢查SMTP服務是否開啟,如果有的話,輸入下列命列,會看到Port 25正在監聽的狀態
# netstat -tlunp | grep ':25'

14 检查当前postfix配置是否有问题 文件与目录的拥有权是否正确甚至帮你创建丢失的目录:
[root@mail ~]# sudo postfix check
没有消息就是好消息




Postfix測試
1.寄信測試
此時我們已經可以利用此台主機使用smtp收送電子郵件了, 利用mail指令來測試
mail root@網域名稱
Subject:Test
This is test mail
.     
EOT

2.收信測試
當我們從內部或外部寄信過來時,預設的郵件存放位址如下:
/var/spool/mail(或 /var/mail)
從此目錄裡查看帳號名稱的檔案,我們所收發的信件都會存在這裡

待補

CentOS 下 mail 命令 http://hi.baidu.com/myweb2/item/53670eaedb02ed736cd4552e
在自己的账户下输入:mail
然后显示邮件的列表
会出现"&"
在后面输入一下参数,得到相应功能
& t 7 //阅读第7封信息,阅读时,按空格键就是翻页,按回车键就是下移一行
& d 10 //删除第10封信息
& d 10-100 //删除第10-100封信息
& top //显示当前指针所在的邮件的邮件头
& file //显示系统邮件所在的文件,以及邮件总数等信息
& x //退出mail命令平台,并不保存之前的操作,比如删除邮件
& q //退出mail命令平台,保存之前的操作,比如删除已用d删除的邮件,

修改端口
在master.cf里的非#号开头的第一行应该是smtp inet n - n --smtpd
这一行表示的是smtp的进程,和/etc/services里的
smtp        25/tcp       mail
smtp        25/udp       mail
相对应
再在后追加一行同样的进行,修改一下前面的名字,如
smtp2 inet n -n - - smtpd,
保存后,在/etc/services里也相应增加一个服务器进程端口号即可,如:
smtp2        26/tcp       mail2
smtp2        26/udp       mail2
保存后,reload不行,要restart postfix就应该能同时启动25和26两个功能完全相同的端口。
OK了

openwebmail出现问题,是因为selinux没有关闭,或者没有配置好,所以没权限写入硬盘

增加用户:
useradd -g mail ayu                新增用户阿羽到mail组
passwd ayu                      设置阿羽的密码
useradd -g mail  -s /sbin/nologin  yueyue   新增用户月月到mail组 且不可登陆shell
passwd yueyue                          给月月设置密码
useradd -g mail laoshi      新增用户老师到mail组
passwd laoshi             设置老师密码
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics