Инструкция по установке EAI почтового сервера под ОС FreeBSD 10.2: различия между версиями

Материал из вики.поддерживаю.рф
Перейти к навигации Перейти к поиску
(Новая страница: «ааа»)
 
 
(не показаны 3 промежуточные версии этого же участника)
Строка 1: Строка 1:
ааа
 
''Установка Postfix с расширением SMTPUTF8, Cyrus SASL и OpenSSL''
 
== Почтовый сервер: общая информация ==
С помощью данной инструкции вы сможете установить почтовый сервер, который сможет получать почту с интернационализированных почтовых адресов за счет поддержки расширения SMTPUTF8.
 
Система поддерживает протоколы IMAP и POP3 при помощи почтового сервера Courier. Пользователи добавляются как локальные, с логином SSH, так и без него. Их почта хранится в папке /home/user.
 
Используется ОС Freebsd 10.2
 
== Уведомление, требования и первичная установка ==
 
* Убедитесь, что у вас установлена версия Postfix не ниже 3.0
* Если вы устанавливаете какие-либо компоненты почты после установки сервера, обязательно протестируйте сервер на предмет возврата почты SMTPUTF8.
* Предварительно необходимо настроить ресурсные записи DNS, имя хоста – это имя вашего домена (например, domain.com )
* mail.hostname – это имя вашего почтового сервера (например, mail.domain.com)
Необходим рабочий сервер FreeBSD с аккаунтом root (привилегии sudo)
* Установка функционирует как root, если не указано иное
 
<pre>
Update your hostname
</pre>
 
''Если вы используете интернационализированный домен, используйте эквивалент в кодировке punycode.''
Например, mail.ёпочта.рф в кодировке punycode выглядит как mail.xn--80a1acny1d.xn--p1ai
<pre>
vi /etc/hostname
</pre>
 
ОБНОВИТЕ имя хоста для почтового сервера на ВАШЕ
<pre>
mail.domain.com
</pre>
 
Перезагрузите сервер для обновления имени хоста.
 
После перезагрузки команда ниже покажет ваше имя хоста mail.domain.com
 
<pre>
hostname
</pre>
 
== Установите Postfix из репозитария и необходимые библиотеки (Cyrus SASL, OPENSSL) ==
Найдите версию Postfix 3.0.1 или выше чтобы можно было активировать расширение SMTPUTF8. Ссылка для скачивания: http://www.postfix.org/download.html. В примере ниже мы работаем с postfix-3.0.1.tar.gz, ваша версия может отличаться. Установив Postfix с помощью apt-get, вы получите более раннюю версию, которая еще не поддерживает SMTPUTF8. В будущем это может измениться.
 
Установите необходимые библиотеки с помощью портов с опциями по умолчанию
 
<pre>
cd /usr/ports/security/openssl
make && make install
 
cd /usr/ports/security/cyrus-sasl2
make && make install
 
cd /usr/ports/devel/icu
make && make install
</pre>
 
<pre>
Refresh your environment
</pre>
 
Создайте необходимых пользователей и права на использование каталога
 
<pre>
pw groupadd postfix -g 32
pw groupmod mail -m postfix
pw groupadd postdrop
pw useradd postfix -c "Postfix Daemon User" -d /var/spool/postfix -g postfix  -s /bin/false -u 32 
chown -v postfix:postfix /var/mail
</pre>
 
Скачайте Postfix 3.x.x или более позднюю версию и скомпилируйте с openssl и sasl auth
 
<pre>
tar -xzvf postfix-3.0.1.tar.gz
cd postfix-3.0.1
make CCARGS="-DUSE_TLS -I/usr/include/openssl/  -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/include/sasl" AUXLIBS="-lssl -lcrypto -lsasl2" makefiles
make
</pre>
 
Установите Postfix
 
<pre>
sh postfix-install -non-interactive  daemon_directory=/usr/lib/postfix  \
                    manpage_directory=/usr/share/man  \
                    html_directory=/usr/share/doc/postfix-3.0.1/html  \
                    readme_directory=/usr/share/doc/postfix-3.0.1/readme
</pre>
 
Отредактируйте или обновите /etc/rc.conf как указано ниже
 
