在Linux中安装具有虚拟域,Webmail,SpamAssassin和ClamAV的“iRedMail”(全功能邮件服务器)

本教程将指导您在RHEL,CentOS,Scientific Linux和Debian,Ubuntu,Linux Mint及Postfix上安装iRedMail服务器。

在HTTP和影子DNS服务之后,邮件(SMTP,POP,IMAP和所有相关的加密邮件协议)是Internet中最常用的服务之一,也是最明智的,由于垃圾邮件和开放中​​继邮件服务器。

在Linux中安装iRedMail

在Linux中安装iRedMail

本教程将指导您完成在RHEL,CentOS科学的LinuxDebian,Ubuntu ,Linux Mint的使用Postfix的,虚拟域和用户的MySQL,Dovecot几分钟安装与MTA,MDA和MUA软件完整的邮件服务器-支持POP3 / POP3S,IMAP / IMAPS,Roundcube - Webmail以及使用SpamAssassin和ClamAV的邮件垃圾邮件和病毒扫描,所有这些都使用一个名为“iRedMail”的软件包安装。

什么是iRedMail

iRedMail是一个开源全功能邮件服务器解决方案,可为系统管理员节省大量时间进行复杂配置,支持所有主要的Linux发行版并附带以下Linux软件包。

  1. Postfix:SMTP服务 - 默认MTA。
  2. Dovecot:POP3 / POP3S,IMAP / IMAPS,Managesieve服务 - 默认MDA。
  3. Apache:Web服务器。
  4. MySQL / PostgreSQL:存储应用程序数据和/或邮件帐户。
  5. OpenLDAP:存储邮件帐户。
  6. Policyd:Postfix策略服务器。
  7. Amavisd:Postfix和SpamAssassin之间的接口,ClamAV。 用于垃圾邮件和病毒扫描。
  8. Roundcube:Webmail - 默认MUA。
  9. Awstats:Apache和Postfix日志分析器。
  10. 的fail2ban :扫描日志文件(例如,在/ var /日志/ maillog中),并禁止IP地址,显示系统的恶意企图。

要求

  1. CentOS的6.5最小安装- 的CentOS 6.5安装指南
  2. 指向负责您的域名的邮件服务器的有效DNS MX记录。

此外,本教程仅用于测试和学习目的,不使用有效的MX记录,也不使用有效的DNS域名,所有配置都使用MySQL的虚拟收件人进行本地配置(可以在本地域用户之间接收或发送邮件 - 从hosts文件提供的本地域名),但是请注意,尽管我们的系统无法从Internet域接收邮件,但实际上可以通过Postfix MTA将邮件转发到这些域邮件服务器,即使您位于私有IP地址空间,没有有效的MX记录和使用虚构的域,所以要注意你在做什么。

第1步:初始配置和静态IP地址

1.经过与root账户第一次重新启动登录,并确保您的系统是最新的,并且安装所需以便将来使用一些有用的软件包。

在RHEL / CentOS / Scientific Linux上
# yum update && yum upgrade
# yum install nano wget bzip2
在Debian / Ubuntu / Linux Mint
# apt-get update && apt-get upgrade
# apt-get install nano wget bzip2

2.由于这个框的作用就像一个邮件服务器 ,一个静态IP需要对网络接口配置的。 添加静态IP打开并编辑位于在/ etc / sysconfig / network中的脚本/路径上的网卡配置文件,并添加下列值。

在RHEL / CentOS / Scientific Linux上
# nano /etc/sysconfig/network-scripts/ifcfg-eth0

使用此文件作为模板,并将其替换为您的自定义值。

DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:01:99:E8"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="7345dd1d-f280-4b9b-a760-50208c3ef558"
NAME="eth0"
IPADDR=192.168.1.40
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.8.8
设置静态IP地址

设置静态IP地址

在完成从同一位置如上编辑NIC文件,打开网络文件,并添加HOSTNAME指令服务器不合格的主机名。

# nano /etc/sysconfig/network-scripts/network
设置系统主机名

设置系统主机名

在Debian / Ubuntu / Linux Mint
# nano /etc/network/interfaces

用您的设置替换以下值。

auto eth0
iface eth0 inet static
address 192.168.1.40
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 192.168.1.1
dns-search 8.8.8.8

一旦完成网络文件,现在在/ etc / hostname文件中添加主机名。

# nano /etc/hostnames

3.然后打开/etc/resolv.conf文件,你的DNS服务器的IP系统范围内追加像下面的截图。

# nano /etc/resolv.conf

使用您喜欢的Nameservers添加以下内容。

search mydomain.lan
nameserver 8.8.8.8
nameserver 8.8.8.8
添加DNS条目

添加DNS条目

以上已写入其相应的文件4.在所有的配置重新启动的网络服务以新应用的配置和使用ping并验证它的ifconfig命令。

# service network restart	[On RedHat based systems]
# service networking restart	[On Debian based systems]
重新启动网络服务

重新启动网络服务

# ifconfig
验证网络

验证网络

5.现在,您的静态网络是完全可操作,编辑/ etc / hosts文件,并添加您的不合格和FQDN主机名如下面的例子。

