Поддержка Консалтинг Обучение Jamf Pro Блог

Гуманистический почтовый интерфейс

Кирилл Воронин 19.10.2010


Беспокоит меня админская однобокость заметок на нашем сайте, тем не менее, продолжим почтовую тему и установим и настроим RoundCube. Сделаем приятное пользователю, “…ему будет приятно. Когда ему будет приятно, я буду чувствовать, что мне тоже приятно” (классика советского кинематографа и этика сисадмина).

Все, кто используют webmail в составе Mac OS X Server примерно через пять минут задумываются:
– Так-с, а как тут поменять интерфейс, чай на дворе не 1999 год.
Думаю, что Apple могла бы снабдить SquirrelMail (или белочку, как называют ее пользователи) темой, соответствующей MobileMe. Это здорово повысило бы привлекательность (во всех смыслах) почтовой системы. “Встречают по одежке”, – в компьютерном мире это еще более верно, чем в мире реальном. К тому же и в самой Apple кое-где используют Squirrelmail. А может, у Apple и нет такой задачи повышать привлекательность почтовой системы, может быть там думают – для малого бизнеса – MobileMe, для большого – все равно поставят Exchange (а может и ничего не думают на этот счет).

Итак, SquirrelMail – надежное, проверенное, с большим количеством плагинов, хорошо описанное решение, которое работает даже в lynx. Мы даже можем купить очень пристойные темы для SquirrelMail.
Но, сейчас мы отставим это решение и вместо него воспользуемся клиентом из 2000-ых, а не 90-х.

RoundCube тоже написан на PHP, но использует Ajax, что здорово ускоряет реакцию интерфейса. Да и сам интерфейс нарисован с прилежанием. Установить RoundCube можно на любой хост, где есть веб-сервер, правда, в отличие от Squirrelmail, понадобится какая-нибудь база.

Скачаем исходники с сайта производителя. Думаю, в названии сайта “WebMail for Masses” есть какой-то ответ сайту Squirrelmail – “WebMail for Nuts” (тоже игра слов).

Распакуем исходники в папку доступную веб-серверу, например в /Library/WebServer/Documents/rc.

Вдумчиво почитаем файл INSTALL. Так-с, apache, базы данных, непонятные модули PHP (ладно, наверное, увидим при конфигурации, хватает ли у нас этих модулей), IMAP сервер, SMTP сервер. Кажется, все необходимое есть.
Сделаем доступными пользователю www папки logs и temp.

Разберемся с базой данных. RoundCube может использовать MySQL, SQLite и PostgreSQL. MySQL уже есть на любом Mac OS X Сервере (SQLite тоже есть на любом Маке, но RoundCube пока не работает с версией 3).
В Server Admin запустим MySQL и зададим пароль:

Запустив команду mysql и аутентифицировавшись выполним команды по настройке базы

bash-3.2# mysql -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.88-log Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> CREATE DATABASE roundcubemail;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'gimmieMYm4!l';
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye

Теперь создадим нужную структуру базы.
bash-3.2# mysql roundcubemail < SQL/mysql.initial.sql -p

Сконфигурируем веб-службу (если мы еще не используем ее на этом сервере):

Мы будем использовать https, корнем сайта сразу будут почта.

Включим поддержку PHP (это делается для всей веб-службы, а не отдельного сайта):

Воспользуемся браузером Safari для дальнейшей настройки RoundCube.
Еще раз убедимся, какие нам модули нужны:

Узнаем, что они у нас есть (или мы можем без них перебиться):

Решим, нужно ли кэшировать сообщения, зададим имя нашему сервису, узнаем, что в RoundCube есть встроенный спеллчекер и из админского интереса посетим сайт его создателей. Что гораздо важнее, введем настройки доступа к нашему IMAP серверу (строго используя SSL), логин и пароль для доступа к базе MySQL, адрес SMTP сервера:

Установщик создаст пару конфигурационных файлов (main.inc.php и db.inc.php), которые мы скачаем и разместим в папке config:

А теперь убедимся, что все получилось и протестируем нашу конфигурацию, отправив тестовое письмо по SMTP и проверив логин IMAP:

Удалим папку /Library/WebServers/Documents/rc/installer и начнем пользоваться нашей почтой: