【废弃】在 FreeBSD 操作系统下安装 iRedMail 邮箱服务器
前言
—由于HostVDS的最小服务器只提供10GB的空间,无法编译完成,因此此教程废弃—
?
由于愚笨大学需要自己的带SMTP的(用来给WordPress用)邮箱,因此我们在尝试Exchange(API太复杂)、网易免费企业邮(没探测到MX记录)、VK WorkMail(前身Mail.ru企业邮箱)(启用SMTP需要绑定手机)后决定自己搭建一个。
我们本来有更加便捷的Windows服务器可以使用,但因为腾讯云不开放25端口,因此我们无法使用MailEnable。于是我开了一个新的服务器,体验过CentOS的复杂之后断然转向FreeBSD操作系统。
而似乎很棒的一点是,iRedMail邮箱套件支持FreeBSD操作系统。
准备环境
在上文安装FreeBSD 操作系统时我们把主机名设置成了 mx.uof.edu.kg
,就是为这篇文章埋下的伏笔呢。()
根据iRedMail官网文档,安装iRedMail的所有依赖包都将会被从FreeBSD Ports Collection安装,因此我们要在系统上获取Ports树和内核源码树(注:/usr/src
下有文件的——即已有内核源码树的——就不用执行以下关于git的命令)。
先查看系统内核版本(不然会出现不兼容的奇怪问题):
uname -a
sudo portsnap fetch extract update
# 以下是获取内核
sudo pkg install git
sudo git clone --depth=1 -b <内核branch> -o freebsd https://git.FreeBSD.org/src.git /usr/src # 需要安装一个需要内核源码才能编译的包
安装iRedMail依赖的 bash-static
,顺便将默认Shell更换为GNU Bash以及装Vim编辑器。
sudo pkg install bash-static vim
chsh -s `which bash` # 更改默认Shell为bash
sudo chsh -s `which bash` # 也可以把root的顺便改了(?
确认一下自己的主机名是否是FQDN:
hostname -f
如果不是的话,可以用以下命令更改:
hostname mx.example.org # 不要用根域名的名称!
sudo reboot # 最好重启一下
安装iRedMail
转向iRedMail官网,复制下载链接,打开FreeBSD的ssh窗口:
sudo pkg install wget # FreeBSD默认不带wget,而cURL二进制文件不能跟随重定向
wget -O- https://github.com/iredmail/iRedMail/archive/refs/tags/1.6.0.tar.gz | sudo tar -zxf-
cd iRedMail*
sudo bash iRedMail.sh # 开始安装
在有 TUI(注:终端用户界面)的友好配置之后,就是漫长的编译流程。等待罢。
注意:[2022/5/28,此时刚出FreeBSD 13.1] 编译有可能在编译nginx时停下,这时要手动修复iRedMail/functions/packages-freebsd.sh
。
定位到604行左右,在 cat
行下面添加
OPTIONS_FILE_UNSET+=PCRE_ONE
OPTIONS_FILE_SET+=PCRE_TWO
参考
《FreeBSD下安装iRedMail搭建自己的邮件服务器》 - 可乐
《Install iRedMail on FreeBSD》(iRedMail违反了FreeBSD基金会的法令呢) - iRedMail
《FreeBSD使用手册》 - FreeBSD 社区