iRedMail开源免费的邮件服务器安装与配置:邮件账号管理,SMTP
为了能够满足足够大的邮件发送量,保证邮件发送质量,除了花钱去选择那些第三方的邮件发送平台外,更多的时候我们可以自己搭建一个邮件发送平台。就像主机商把服务器分成虚拟空间卖给用户使用一样,我们自己购买服务器搭建邮局平台能够最大限度的降低成本。
上篇文章Postfix邮件系统安装与配置分享了用Postfix,Cyrus-IMAP,Cyrus-sasl,Dovecot和SPF搭建邮件系统的过程,需要手动配置的地方比较多,安装过程有些复杂,本篇文章再来分享一下有关于邮件服务器搭建的过程:用iRedMail一键快速搭建邮局服务器。
iRedMail是一个开源、免费的邮件服务器项目,其核心组件及其对应的功能主要有:Postfix: SMTP 服务器,Dovecot: POP3/IMAP/Managesieve 服务器,Apache: Web 服务器,MySQL: 用于存储其它程序的数据,也可用于存储邮件帐号。
Amavisd: 提供 DKIM 签名及校验、SPF校验、为外发邮件添加“免责声明”内容,并调用 SpamAssassin 做基于邮件内容的发垃圾扫描,调用 ClamAV 做邮件病毒扫描。Roundcube: 网页邮箱。Awstats: 用于分析 Apache 和 Postfix 日志文件,并生成简单的图表。iRedAdmin:基于 web 的邮件帐号管理程序。
总之,iRedMail是一个不错的邮局服务器免费解决方案,适合小型企业、个人或者团队等搭建内部员工邮箱服务,更多的有关于免费邮箱和邮件服务,还 有:
- 1、国外邮件:免费SMTP邮件服务:Mandrill,Sendgrid,Mailjet,Postmarkapp,MailChimp
- 2、邮件发送服务:免费超大量邮件发送服务Amazon SES和Mailgun提供SMTP和API支持
- 3、免费SMTP服务:各大免费邮箱邮件群发账户SMTP服务器配置及SMTP发送量限制情况
iRedMail开源免费的邮件服务器安装与配置:邮件账号管理,SMTP/POP3,网页邮箱
1、iRedMail官网:
- 1、官方网站:http://www.iredmail.org/
2、在安装前要为你的VPS主机设置一个正确的域名,先编辑你的主机域名设置:vim /etc/hosts,把你的域名解析放在第一位,例如:127.0.0.1 mails.freehao123.info localhost localhost.localdomain
3、执行:hostname -f 检查你的域名设置是不是正确。
4、最后执行:hostname -F /etc/hostname 让域名设置生效。
5、到你的域名DNS管理处,将域名的DNS解析到你的邮件服务器上。
6、同时添加MX记录,如下图所示:
1、执行以下代码,下载并安装iRedMail,本篇文章以Ubuntu作为操作对象,内存要求最低512MB以上:
sudo apt-get update
sudo apt-get install bzip2
wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.8.7.tar.bz2
tar xjf iRedMail-0.8.7.tar.bz2
cd iRedMail-0.8.7
bash iRedMail.sh
2、接着就会进入到iRedMail 安装进程的欢迎页面。
3、同意后,输入你想要安装iRedMail 的位置。
4、勾选你想要安装的数据库组件,一般我们选择MysqL用来存储数据。
5、设置MysqL管理员密码。
6、填写你的域名,这个域名和刚刚设置的主机域名是不能一样的。
7、接着设置Webmail和iRedAdmin管理员密码。
8、最后,就是选择iRedMail的组件,这些组件提供的都是非常实用的功能。
9、在安装组件的过程中,还会生成一些配置,你只要输入Y,回车。
10、最后,iRedMail安装完成,同时还会显示账号和密码等配置信息。重启系统。
1、iRedMail相关的管理后台登录地址:
- Roundcube webmail: http://your_server/mail/
- iRedAdmin: http://your_server/iredadmin/
- phpLDAPadmin:http://your_server/phpldapadmin/
- phpMyAdmin http://your_server/phpmyadmin/
- Awstats: http://your_server/awstats/awstats.pl?config=web (或者 ?config=smtp)
2、待你的邮箱域名DNS生效后,你就可以打开登录地址,然后输入你的账号和密码,进入Webmail页面了。
3、这就是Roundcube webmail的操作界面,和我们常见的免费邮箱差不多,功能齐全。(点击放大)
4、这是Roundcube webmail写信页面。(点击放大)
5、这是邮箱设置,在这里你可以对用户界面、显示参数、通讯录、服务端设置等进行相应的调整。
6、iRedAdmin是一个邮局服务器管理平台。
7、在iRedAdmin中可以查看并管理你的服务器配置,还可以对管理员和账号进行管理。
8、这是添加并管理邮箱账号。
9、另外iRedAdmin还可以添加账号、域名、用户等。
10、你也可以进入phpMyAdmin 来进行MysqL管理和调整。
1、SPF是指Sender Policy Framework,是为了防范垃圾邮件而提出来的一种DNS记录类型,SPF是一种TXT类型的记录。不给iRedMail设置好SPF,你发出去的邮件基本上会被判定为垃圾邮件。
2、添加SPF也很简单,到你的域名DNS处添加TXT,值为(注意替换成你自己的):v=spf1 mx mx:mail.iredmail.org –all 或者是 v=spf1 ip4:202.96.134.133 -all
3、DKIM(DomainKeys Identified Mail)基于传统的密钥认证方式,产生公钥(public key)和私钥(private key),公钥将会存放在 DNS服务器中, 而私钥会存放在发信服务器上。数字签名由发送服务器自动产生,并依附在邮件头中,发送到收信服务器里。
4、 邮件的接收端将会对邮件头中的签名和从DNS获取公钥进行验证, 检查邮件是否被伪造。 DKIM签名是现行通用的反垃圾技术之一,有了该配置, 邮件的到达率将会显著提升。
5、执行:amavisd showkeys 生成密钥,或者用命令:amavisd-new showkeys
6、复制密钥,到你的域名DNS管理处添加TXT记录,记录值就是密钥。
7、再执行:amavisd testkeys 验证,成功则会显示通过。或者用命令:amavisd-new testkeys
五、iRedMail的pop3和SMTP、批量创建用户、支持大附件
1、iRedMail支持pop3和SMTP,可以选择加密和非加密,非加密的端口pop使用110,smtp是25,加密的是995和465。
2、这是在本地用客户端添加iRedMail的pop3和SMTP成功。
3、批量创建用户,iRedMail提供脚本,可以让用户快速添加用户。如果使用的是MYSQL,你可以编辑create_mail_user_MySQL.sh,修改默认值。如果你安装的时候修改了邮件的存储路径,你需要修改脚本的STORAGE_BASE_DIRECTORY值 。
4、创建邮箱用户的缺省密码和用户名相同
cd iRedMail-0.8.7/tools/ bash create_mail_user_MySQL.sh exmple.com user1 user2 user3
5、这个时候,会创建output.sql 文件
mysql -uroot -p mysql> USE vmail; mysql> SOURCE /path/to/output.sql;
4、如果使用LDAP,则可以使用create_mail_user_OpenLDAP.sh脚本,快速创建ldap的邮件用户,创建邮箱用户的缺省密码是用户名相同
STORAGE_BASE_DIRECTORY="/var/vmail/vmail01" #如果你安装的时候修改的邮件的存储路径 LDAP_SUFFIX="dc=iredmail,dc=org" #你的ldap SUFFIX BINDPW='passwd' #ldap管理员cn=manager 密码
5、最后,你也可以直接运行脚本,创建用户
bash create_mail_user_OpenLDAP.sh example.com user1 user2
6、客户端发送大附件。如果你是希望邮件客户端发送大附件,你需要运行
# postconf -e message_size_limit='104857600' #把附件增加到100m
7、重启postfix服务
/etc/init.d/postfix restart
8、webmail。如果希望webmail,发送大附件,那么你还需要多修改2个地方 ,首先是编辑/etc/php5/apache2/php.ini 文件
upload_max_filesize = 100M; post_max_size = 100M;
9、然后是修改/usr/share/apache2/roundcube/.htaccess 文件
php_value upload_max_filesize 100M php_value post_max_size 100M
10、最后,重启apache服务:/etc/init.d/apache2 restart
1、iRedMail执行密钥生成的命令amavisd showkeys 和amavisd-new showkeys 作用是一样的,只不过有些操作系统不支持amavisd命令,改用amavisd-new 就好了。
2、iRedMail提供了详尽的日志报告,如果你出现无法发信或者无法收信,都可以从日志报告查找到原因,经常导致错误的原因可能是postfix、Dovecot等没有正常运行。
原文地址:https://www.cnblogs.com/accumulater/p/13576508.html
- Linux 系统与数据库安全
- 这或许是对小白最友好的python入门了吧——12,列表深入体验
- 初识SqlLite ---.net连接数据库
- 【实践操作】:六步教你如何用开源框架Tensorflow对象检测API构建一个玩具检测器
- 这或许是对小白最友好的python入门了吧——11,if语句初体验
- 你的网站做好神马搜索优化了吗?神马搜索站长工具提交
- 应用程序的通信成本
- 这或许是对小白最友好的python入门了吧——18,定义函数
- 【深度学习】图片风格转换应用程序:使用CoreML创建Prisma
- 压力测试中存在的问题
- 这或许是对小白最友好的python入门了吧——18,用while循环处理列表
- 如何在js中将统计代码图标隐藏
- 警惕IT黑洞
- 这或许是对小白最友好的python入门了吧——17,while循环
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- coscmd的应用
- scheduler-设计与实现
- 3分钟短文:太爽了,用Laravel写API接口!
- Spring mvc文件上传实现
- 「Mysql优化大师三」查询执行计划explain详解,含案例
- flutter BottomAppBar实现不规则底部导航栏
- Yarr:一个UI很漂亮的RSS阅读器
- kotlin Standard中的内联函数示例详解
- 解决react-native软键盘弹出挡住输入框的问题
- flutter编写精美的登录页面
- Flutter实现App功能引导页
- Flutter底部不规则导航的实现过程
- Flutter实现用视频背景的登录页的示例代码
- Flutter实现可循环轮播图效果
- Android判断登录情况