<pre>
postfix_enable="YES"
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
</pre>
 
Отредактируйте, создайте или обновите /etc/periodic.conf
 
<pre>
daily_clean_hoststat_enable="NO"
daily_status_mail_rejects_enable="NO"
daily_status_include_submit_mailq="NO"
daily_submit_queuerun="NO"
</pre>
 
Отключите sendmail и запустите postfix
 
<pre>
service sendmail stop
postfix start
</pre>
 
== Конфигурация Postfix ==
 
Измените mail.domain.tld, domain.tld, yourotherdomain.tld
 
<pre>
postconf -e 'myhostname  = mail.domain.tld'
postconf -e 'mydomain    = domain.tld'
postconf -e 'myorigin    = $mydomain'
postconf -e 'inet_interfaces = all'
postconf -e 'mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.0.0/24'
postconf -e 'alias_database = hash:/etc/aliases'
postconf -e 'alias_maps = hash:/etc/aliases'
postconf -e 'mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, yourotherdomain.tld'
postconf -e 'smtputf8_enable = yes'
postfix reload
</pre>
 
@TODO
 
<pre>
Enable Postfix as service and run at startup
</pre>
 
Попробуйте отправить письмо с помощью Telnet и отправьте письмо на внешний сервер (например, Gmail)
 
== Проверка, что SMTPUTF8 активирован ==
 
Введите команду для подключения к SMTP
 
<pre>
telnet localhost 25
</pre>
 
Результат должен быть следующий:
 
<pre>
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 YourHostName ESMTP Postfix
</pre>
 
Введите следующий текст и нажмите Enter
 
<pre>
EHLO localhost
</pre>
 
Если в ответе вы видите '''250 SMTPUTF8''', то ваш сервер может отправлять и получать почту с интернационализированных адресов
 
<pre>
250-YourHostName
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250 SMTPUTF8
</pre>
 
Если вы не видите 250 SMTPUTF8, попробуйте удалить Postfix и повторите описанную процедуру установки. Возможно, вы установили компонент, который установил старую версию Postfix.
 
== Включение SMTP Auth ==
 
Установите saslauthd с настройками по умолчанию
 
<pre>
cd /usr/ports/security/cyrus-sasl2-saslauthd
make && make install
</pre>
 
Отредактируйте /etc/rc.conf
 
<pre>
saslauthd_enable="YES"
</pre>
 
Создайте или отредактируйте /usr/local/lib/sasl2/smtpd.conf . Используете только механизм PLAIN.
 
<pre>
pwcheck_method: saslauthd
mech_list: PLAIN LOGIN
</pre>
 
Обновите конфигурацию Postfix
sudo postconf -e 'smtpd_sasl_path = smtpd'
sudo postconf -e 'smtpd_sasl_auth_enable = yes'
service saslauthd start
sudo postfix reload
<pre>
 
Создайте пользователя для проверки аутентификации, замените AnyUserName на свое имя.
 
<pre>
sudo useradd -m AnyUserName  -s /usr/sbin/nologin
sudo passwd AnyUserName
</pre>
 
Сгенерируйте ключ аутентификации, замените username на свое имя, а yourpassword на свой пароль.
 
<pre>
perl -MMIME::Base64 -e 'print encode_base64("\000username\000yourpassword")'
</pre>
 
Замените dGVzdAB0ZXN0AHRlc3Q= на сгенерированный
 
<pre>
telnet localhost 25
EHLO localhost
AUTH PLAIN dGVzdAB0ZXN0AHRlc3Q=
</pre>
 
Должно появиться сообщение Authentication successful.
 
Возможная ошибка: если в сгенерированном base64 есть два символа == в конце строки, терминал может его не принять. Тогда используйте пароль, который не дает в результате два символа == в конце строки.
 
Завершите конфигурацию Postfix, чтобы только прошедшие аутентификацию пользователи могли отправлять почту через SMTP
 
<pre>
postconf -e 'broken_sasl_auth_clients = yes'
postconf -e 'smtpd_sasl_security_options = noanonymous'
postconf -e 'smtpd_sasl_local_domain = $mydomain'
postconf -e 'smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination'
postconf -e 'smtpd_relay_restrictions =  permit_mynetworks permit_sasl_authenticated reject_unauth_destination reject_sender_login_mismatch '
postfix reload
</pre>
 
