New tutorial: installation/3-install.iredmail.on.freebsd.with.jail.md.

This commit is contained in:
Zhang Huangbin 2014-12-03 21:01:21 +08:00
parent 57932d1c0d
commit 6b8e61c0b8
8 changed files with 592 additions and 11 deletions

View File

@ -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

View File

@ -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 ~~

View File

@ -13,7 +13,8 @@
<ul>
<li><a href="install.iredmail.on.rhel.html">Install iRedMail on Red Hat Enterprise Linux, CentOS</a></li>
<li><a href="install.iredmail.on.debian.ubuntu.html">Install iRedMail on Debian or Ubuntu Linux</a></li>
<li><a href="install.iredmail.on.freebsd.html">Install iRedMail on FreeBSD (without Jail)</a></li>
<li><a href="install.iredmail.on.freebsd.html">Install iRedMail on FreeBSD</a></li>
<li><a href="install.iredmail.on.freebsd.with.jail.html">Install iRedMail on FreeBSD inside Jail (with ezjail)</a></li>
<li><a href="install.iredmail.on.openbsd.html">Install iRedMail on OpenBSD</a></li>
<li><a href="setup.dns.html">Setup DNS records for your iRedMail server</a></li>
<li><a href="unattended.iredmail.installation.html">Perform silent/unattended iRedMail installation</a></li>

View File

@ -1,7 +1,7 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Install iRedMail on FreeBSD (without Jail)</title>
<title>Install iRedMail on FreeBSD</title>
<link href="./css/markdown.css" rel="stylesheet"></head>
</head>
<body>
@ -10,10 +10,10 @@
<a href="http://www.iredmail.org" target="_blank">iRedMail web site</a>
// <a href="./index.html">Document Index</a>
</div><h1 id="install-iredmail-on-freebsd-without-jail">Install iRedMail on FreeBSD (without Jail)</h1>
</div><h1 id="install-iredmail-on-freebsd">Install iRedMail on FreeBSD</h1>
<div class="toc">
<ul>
<li><a href="#install-iredmail-on-freebsd-without-jail">Install iRedMail on FreeBSD (without Jail)</a><ul>
<li><a href="#install-iredmail-on-freebsd">Install iRedMail on FreeBSD</a><ul>
<li><a href="#system-requirements">System Requirements</a></li>
<li><a href="#preparations">Preparations</a><ul>
<li><a href="#set-a-fully-qualified-domain-name-fqdn-hostname-on-your-server">Set a fully qualified domain name (FQDN) hostname on your server</a></li>
@ -35,7 +35,7 @@
<blockquote>
<p>If you want to install iRedMail inside FreeBSD <strong>Jail</strong>, please use
this installation guide instead:
<a href="http://www.iredmail.org/wiki/index.php?title=Install/iRedMail/FreeBSD.Jail">Install iRedMail inside FreeBSD Jail (with ezjail)</a></p>
<a href="./install.iredmail.on.freebsd.with.jail.html">Install iRedMail inside FreeBSD Jail (with ezjail)</a></p>
</blockquote>
<h2 id="system-requirements">System Requirements</h2>
<p><strong>IMPORTANT WARNING</strong>: iRedMail is designed to be deployed on a FRESH server system,

View File