# nano /etc/hosts
127.0.0.1   centos.mydomain.lan centos localhost localhost.localdomain
192.168.1.40 centos.mydomain.lan centos
添加系统主机名

添加系统主机名

要验证主机名配置问题,请运行hostname和hostname -f命令。

# hostname
# hostname -f
验证系统主机名

验证系统主机名

6.另一个有用的包是由EPEL软件库在基于RedHat系统中提供,然后更新您的bash来源完工 (使用[Tab]键自动完成指令序列)。

在RHEL / CentOS / Scientific Linux上
# rpm –Uvh http://fedora.mirrors.romtelecom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm
# yum repolist && yum upgrade
安装Epel存储库

安装Epel存储库

你的源代码已经更新后安装的bash补全实用程序(在所有问题回答 )。

# yum install bash-completion
在CentOS中安装Bash完成

安装Bash完成

在Debian / Ubuntu / Linux Mint

在基于Debian的系统在bash-completion软件包可以用下面的命令轻松安装。

# apt-get install bash-completion

7.最后一步是添加系统用户以root特权。 首先添加用户并设置其密码。

# adduser your_user
# passwd your_user
添加新用户

添加新用户

您的用户已添加,打开/ etc / sudoers文件并取消%wheel组后,再新创建的用户添加到车轮组。

# nano /etc/sudoers

搜索和取消注释轮组线如下所示。

%wheel                ALL=(ALL)            ALL
将用户添加到Sudoers

将用户添加到Sudoers

关闭文件并将您的用户添加到发出以下命令的wheel组。

# usermod -aG wheel your_user
将用户添加到车轮组

将用户添加到车轮组

8.之前,我们可以开始下载并安装软件iRedMail,重新启动系统,然后用新创建的用户登录,并确保一切都完全正常。

用新用户登录

用新用户登录

第2步:安装iRedMail

9.为了downlad iRedMail归档包你必须访问它的官方下载页面部分或者你可以使用wget命令下载最新版本(0.8.7在写这篇文章的时候)。

# wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.8.7.tar.bz2
下载IRedMail

下载IRedMail

10.后iRedMail档案下载完成后,使用以下命令解压缩。

# tar xvjf iRedMail-0.8.7.tar.bz2

11.然后输入新提取iRedMail目录路径,标志iRedMail.sh脚本可执行权限然后运行它。

# cd iRedMail-0.8.7
# chmod +x iRedMail.sh
# sudo ./iRedMail.sh

12.最初的系统后检查程序开始加入所需版本库,那么第一个指导提示,询问您是否要继续安装或中止。 选择继续。

初始系统检查

初始系统检查

正在下载iRedMail包

正在下载iRedMail包

单击是以确认安装

单击是以确认安装

13. iRedMail使用Maildir的格式存储在哪里它创建分隔的目录为您添加到您的MTA服务器的每个域的/ var /语音邮件系统路径的电子邮件。 如果你熟悉这个路径点击Next与服务器配置其他然后提供您想要的位置下一步前进。

输入邮箱用户路径

输入邮箱用户路径

14.在下一步选择您首选数据库来存储邮件域的名称和收件人将连接到Postfix 本教程重点介绍MySQL数据库,因此使用[Space]键然后接下来继续为MySQL的root帐户的强密码选择MySQL的

选择MySQL数据库

选择MySQL数据库

设置MySQL管理密码

设置MySQL管理密码

15.在下一步中添加您的第一个虚拟域名。 如果你在这里添加了一个注册的域名(只添加域名而不是系统FQDN)。

添加虚拟域名

添加虚拟域名

16.默认情况下iRedAdmin超过服务器的全部权力,可以通过iRedAdmin面板或Dovecot协议(默认Roundcube Webmail界面或任何其他IMAP / POP MUA软件,如SquirrelMail的,可以访问创建一个管理用户Rainloop ,Microsoft Outlook中,Mozilla Thunderbird中,进化,马特,榆树等)。

另外这款邮政管理帐户所使用的系统报告相关的邮件功能或其他系统故障或有用信息的事件- logwatch通常将它的统计这里-所以选择一个强密码,并继续下一步

输入iRedMail管理密码

输入iRedMail管理密码

17.在下一步选择像iRedAdmin正式的行政面板Postfix的其他邮件服务器组件,DKIM域名密钥- (增加了评估的消息信托最终交付或进一步继电器的签名消息头),Roundcube默认Webmail界面(如果你打算使用其他邮件传递代理跳过Roundcube),PhpMyadmin(如果你很舒服MySQL命令行,你应该也应该跳过安装PhpMyAdmin),Awstats(有用的日志统计和分析器),Fail2ban(保护您的服务器免受暴力攻击)。

选择可选组件

选择可选组件

18.在接下来的一系列问题,这取决于安装的你应该回答您的可选组件。 加倍注意位于$ HOME目录中提取文件iRedMail.tips因为它包含像用户名和密码为服务器应用程序,服务器配置文件,默认URL以及其他重要信息的敏感邮件服务器信息。