== Включение TLS ==
 
Создайте сертификаты
 
<pre>
cd /etc/postfix
 
openssl req -new -outform PEM -out smtpd.cert \
  -newkey rsa:2048 -nodes -keyout smtpd.key -keyform PEM \
  -days 365 -x509
</pre>
 
Ответьте на появившиеся вопросы
 
Обновите конфигурацию Postfix
 
<pre>
postconf -e 'smtpd_enforce_tls = no'
postconf -e 'smtpd_tls_security_level = may'
postconf -e 'smtpd_tls_loglevel = 1'
postconf -e 'smtpd_use_tls = yes'
postconf -e 'smtpd_tls_key_file  = /etc/postfix/smtpd.key'
postconf -e 'smtpd_tls_cert_file  = /etc/postfix/smtpd.cert'
postfix reload
</pre>
 
Вы можете проверить с помощью telnet доступность порта 25 и выполнение EHLO. Должна появиться строка «STARTTLS»
 
<pre>
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250 SMTPUTF8
</pre>
 
Введите команду
 
<pre>
STARTTLS
</pre>
 
Результат должен быть
 
<pre>
220 2.0.0 Ready to start TLS
</pre>
 
== Отправка и получение почты через интернет ==
 
Отправка почты с помощью telnet
 
<pre>
telnet localhost 25
EHLO localhost
 
MAIL FROM: <youruser@domain.tld> SMTPUTF8
RCPT FROM: <EAI@IDN.idn>
data
Subject: A Test
 
This is the body
 
.
</pre>
 
Обратите внимание на точку в конце. Она необходима для завершения и отправки сообщения.
 
На данном этапе убедитесь, что можете отправлять и посылать почту.
 
Теперь вы можете отправлять почту с помощью интернационализированного адреса, проверьте /var/mail/mail.log, в логе под test@domain.tld находится локальный получатель
 
<pre>
Aug  3 02:48:49 ip-172-31-21-209 postfix/local[21614]: 7EAD343550: to=<test@domain.tld>, relay=local, delay=0.62, delays=0.62/0/0/0, dsn=2.0.0, status=sent (delivered to mailbox)
Aug  3 02:48:49 ip-172-31-21-209 postfix/qmgr[21586]: 7EAD343550: removed
</pre>
 
Почта хранится в /var/mail/ Если вы не получаете почту, используйте онлайн-инструмент, например, mxtoolbox.com, для диагностики проблемы.
 
== Конфигурация Courier authlib, Courier imap ==
 
Данные команды запускают imap и pop3
 
<pre>
cd /usr/ports/security/courier-authlib
make && make install
 
cd  /usr/ports/mail/courier-imap
make && make install
</pre>
 
Отредактируйте /usr/local/etc/authlib/authdaemonrc и измените метод аутентификации
 
<pre>
authmodulelist="authpam"
</pre>
 
Добавьте /etc/rc.conf
 
<pre>
courier_authdaemond_enable="YES"
courier_imap_imapd_enable="YES"
courier_imap_imapd_ssl_enable="YES"
courier_imap_pop3d_enable="YES"
courier_imap_pop3d_ssl_enable="YES"
</pre>
 
Задайте конфигурацию Postfix для использования Maildir в качестве почтового хранилища
 
<pre>
postconf -e 'home_mailbox = Maildir/'
service courier-authdaemond start
service courier-imap-imapd
service courier-imap-imapd-ssl
service courier-imap-pop3d
service courier-imap-pop3d-ssl
 
service courier-imap-imapd start
service courier-imap-imapd-ssl start
service courier-imap-pop3d start
service courier-imap-pop3d-ssl start
postfix reload
</pre>
 
Обновите Skeleton и создайте папку для пользователя, созданного ранее. В данном примере мы использовали пользователя test
 
<pre>
mkdir -p /usr/share/skel/Maildir/{cur,new,tmp}
 
