diff --git a/README.md b/README.md index 3645da83..6bc6d446 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,9 @@ We're migrating [old wiki documents](http://www.iredmail.org/wiki) to Markdown f # Install iRedMail * [Install iRedMail on Red Hat Enterprise Linux, CentOS](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/0-install.iredmail.on.rhel.md) * [Install iRedMail on Debian or Ubuntu Linux](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/1-install.iredmail.on.debian.ubuntu.md) -* [Install iRedMail on FreeBSD (without Jail)](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/2-install.iredmail.on.freebsd.md) -* [Install iRedMail on OpenBSD](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/3-install.iredmail.on.openbsd.md) +* [Install iRedMail on FreeBSD](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/2-install.iredmail.on.freebsd.md) +* [Install iRedMail on FreeBSD inside Jail (with ezjail)](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/3-install.iredmail.on.freebsd.with.jail.md) +* [Install iRedMail on OpenBSD](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/4-install.iredmail.on.openbsd.md) * [Setup DNS records for your iRedMail server](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/setup.dns.md) * [Perform silent/unattended iRedMail installation](https://bitbucket.org/zhb/docs.iredmail.org/src/default/installation/unattended.iredmail.installation.md) # Configure mail client applications diff --git a/TODO.md b/TODO.md index 6e1ba119..c1ab219b 100644 --- a/TODO.md +++ b/TODO.md @@ -2,6 +2,7 @@ # New +* http://www.iredmail.org/wiki/index.php?title=Install/iRedMail/FreeBSD.Jail * iRedMail upgrade tutorials * Upgrade iRedAPD: http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/Upgrade.iRedAPD * How to enable SSHA512/BCRYPT in Dovecot + Roundcubemail. @@ -13,7 +14,6 @@ # installation guides -* http://www.iredmail.org/wiki/index.php?title=Install/iRedMail/FreeBSD.Jail * http://www.iredmail.org/admin_installation_debian.html * http://www.iredmail.org/admin_installation_opensuse.html * http://www.iredmail.org/admin_installation_freebsd.html @@ -32,7 +32,6 @@ # wiki FAQ -* http://www.iredmail.org/wiki/index.php?title=IRedAdmin-Pro/FAQ/change.default.password.policy * http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/Backup * http://www.iredmail.org/forum/topic1968-enabling-ipv6-for-your-iredmail-postfixdovecot.html * http://www.iredmail.org/forum/topic210-iredmail-support-faq-how-to-enable-signing-disclaimer-on-outgoing-mails.html @@ -66,6 +65,7 @@ # FAQ +* ~~ http://www.iredmail.org/wiki/index.php?title=IRedAdmin-Pro/FAQ/change.default.password.policy ~~ * ~~ http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/Turn.On.Debug.Mode.In.Amavisd ~~ * ~~ http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/SQL/Create.Mail.Alias ~~ * ~~ http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/LDAP/Monitor.Incoming.and.Outgoing.Mails.with.BCC ~~ diff --git a/html/index.html b/html/index.html index 5a3ffb79..727199af 100644 --- a/html/index.html +++ b/html/index.html @@ -13,7 +13,8 @@
If you want to install iRedMail inside FreeBSD Jail, please use this installation guide instead: -Install iRedMail inside FreeBSD Jail (with ezjail)
+Install iRedMail inside FreeBSD Jail (with ezjail)
IMPORTANT WARNING: iRedMail is designed to be deployed on a FRESH server system, diff --git a/html/install.iredmail.on.freebsd.with.jail.html b/html/install.iredmail.on.freebsd.with.jail.html new file mode 100644 index 00000000..3fcdc264 --- /dev/null +++ b/html/install.iredmail.on.freebsd.with.jail.html @@ -0,0 +1,301 @@ + +
+ +mx.example.com
and IP address 172.16.122.244
for our Jail server.Notes:
+IMPORTANT WARNING: iRedMail is designed to be deployed on a FRESH server system, +which means your server does NOT have mail related components installed, +e.g. MySQL, OpenLDAP, Postfix, Dovecot, Amavisd, etc. iRedMail will install +and configure them for you automatically. Otherwise it may override your +existing files/configurations althought it will backup files before modifing, +and it may be not working as expected.
+sysutils/ezjail
for FreeBSD.We use hostname mx.example.com
and internal IP address 172.16.122.244
for
+example. We created an alias IP address on network interface em0
, so we have
+below setting in /etc/rc.conf
for this IP address like below:
# Part of file: /etc/rc.conf
+
+ifconfig_em0_alias0="inet 172.16.122.244 netmask 255.255.255.0"
+
+# Settings for our Jail: mx.example.com.
+jail_mx_example_com_hostname="mx.example.com"
+jail_mx_example_com_ip="172.16.122.244"
+
+# Required by PostgreSQL, otherwise initializing database will fail.
+jail_mx_example_com_parameters='allow.sysvipc=1'
+
+
+# cd /usr/ports/sysutils/ezjail/
+# make install clean
+
+
+/etc/rc.conf
:# Part of file: /etc/rc.conf
+
+# Start ezjail while system start up
+ezjail_enable="YES"
+
+
+ping
command inside Jail by adding below line in
+ /etc/sysctl.conf
:# Part of file: /etc/sysctl.conf
+security.jail.allow_raw_sockets=1
+
+
+/etc/rc.conf
.# reboot
+
+
+# ezjail-admin install -p
+
+
+mx.example.com
, bound to internal IP address
+ 172.16.122.244
. All files are placed under /jails/mx.example.com
:# ezjail-admin create -r /jails/mx.example.com mx.example.com 172.16.122.244
+
+
+/jails/mx.example.com/etc/rc.conf
:# File: /jails/mx.example.com/etc/rc.conf
+hostname="mx.example.com"
+
+
+[OPTIONAL] Share /usr/ports/distfiles/ with Jail by adding below line in
+ /etc/fstab.mx_example_com
:
/var/ports
instead of
+ /usr/ports
in /jails/mx.example.com/etc/make.conf
, you can either
+ use this default setting or change it to /usr/ports
.# Part of file: /etc/fstab.mx_example.com
+/usr/ports/distfiles /jails/mx.example.com/basejail/usr/ports/distfiles nullfs rw 0 0
+
+
+# /usr/local/etc/rc.d/ezjail restart
+
+
+# ezjail-admin list
+STA JID IP Hostname Root Directory
+--- ---- ---------------- --------------------------------- ------------------------
+DS 1 172.16.122.244 mx.example.com /jails/mx.example.com
+
+
+We can now enter this Jail with below command:
+# ezjail-admin console mx.example.com
+
+
+/etc/resolv.conf
with valid DNS server address(es). For example:# File: /etc/resolv.conf
+nameserver 172.16.122.2
+
+
+bash-static
, it's required by iRedMail.# pkg_add -r bash-static
+
+
+++For Chinese users: Our domain name "iredmail.org" is blocked in China mainland since Jun 04, 2011, please replace all 'iredmail.org' by its IP address "106.187.51.47" (without quotes) in /root/iRedMail-x.y.z/pkgs/get_all.sh BEFORE executing "iRedMail.sh". This is a Linode VPS hosted in Tokyo, Japan.
+
It's now ready to start iRedMail installer inside Jail, it will ask you several simple +questions, that's all steps to setup a full-featured mail server.
+# bash # <- start bash shell, REQUIRED
+# cd /root/iRedMail/
+# LOCAL_ADDRESS='172.16.122.244' bash iRedMail.sh
+
+
+/var/vmail/
.IMPORTANT NOTE: There's no big difference between available backends, so +it's strongly recommended to choose the one you're familiar with for easier +management and maintenance after installation.
+ +LDAP suffix.
+ +Password of LDAP root dn.
+ +NOTE: MySQL is used to store data of other applications (e.g. Roundcube +webmail, Cluebringer, Amavisd-new) if you choose OpenLDAP or MySQL as backend.
+ +Note: This account is an admin account and a mail user. That means you can +login to webmail and admin panel (iRedAdmin) with this account, login username +is full email address.
+ +After answered above questions, iRedMail installer will ask your confirm to
+start installation. It will install and configure required packages
+automatically. Type y
or Y
and press Enter
to start.
Configuration completed.
+
+*************************************************************************
+**************************** WARNING ***********************************
+*************************************************************************
+* *
+* Please do remember to *REMOVE* configuration file after installation *
+* completed successfully. *
+* *
+* * /root/iRedMail-x.y.z/config
+* *
+*************************************************************************
+<<< iRedMail >>> Continue? [Y|n] # <- Type 'Y' or 'y' here, and press 'Enter' to continue
+
+
+Read file /root/iRedMail-x.y.z/iRedMail.tips
first, it contains:
After installation successfully completed, you can access web-based programs
+if you choose to install them. Replace your_server
below by your real server
+hostname or IP address.
Please post all issues, feedbacks, feature requests, suggestions in our online +support forum, it's more responsible than you +expected.
+Most binary packages in iRedMail yum repository comes from below repositories,
+packages with -ired
flag were packed by iRedMail project.
If you found something wrong +in this document, please do +contact us to fix it.
This tutorial is published under a CC BY-ND 3.0 license. + + + \ No newline at end of file diff --git a/installation/2-install.iredmail.on.freebsd.md b/installation/2-install.iredmail.on.freebsd.md index 5c733edb..1ee020cb 100644 --- a/installation/2-install.iredmail.on.freebsd.md +++ b/installation/2-install.iredmail.on.freebsd.md @@ -1,10 +1,10 @@ -# Install iRedMail on FreeBSD (without Jail) +# Install iRedMail on FreeBSD [TOC] > If you want to install iRedMail inside FreeBSD __Jail__, please use > this installation guide instead: -> [Install iRedMail inside FreeBSD Jail (with ezjail)](http://www.iredmail.org/wiki/index.php?title=Install/iRedMail/FreeBSD.Jail) +> [Install iRedMail inside FreeBSD Jail (with ezjail)](./install.iredmail.on.freebsd.with.jail.html) ## System Requirements diff --git a/installation/3-install.iredmail.on.freebsd.with.jail.md b/installation/3-install.iredmail.on.freebsd.with.jail.md new file mode 100644 index 00000000..0ef7b9a6 --- /dev/null +++ b/installation/3-install.iredmail.on.freebsd.with.jail.md @@ -0,0 +1,278 @@ +# Install iRedMail on FreeBSD inside Jail (with ezjail) + +[TOC] + +## Summary + +* This tutorial describes how to create a FreeBSD Jail with ezjail, then + install the latest iRedMail in Jail. +* We use hostname `mx.example.com` and IP address `172.16.122.244` for our Jail server. + +Notes: + +* This tutorial was tested with FreeBSD 9 and the latest ports tree, but it + should work on FreeBSD 8 and 10 too. +* All backends available in iRedMail (OpenLDAP, MySQL/MariaDB, PostgreSQL) were + tested, work like a charm. :) + +## System Requirements + +__IMPORTANT WARNING__: iRedMail is designed to be deployed on a FRESH server system, +which means your server does __NOT__ have mail related components installed, +e.g. MySQL, OpenLDAP, Postfix, Dovecot, Amavisd, etc. iRedMail will install +and configure them for you automatically. Otherwise it may override your +existing files/configurations althought it will backup files before modifing, +and it may be not working as expected. + +* The latest stable release of iRedMail. You can download it here: http://www.iredmail.org/download.html +* Port `sysutils/ezjail` for FreeBSD. + +## Preparations + +### Set a proper hostname and IP address for Jail server + +We use hostname `mx.example.com` and internal IP address `172.16.122.244` for +example. We created an alias IP address on network interface `em0`, so we have +below setting in `/etc/rc.conf` for this IP address like below: + +``` +# Part of file: /etc/rc.conf + +ifconfig_em0_alias0="inet 172.16.122.244 netmask 255.255.255.0" + +# Settings for our Jail: mx.example.com. +jail_mx_example_com_hostname="mx.example.com" +jail_mx_example_com_ip="172.16.122.244" + +# Required by PostgreSQL, otherwise initializing database will fail. +jail_mx_example_com_parameters='allow.sysvipc=1' +``` + +### Install sysutils/ezjail and add required settings + +* Install ezjail with ports tree: + +``` +# cd /usr/ports/sysutils/ezjail/ +# make install clean +``` + +* Enable Jail by adding below setting in `/etc/rc.conf`: + +``` +# Part of file: /etc/rc.conf + +# Start ezjail while system start up +ezjail_enable="YES" +``` + +* [OPTIONAL] Allow to use `ping` command inside Jail by adding below line in + `/etc/sysctl.conf`: + +``` +# Part of file: /etc/sysctl.conf +security.jail.allow_raw_sockets=1 +``` + +* Rebooting system is required after changing `/etc/rc.conf`. + +``` +# reboot +``` + +### Create Jail + +* After server reboot, create the base jail that all jails we created later will use: + +``` +# ezjail-admin install -p +``` + +* Create Jail for domain name `mx.example.com`, bound to internal IP address + `172.16.122.244`. All files are placed under `/jails/mx.example.com`: + +``` +# ezjail-admin create -r /jails/mx.example.com mx.example.com 172.16.122.244 +``` + +* Set hostname of Jail in `/jails/mx.example.com/etc/rc.conf`: + +``` +# File: /jails/mx.example.com/etc/rc.conf +hostname="mx.example.com" +``` + +* [OPTIONAL] Share /usr/ports/distfiles/ with Jail by adding below line in + `/etc/fstab.mx_example_com`: + + * NOTE: Jail will set ports tree directory to `/var/ports` instead of + `/usr/ports` in `/jails/mx.example.com/etc/make.conf`, you can either + use this default setting or change it to `/usr/ports`. + +``` +# Part of file: /etc/fstab.mx_example.com +/usr/ports/distfiles /jails/mx.example.com/basejail/usr/ports/distfiles nullfs rw 0 0 +``` + +* Start Jail. + +``` +# /usr/local/etc/rc.d/ezjail restart +``` + +* List all Jails: + +``` +# ezjail-admin list +STA JID IP Hostname Root Directory +--- ---- ---------------- --------------------------------- ------------------------ +DS 1 172.16.122.244 mx.example.com /jails/mx.example.com +``` + +## Install iRedMail + +We can now enter this Jail with below command: + +``` +# ezjail-admin console mx.example.com +``` + +* In Jail, update `/etc/resolv.conf` with valid DNS server address(es). For example: + +``` +# File: /etc/resolv.conf +nameserver 172.16.122.2 +``` + +* In Jail, install binary package `bash-static`, it's required by iRedMail. + +``` +# pkg_add -r bash-static +``` + +## Start iRedMail installer + +> For Chinese users: Our domain name "iredmail.org" is blocked in China mainland since Jun 04, 2011, please replace all 'iredmail.org' by its IP address "106.187.51.47" (without quotes) in /root/iRedMail-x.y.z/pkgs/get_all.sh BEFORE executing "iRedMail.sh". This is a Linode VPS hosted in Tokyo, Japan. + + +It's now ready to start iRedMail installer inside Jail, it will ask you several simple +questions, that's all steps to setup a full-featured mail server. + +``` +# bash # <- start bash shell, REQUIRED +# cd /root/iRedMail/ +# LOCAL_ADDRESS='172.16.122.244' bash iRedMail.sh +``` + +## Screenshots of installation: + +* Welcome and thanks for your use + +![](../images/installation/iredmail/welcome.png) + +* Specify location to store all mailboxes. Default is `/var/vmail/`. + +![](../images/installation/iredmail/location_to_store_mailboxes.png) + +* Choose backend used to store mail accounts. You can manage mail accounts +with iRedAdmin, our web-based iRedMail admin panel. + +__IMPORTANT NOTE__: There's no big difference between available backends, so +it's strongly recommended to choose the one you're familiar with for easier +management and maintenance after installation. + +![](../images/installation/iredmail/backend.png) + +* If you choose to store mail accounts in OpenLDAP, iRedMail installer will +ask you two questions about OpenLDAP. + +LDAP suffix. + +![](../images/installation/iredmail/ldap_suffix.png) + +Password of LDAP root dn. + +![](../images/installation/iredmail/pw_of_ldap_root_dn.png) + +* Set password of MySQL or PostgreSQL admin user. + +__NOTE__: MySQL is used to store data of other applications (e.g. Roundcube +webmail, Cluebringer, Amavisd-new) if you choose OpenLDAP or MySQL as backend. + +![](../images/installation/iredmail/pw_of_mysql_root_user.png) + +* Add your first mail domain name + +![](../images/installation/iredmail/first_mail_domain.png) + +* Set password of admin account of your first mail domain. + +__Note__: This account is an admin account and a mail user. That means you can +login to webmail and admin panel (iRedAdmin) with this account, login username +is full email address. + +![](../images/installation/iredmail/pw_of_domain_admin.png) + +* Choose optional components + +![](../images/installation/iredmail/optional_components.png) + + +After answered above questions, iRedMail installer will ask your confirm to +start installation. It will install and configure required packages +automatically. Type `y` or `Y` and press `Enter` to start. + +``` +Configuration completed. + +************************************************************************* +**************************** WARNING *********************************** +************************************************************************* +* * +* Please do remember to *REMOVE* configuration file after installation * +* completed successfully. * +* * +* * /root/iRedMail-x.y.z/config +* * +************************************************************************* +<<< iRedMail >>> Continue? [Y|n] # <- Type 'Y' or 'y' here, and press 'Enter' to continue +``` + +## Important things you __MUST__ know after installation + +* Read file `/root/iRedMail-x.y.z/iRedMail.tips` first, it contains: + + * URLs, usernames and passwords of web-based applications + * Location of mail serve related software configuration files + * Some other important and sensitive information + +* [Setup DNS records for your mail server](./setup.dns.html) +* [Configure Thunderbird as mail client (POP3/IMAP, SMTP and global ldap address book)](./configure.thunderbird.html) + +## Access webmail and other web applications + +After installation successfully completed, you can access web-based programs +if you choose to install them. Replace `your_server` below by your real server +hostname or IP address. + +* __Roundcube webmail__: [https://your_server/mail/](https://your_server/mail/) +* __Web admin panel (iRedAdmin)__: [httpS://your_server/iredadmin/](httpS://your_server/iredadmin/) +* __phpLDAPadmin__ (available if you choose LDAP backend): [httpS://your_server/phpldapadmin/](httpS://your_server/phpldapadmin/) +* __Awstats__: [httpS://your_server/awstats/awstats.pl?config=web](httpS://your_server/awstats/awstats.pl?config=web) (or ?config=smtp) + +## Get technical support + +Please post all issues, feedbacks, feature requests, suggestions in our [online +support forum](http://www.iredmail.org/forum/), it's more responsible than you +expected. + +## Notes about binary packages provided by iRedMail project + +Most binary packages in iRedMail yum repository comes from below repositories, +packages with `-ired` flag were packed by iRedMail project. + +* [Dag Wieers](http://packages.sw.be/) +* [EPEL](http://download.fedora.redhat.com/pub/epel/) +* [ATrpms](http://atrpms.net/) + + diff --git a/installation/3-install.iredmail.on.openbsd.md b/installation/4-install.iredmail.on.openbsd.md similarity index 100% rename from installation/3-install.iredmail.on.openbsd.md rename to installation/4-install.iredmail.on.openbsd.md