iRedMail配置已完成

iRedMail配置已完成

iRedMail配置包

iRedMail配置包

iRedMail安装过程

iRedMail安装过程

19.安装完成后重新启动系统并验证iRedmail.tips文件,看看你的服务器默认设置-你应该将此文件移动到一个安全的系统路径与它600的权限。

验证iRedmail.tips文件

验证iRedmail.tips文件

验证服务器默认设置

验证服务器默认设置

以下网址访问20默认Web应用程序。

  1. Roundcube企业邮局 - https://开头DOMAIN_NAME或SERVER_IP /邮件/
  2. IRedAdmin面板 - https://开头DOMAIN_NAME或SERVER_IP / iredadmin /
  3. phpMyAdmin的 - https://开头DOMAIN_NAME或SERVER_IP / phpMyAdmin的/
  4. AWStats软件 - https://开头DOMAIN_NAME或SERVER_IP / AWStats软件/ awstats.pl配置=网络(或配置SMTP =?)?
  5. policyd的反垃圾邮件插件 - https://开头DOMAIN_NAME或SERVER_IP / cluebringer /

第3步:初始Webmail配置

21. iRedAdmin管理面板提供了一个基本的邮件界面,您可以添加虚拟域和帐户为Postfix可以通过MySQL的后端处理您的邮件服务器。 要登录到iRedAdmin面板将浏览器指向到https:// DOMAIN_NAME / iredadmin /https:// SERVER_IP / iredadmin / URL并使用以下默认凭据。

  1. 用户名 :postmaster@your_domain_name.tld
  2. 密码 :密码邮政局长在#16点设置
iRedAdmin管理面板

iRedAdmin管理面板

22.要添加用户导航添加 - > 用户然后提供所需的用户名邮箱地址和密码。 您还可以设置空间大小的用户邮箱可与配额处理,您还可以通过标记用户作为全球管理促进了iRedAdmin面板行政权力的用户。

添加新邮件用户

添加新邮件用户

用户个人设置

用户个人设置

添加其他邮件用户

添加其他邮件用户

域用户电子邮件列表

域用户电子邮件列表

23.阅读用户的电子邮件被Roundcube的Web界面提供。 要访问浏览到https:// DOMAIN_NAME /邮件https:// SERVER_IP /邮件/ URL和user@domain.tld的形式提供您的邮件帐户的凭据。

访问默认管理邮件帐户postmaster您会发现两个初始电子邮件,其中包括您的服务器敏感信息。 从这里,您可以阅读电子邮件,撰写邮件并向其他域用户发送邮件。

登录到Roundcube Webmail

登录到Roundcube Webmail

用户邮件接口

用户邮件接口

验证发送邮件

验证发送邮件

确认收到的邮件

确认收到的邮件

24.要访问服务器policyd的反垃圾邮件政策导航到https:// DOMAIN_NAME / cluebringerhttps:// SERVER_IP / cluebringer /并提供以下凭证。

  1. 用户名 :postmaster@domain.tld
  2. 密码 :密码邮政局长
登录Policyd反垃圾邮件政策

登录Policyd反垃圾邮件政策

Policyd网站管理

Policyd网站管理

25.要查看你的邮件服务器的统计信息导航到https://mydomain.lan/awstats/awstats.pl/配置SMTP =https://mydomain.lan/awstats/awstats.pl并使用以下凭据。

  1. 用户名 :postmaster@domain.tld
  2. 密码 :密码邮政局长
登录Awstats

登录Awstats

查看邮件服务器统计

查看邮件服务器统计

邮件服务器每月历史

邮件服务器每月历史

26.如果您要检查您的服务器的打开连接和监听其传入socket问题守护状态下的命令。

# netstat -tulpn   ## numerical view
# netstat -tulp    ## semantic view
检查服务器打开连接

检查服务器打开连接

检查服务器监听守护进程

检查服务器监听守护进程

27.要调试等问题,邮件交易或查看服务器的现场工作,你可以使用下面的命令。

# tailf /var/log/maillog   ## visualize mail logs in real time
# mailq    		   ##  inspect mail queue
# telnet    		   ## test your server protocols and security form a different location
# nmap                     ## scan your server opened connections from different locations
可视化实时邮件日志

可视化实时邮件日志

检查服务器状态

检查服务器状态

28.现在你已经部署了一个完整的邮件环境中,是缺少的,至少对这个话题是一个有效的域名与MX DNS记录从其他互联网域,但本地的SMTP服务器,并可以将邮件转发上接收邮件的唯一的事情其他互联网有效的域,所以要特别注意谁发送邮件,因为你可以进入与您的ISP的非法问题。

从下面的屏幕截图中,您可以看到我已从我的本地无效域发送电子邮件到我的一个google.com帐户,并且我的google帐户成功收到了电子邮件。

验证传出电子邮件

验证传出电子邮件

不像其他网络服务,您安装和忘记了很长一段时间管理邮件服务器是一个持续努力工作,由于邮件服务相关的问题,如垃圾邮件,打开中继和消息反弹。

参考链接

iRedMail主页