mkdir -p /home/test/Maildir/{cur,new,tmp}
chown test:test /home/test/Maildir/{,cur,new,tmp}
chmod 0700 /home/test/Maildir/{,cur,new,tmp}
</pre>
 
== Протестируйте imap, pop3 ==
 
<pre>
telnet localhost imap
ok login username password
</pre>
 
<pre>
telnet localhost pop3
User username
Pass password
</pre>
 
== Установите Squirrel-mail ==
 
Установите модифицированный Squirrel mail
 
<pre>
cd to-your-public-html-filder
wget http://interlab.ait.ac.th/eai-wiki/files/squirrelmail.zip
unzip squirrelmail.zip
</pre>
 
Отредактируйте файл конфигурации и измените '''attachchment_dir''' и '''data_dir'''. Не забудьте создать папки.
Измените права пользования на вашего '''пользователя apache''', затем разрешите ему доступ для редактирования.
 
<pre>
vi squirrelmail/config/config.php
</pre>
 
Зайдите в squirrelmail
 
<pre>
http://your-domain/squirrelmail/
</pre>

Текущая версия от 14:31, 24 июня 2022

Установка Postfix с расширением SMTPUTF8, Cyrus SASL и OpenSSL

Почтовый сервер: общая информация

С помощью данной инструкции вы сможете установить почтовый сервер, который сможет получать почту с интернационализированных почтовых адресов за счет поддержки расширения SMTPUTF8.

Система поддерживает протоколы IMAP и POP3 при помощи почтового сервера Courier. Пользователи добавляются как локальные, с логином SSH, так и без него. Их почта хранится в папке /home/user.

Используется ОС Freebsd 10.2

Уведомление, требования и первичная установка

  • Убедитесь, что у вас установлена версия Postfix не ниже 3.0
  • Если вы устанавливаете какие-либо компоненты почты после установки сервера, обязательно протестируйте сервер на предмет возврата почты SMTPUTF8.
  • Предварительно необходимо настроить ресурсные записи DNS, имя хоста – это имя вашего домена (например, domain.com )
  • mail.hostname – это имя вашего почтового сервера (например, mail.domain.com)

Необходим рабочий сервер FreeBSD с аккаунтом root (привилегии sudo)

  • Установка функционирует как root, если не указано иное
Update your hostname 

Если вы используете интернационализированный домен, используйте эквивалент в кодировке punycode. Например, mail.ёпочта.рф в кодировке punycode выглядит как mail.xn--80a1acny1d.xn--p1ai

vi /etc/hostname

ОБНОВИТЕ имя хоста для почтового сервера на ВАШЕ

mail.domain.com

Перезагрузите сервер для обновления имени хоста.

После перезагрузки команда ниже покажет ваше имя хоста mail.domain.com

hostname

Установите Postfix из репозитария и необходимые библиотеки (Cyrus SASL, OPENSSL)

Найдите версию Postfix 3.0.1 или выше чтобы можно было активировать расширение SMTPUTF8. Ссылка для скачивания: http://www.postfix.org/download.html. В примере ниже мы работаем с postfix-3.0.1.tar.gz, ваша версия может отличаться. Установив Postfix с помощью apt-get, вы получите более раннюю версию, которая еще не поддерживает SMTPUTF8. В будущем это может измениться.

Установите необходимые библиотеки с помощью портов с опциями по умолчанию

cd /usr/ports/security/openssl 
make && make install

cd /usr/ports/security/cyrus-sasl2
make && make install

cd /usr/ports/devel/icu
make && make install
Refresh your environment

Создайте необходимых пользователей и права на использование каталога

pw groupadd postfix -g 32 
pw groupmod mail -m postfix
pw groupadd postdrop 
pw useradd postfix -c "Postfix Daemon User" -d /var/spool/postfix -g postfix  -s /bin/false -u 32  
chown -v postfix:postfix /var/mail

Скачайте Postfix 3.x.x или более позднюю версию и скомпилируйте с openssl и sasl auth

tar -xzvf postfix-3.0.1.tar.gz
cd postfix-3.0.1
make CCARGS="-DUSE_TLS -I/usr/include/openssl/   -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/include/sasl" AUXLIBS="-lssl -lcrypto -lsasl2" makefiles 
make