@ -0,0 +1,301 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Install iRedMail on FreeBSD inside Jail (with ezjail)</title>
<link href="./css/markdown.css" rel="stylesheet"></head>
</head>
<body>
<div id="navigation">
<a href="http://www.iredmail.org" target="_blank">iRedMail web site</a>
// <a href="./index.html">Document Index</a>
</div><h1 id="install-iredmail-on-freebsd-inside-jail-with-ezjail">Install iRedMail on FreeBSD inside Jail (with ezjail)</h1>
<div class="toc">
<ul>
<li><a href="#install-iredmail-on-freebsd-inside-jail-with-ezjail">Install iRedMail on FreeBSD inside Jail (with ezjail)</a><ul>
<li><a href="#summary">Summary</a></li>
<li><a href="#system-requirements">System Requirements</a></li>
<li><a href="#preparations">Preparations</a><ul>
<li><a href="#set-a-proper-hostname-and-ip-address-for-jail-server">Set a proper hostname and IP address for Jail server</a></li>
<li><a href="#install-sysutilsezjail-and-add-required-settings">Install sysutils/ezjail and add required settings</a></li>
<li><a href="#create-jail">Create Jail</a></li>
</ul>
</li>
<li><a href="#install-iredmail">Install iRedMail</a></li>
<li><a href="#start-iredmail-installer">Start iRedMail installer</a></li>
<li><a href="#screenshots-of-installation">Screenshots of installation:</a></li>
<li><a href="#important-things-you-must-know-after-installation">Important things you MUST know after installation</a></li>
<li><a href="#access-webmail-and-other-web-applications">Access webmail and other web applications</a></li>
<li><a href="#get-technical-support">Get technical support</a></li>
<li><a href="#notes-about-binary-packages-provided-by-iredmail-project">Notes about binary packages provided by iRedMail project</a></li>
</ul>
</li>
</ul>
</div>
<h2 id="summary">Summary</h2>
<ul>
<li>This tutorial describes how to create a FreeBSD Jail with ezjail, then
install the latest iRedMail in Jail.</li>
<li>We use hostname <code>mx.example.com</code> and IP address <code>172.16.122.244</code> for our Jail server.</li>
</ul>
<p>Notes:</p>
<ul>
<li>This tutorial was tested with FreeBSD 9 and the latest ports tree, but it
should work on FreeBSD 8 and 10 too.</li>
<li>All backends available in iRedMail (OpenLDAP, MySQL/MariaDB, PostgreSQL) were
tested, work like a charm. :)</li>
</ul>
<h2 id="system-requirements">System Requirements</h2>
<p><strong>IMPORTANT WARNING</strong>: iRedMail is designed to be deployed on a FRESH server system,
which means your server does <strong>NOT</strong> 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.</p>
<ul>
<li>The latest stable release of iRedMail. You can download it here: http://www.iredmail.org/download.html</li>
<li>Port <code>sysutils/ezjail</code> for FreeBSD.</li>
</ul>
<h2 id="preparations">Preparations</h2>
<h3 id="set-a-proper-hostname-and-ip-address-for-jail-server">Set a proper hostname and IP address for Jail server</h3>
<p>We use hostname <code>mx.example.com</code> and internal IP address <code>172.16.122.244</code> for
example. We created an alias IP address on network interface <code>em0</code>, so we have
below setting in <code>/etc/rc.conf</code> for this IP address like below:</p>
<pre><code># Part of file: /etc/rc.conf
ifconfig_em0_alias0=&quot;inet 172.16.122.244 netmask 255.255.255.0&quot;
# Settings for our Jail: mx.example.com.
jail_mx_example_com_hostname=&quot;mx.example.com&quot;
jail_mx_example_com_ip=&quot;172.16.122.244&quot;
# Required by PostgreSQL, otherwise initializing database will fail.
jail_mx_example_com_parameters='allow.sysvipc=1'
</code></pre>
<h3 id="install-sysutilsezjail-and-add-required-settings">Install sysutils/ezjail and add required settings</h3>
<ul>
<li>Install ezjail with ports tree:</li>
</ul>
<pre><code># cd /usr/ports/sysutils/ezjail/
# make install clean
</code></pre>
<ul>
<li>Enable Jail by adding below setting in <code>/etc/rc.conf</code>:</li>
</ul>
<pre><code># Part of file: /etc/rc.conf
# Start ezjail while system start up
ezjail_enable=&quot;YES&quot;
</code></pre>
<ul>
<li>[OPTIONAL] Allow to use <code>ping</code> command inside Jail by adding below line in
<code>/etc/sysctl.conf</code>:</li>
</ul>
<pre><code># Part of file: /etc/sysctl.conf
security.jail.allow_raw_sockets=1
</code></pre>
<ul>
<li>Rebooting system is required after changing <code>/etc/rc.conf</code>.</li>
</ul>
<pre><code># reboot
</code></pre>
<h3 id="create-jail">Create Jail</h3>
<ul>
<li>After server reboot, create the base jail that all jails we created later will use:</li>
</ul>
<pre><code># ezjail-admin install -p
</code></pre>
<ul>
<li>Create Jail for domain name <code>mx.example.com</code>, bound to internal IP address
<code>172.16.122.244</code>. All files are placed under <code>/jails/mx.example.com</code>:</li>
</ul>
<pre><code># ezjail-admin create -r /jails/mx.example.com mx.example.com 172.16.122.244
</code></pre>
<ul>
<li>Set hostname of Jail in <code>/jails/mx.example.com/etc/rc.conf</code>:</li>
</ul>
<pre><code># File: /jails/mx.example.com/etc/rc.conf
hostname=&quot;mx.example.com&quot;
</code></pre>
<ul>
<li>
<p>[OPTIONAL] Share /usr/ports/distfiles/ with Jail by adding below line in
<code>/etc/fstab.mx_example_com</code>:</p>
<ul>
<li>NOTE: Jail will set ports tree directory to <code>/var/ports</code> instead of
<code>/usr/ports</code> in <code>/jails/mx.example.com/etc/make.conf</code>, you can either
use this default setting or change it to <code>/usr/ports</code>.</li>
</ul>
</li>
</ul>
<pre><code># Part of file: /etc/fstab.mx_example.com
/usr/ports/distfiles /jails/mx.example.com/basejail/usr/ports/distfiles nullfs rw 0 0
</code></pre>
<ul>
<li>Start Jail.</li>
</ul>
<pre><code># /usr/local/etc/rc.d/ezjail restart
</code></pre>
<ul>
<li>List all Jails:</li>
</ul>
<pre><code># ezjail-admin list
STA JID IP Hostname Root Directory
--- ---- ---------------- --------------------------------- ------------------------
DS 1 172.16.122.244 mx.example.com /jails/mx.example.com
</code></pre>
<h2 id="install-iredmail">Install iRedMail</h2>
<p>We can now enter this Jail with below command:</p>
<pre><code># ezjail-admin console mx.example.com
</code></pre>
<ul>
<li>In Jail, update <code>/etc/resolv.conf</code> with valid DNS server address(es). For example:</li>
</ul>
<pre><code># File: /etc/resolv.conf
nameserver 172.16.122.2
</code></pre>
<ul>
<li>In Jail, install binary package <code>bash-static</code>, it's required by iRedMail.</li>
</ul>
<pre><code># pkg_add -r bash-static
</code></pre>
<h2 id="start-iredmail-installer">Start iRedMail installer</h2>
<blockquote>
<p>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.</p>
</blockquote>
<p>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.</p>
<pre><code># bash # &lt;- start bash shell, REQUIRED
# cd /root/iRedMail/
# LOCAL_ADDRESS='172.16.122.244' bash iRedMail.sh
</code></pre>
<h2 id="screenshots-of-installation">Screenshots of installation:</h2>
<ul>
<li>Welcome and thanks for your use</li>
</ul>
<p><img alt="" src="../images/installation/iredmail/welcome.png" /></p>
<ul>
<li>Specify location to store all mailboxes. Default is <code>/var/vmail/</code>.</li>
</ul>
<p><img alt="" src="../images/installation/iredmail/location_to_store_mailboxes.png" /></p>
<ul>
<li>Choose backend used to store mail accounts. You can manage mail accounts
with iRedAdmin, our web-based iRedMail admin panel.</li>
</ul>
<p><strong>IMPORTANT NOTE</strong>: 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.</p>
<p><img alt="" src="../images/installation/iredmail/backend.png" /></p>
<ul>
<li>If you choose to store mail accounts in OpenLDAP, iRedMail installer will
ask you two questions about OpenLDAP.</li>
</ul>
<p>LDAP suffix.</p>
<p><img alt="" src="../images/installation/iredmail/ldap_suffix.png" /></p>
<p>Password of LDAP root dn.</p>
<p><img alt="" src="../images/installation/iredmail/pw_of_ldap_root_dn.png" /></p>
<ul>
<li>Set password of MySQL or PostgreSQL admin user.</li>
</ul>
<p><strong>NOTE</strong>: MySQL is used to store data of other applications (e.g. Roundcube
webmail, Cluebringer, Amavisd-new) if you choose OpenLDAP or MySQL as backend.</p>
<p><img alt="" src="../images/installation/iredmail/pw_of_mysql_root_user.png" /></p>
<ul>
<li>Add your first mail domain name</li>
</ul>
<p><img alt="" src="../images/installation/iredmail/first_mail_domain.png" /></p>
<ul>
<li>Set password of admin account of your first mail domain.</li>
</ul>
<p><strong>Note</strong>: 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.</p>
<p><img alt="" src="../images/installation/iredmail/pw_of_domain_admin.png" /></p>
<ul>
<li>Choose optional components</li>
</ul>
<p><img alt="" src="../images/installation/iredmail/optional_components.png" /></p>
<p>After answered above questions, iRedMail installer will ask your confirm to
start installation. It will install and configure required packages
automatically. Type <code>y</code> or <code>Y</code> and press <code>Enter</code> to start.</p>
<pre><code>Configuration completed.
*************************************************************************
**************************** WARNING ***********************************
*************************************************************************
* *
* Please do remember to *REMOVE* configuration file after installation *
* completed successfully. *
* *
* * /root/iRedMail-x.y.z/config
* *
*************************************************************************
&lt;&lt;&lt; iRedMail &gt;&gt;&gt; Continue? [Y|n] # &lt;- Type 'Y' or 'y' here, and press 'Enter' to continue
</code></pre>
<h2 id="important-things-you-must-know-after-installation">Important things you <strong>MUST</strong> know after installation</h2>
<ul>
<li>
<p>Read file <code>/root/iRedMail-x.y.z/iRedMail.tips</code> first, it contains:</p>
<ul>
<li>URLs, usernames and passwords of web-based applications</li>
<li>Location of mail serve related software configuration files</li>
<li>Some other important and sensitive information</li>
</ul>
</li>
<li>
<p><a href="./setup.dns.html">Setup DNS records for your mail server</a></p>
</li>
<li><a href="./configure.thunderbird.html">Configure Thunderbird as mail client (POP3/IMAP, SMTP and global ldap address book)</a></li>
</ul>
<h2 id="access-webmail-and-other-web-applications">Access webmail and other web applications</h2>
<p>After installation successfully completed, you can access web-based programs
if you choose to install them. Replace <code>your_server</code> below by your real server
hostname or IP address.</p>
<ul>
<li><strong>Roundcube webmail</strong>: <a href="https://your_server/mail/">https://your_server/mail/</a></li>
<li><strong>Web admin panel (iRedAdmin)</strong>: <a href="httpS://your_server/iredadmin/">httpS://your_server/iredadmin/</a></li>
<li><strong>phpLDAPadmin</strong> (available if you choose LDAP backend): <a href="httpS://your_server/phpldapadmin/">httpS://your_server/phpldapadmin/</a></li>
<li><strong>Awstats</strong>: <a href="httpS://your_server/awstats/awstats.pl?config=web">httpS://your_server/awstats/awstats.pl?config=web</a> (or ?config=smtp)</li>
</ul>
<h2 id="get-technical-support">Get technical support</h2>
<p>Please post all issues, feedbacks, feature requests, suggestions in our <a href="http://www.iredmail.org/forum/">online
support forum</a>, it's more responsible than you
expected.</p>
<h2 id="notes-about-binary-packages-provided-by-iredmail-project">Notes about binary packages provided by iRedMail project</h2>
<p>Most binary packages in iRedMail yum repository comes from below repositories,
packages with <code>-ired</code> flag were packed by iRedMail project.</p>
<ul>
<li><a href="http://packages.sw.be/">Dag Wieers</a></li>
<li><a href="http://download.fedora.redhat.com/pub/epel/">EPEL</a></li>
<li><a href="http://atrpms.net/">ATrpms</a></li>
</ul><br /><p style="text-align: center;">If you found something wrong
in this document, please do
<a href="http://www.iredmail.org/contact.html">contact us</a> to fix it.</p><p style="text-align: center; color: grey;">This tutorial is published under a <a href="http://creativecommons.org/licenses/by-nd/3.0/us/" target="_blank">CC BY-ND 3.0</a> license.<!-- Google Analytics -->
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-3293801-14");
pageTracker._trackPageview();
} catch(err) {}
</script>
</body></html>

View File

@ -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

View File

@ -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/)