Установите Postfix

sh postfix-install -non-interactive   daemon_directory=/usr/lib/postfix  \
                    manpage_directory=/usr/share/man  \
                    html_directory=/usr/share/doc/postfix-3.0.1/html  \
                    readme_directory=/usr/share/doc/postfix-3.0.1/readme

Отредактируйте или обновите /etc/rc.conf как указано ниже

postfix_enable="YES"
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"

Отредактируйте, создайте или обновите /etc/periodic.conf

daily_clean_hoststat_enable="NO"
daily_status_mail_rejects_enable="NO"
daily_status_include_submit_mailq="NO"
daily_submit_queuerun="NO"

Отключите sendmail и запустите postfix

service sendmail stop
postfix start

Конфигурация Postfix

Измените mail.domain.tld, domain.tld, yourotherdomain.tld

postconf -e 'myhostname  = mail.domain.tld'
postconf -e 'mydomain    = domain.tld'
postconf -e 'myorigin    = $mydomain'
postconf -e 'inet_interfaces = all'
postconf -e 'mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.0.0/24'
postconf -e 'alias_database = hash:/etc/aliases'
postconf -e 'alias_maps = hash:/etc/aliases'
postconf -e 'mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, yourotherdomain.tld'
postconf -e 'smtputf8_enable = yes'
postfix reload

@TODO

Enable Postfix as service and run at startup

Попробуйте отправить письмо с помощью Telnet и отправьте письмо на внешний сервер (например, Gmail)

Проверка, что SMTPUTF8 активирован

Введите команду для подключения к SMTP

telnet localhost 25

Результат должен быть следующий:

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 YourHostName ESMTP Postfix

Введите следующий текст и нажмите Enter

EHLO localhost

Если в ответе вы видите 250 SMTPUTF8, то ваш сервер может отправлять и получать почту с интернационализированных адресов

250-YourHostName
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250 SMTPUTF8

Если вы не видите 250 SMTPUTF8, попробуйте удалить Postfix и повторите описанную процедуру установки. Возможно, вы установили компонент, который установил старую версию Postfix.

Включение SMTP Auth

Установите saslauthd с настройками по умолчанию

cd /usr/ports/security/cyrus-sasl2-saslauthd
make && make install

Отредактируйте /etc/rc.conf

saslauthd_enable="YES"

Создайте или отредактируйте /usr/local/lib/sasl2/smtpd.conf . Используете только механизм PLAIN.

pwcheck_method: saslauthd
mech_list: PLAIN LOGIN

Обновите конфигурацию Postfix sudo postconf -e 'smtpd_sasl_path = smtpd' sudo postconf -e 'smtpd_sasl_auth_enable = yes' service saslauthd start sudo postfix reload


Создайте пользователя для проверки аутентификации, замените AnyUserName на свое имя.

<pre>
sudo useradd -m AnyUserName  -s /usr/sbin/nologin
sudo passwd AnyUserName

Сгенерируйте ключ аутентификации, замените username на свое имя, а yourpassword на свой пароль.

perl -MMIME::Base64 -e 'print encode_base64("\000username\000yourpassword")'

Замените dGVzdAB0ZXN0AHRlc3Q= на сгенерированный

telnet 	localhost 25
EHLO localhost
AUTH PLAIN dGVzdAB0ZXN0AHRlc3Q=

Должно появиться сообщение Authentication successful.

Возможная ошибка: если в сгенерированном base64 есть два символа == в конце строки, терминал может его не принять. Тогда используйте пароль, который не дает в результате два символа == в конце строки.

Завершите конфигурацию Postfix, чтобы только прошедшие аутентификацию пользователи могли отправлять почту через SMTP

postconf -e 'broken_sasl_auth_clients = yes'
postconf -e 'smtpd_sasl_security_options = noanonymous'
postconf -e 'smtpd_sasl_local_domain = $mydomain'
postconf -e 'smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination'
postconf -e 'smtpd_relay_restrictions =  permit_mynetworks permit_sasl_authenticated reject_unauth_destination reject_sender_login_mismatch '
postfix reload

Включение TLS

Создайте сертификаты

cd /etc/postfix

openssl req -new -outform PEM -out smtpd.cert \
   -newkey rsa:2048 -nodes -keyout smtpd.key -keyform PEM \
   -days 365 -x509

Ответьте на появившиеся вопросы

Обновите конфигурацию Postfix

postconf -e 'smtpd_enforce_tls = no'
postconf -e 'smtpd_tls_security_level = may'
postconf -e 'smtpd_tls_loglevel = 1'
postconf -e 'smtpd_use_tls = yes'
postconf -e 'smtpd_tls_key_file  = /etc/postfix/smtpd.key'
postconf -e 'smtpd_tls_cert_file  = /etc/postfix/smtpd.cert'
postfix reload

Вы можете проверить с помощью telnet доступность порта 25 и выполнение EHLO. Должна появиться строка «STARTTLS»

250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250 SMTPUTF8

Введите команду

STARTTLS

Результат должен быть

220 2.0.0 Ready to start TLS

Отправка и получение почты через интернет

Отправка почты с помощью telnet

telnet localhost 25
EHLO localhost

MAIL FROM: <youruser@domain.tld> SMTPUTF8
RCPT FROM: <EAI@IDN.idn>
data
Subject: A Test

This is the body

.

Обратите внимание на точку в конце. Она необходима для завершения и отправки сообщения.

На данном этапе убедитесь, что можете отправлять и посылать почту.

Теперь вы можете отправлять почту с помощью интернационализированного адреса, проверьте /var/mail/mail.log, в логе под test@domain.tld находится локальный получатель

Aug  3 02:48:49 ip-172-31-21-209 postfix/local[21614]: 7EAD343550: to=<test@domain.tld>, relay=local, delay=0.62, delays=0.62/0/0/0, dsn=2.0.0, status=sent (delivered to mailbox)
Aug  3 02:48:49 ip-172-31-21-209 postfix/qmgr[21586]: 7EAD343550: removed

Почта хранится в /var/mail/ Если вы не получаете почту, используйте онлайн-инструмент, например, mxtoolbox.com, для диагностики проблемы.

Конфигурация Courier authlib, Courier imap

Данные команды запускают imap и pop3

cd /usr/ports/security/courier-authlib
make && make install

cd  /usr/ports/mail/courier-imap
make && make install

Отредактируйте /usr/local/etc/authlib/authdaemonrc и измените метод аутентификации

authmodulelist="authpam"

Добавьте /etc/rc.conf

courier_authdaemond_enable="YES"
courier_imap_imapd_enable="YES"
courier_imap_imapd_ssl_enable="YES"
courier_imap_pop3d_enable="YES"
courier_imap_pop3d_ssl_enable="YES"

Задайте конфигурацию Postfix для использования Maildir в качестве почтового хранилища

postconf -e 'home_mailbox = Maildir/'
service courier-authdaemond start
service courier-imap-imapd
service courier-imap-imapd-ssl
service courier-imap-pop3d
service courier-imap-pop3d-ssl

service courier-imap-imapd start
service courier-imap-imapd-ssl start
service courier-imap-pop3d start
service courier-imap-pop3d-ssl start
postfix reload

Обновите Skeleton и создайте папку для пользователя, созданного ранее. В данном примере мы использовали пользователя test

mkdir -p /usr/share/skel/Maildir/{cur,new,tmp}

mkdir -p /home/test/Maildir/{cur,new,tmp}
chown test:test /home/test/Maildir/{,cur,new,tmp}
chmod 0700 /home/test/Maildir/{,cur,new,tmp}

Протестируйте imap, pop3

telnet localhost imap
ok login username password
telnet localhost pop3
User username
Pass password

Установите Squirrel-mail

Установите модифицированный Squirrel mail

cd to-your-public-html-filder
wget http://interlab.ait.ac.th/eai-wiki/files/squirrelmail.zip
unzip squirrelmail.zip

Отредактируйте файл конфигурации и измените attachchment_dir и data_dir. Не забудьте создать папки. Измените права пользования на вашего пользователя apache, затем разрешите ему доступ для редактирования.

vi squirrelmail/config/config.php

Зайдите в squirrelmail

http://your-domain/squirrelmail/