Софт-Портал

Roundcube Skins

Рейтинг: 4.3/5.0 (954 проголосовавших)

Категория: Linux

Описание

Настройка почтового веб-интерфейса RoundCube

Настройка почтового веб-интерфейса RoundCube

В новогодние праздники настраивал очередной сервер на FreeBSD. В этот раз уже на 8-ой стабильной ветке этой системы. как же быстро бежит время. Но речь не об этом. Т.к. времени было достаточно, решил в качестве бонуса заказчику установить web-интерфейс для работы с почтовым сервером внутри предприятия.

Ещё пару-тройку лет назад качество web-интерфейсов (freeware) оставляло желать лучшего. Сейчас ситуация изменилась, пример тому - RoundCube Webmail. Если совсем кратко, RoundCube Webmail написан на PHP с использованием CSS, XHTML и AJAX. Из основных возможностей для себя выделил следующее:

  • Поддержка мультиязычности
  • Возможность лёгкого развертывания системы
  • Поддержка IMAP
  • Простая адресная книга
  • Поддержка внешнего SMTP сервера
  • Расширенный пользовательский интерфейс
  • Неограниченное количество пользователей и сообщений
  • Полное изменение внешнего вида с помощью скинов

Итак, устанавливать будем из портов (если дерево портов у вас не обновлено, советую предварительно это сделать).

cd /usr/ports/mail/roundcube/
make install

Т.к. планировалось использовать исключительно MySQL, именно её и оставляем в опциях. Собственно MySQL там по умолчанию и опции получается не трогаем.

Теперь необходимо создать новую базу данных и пользователя.

# mysql -u root -p
mysql> create database roundcube;
mysql> grant all on roundcube.* to 'roundcube'@'localhost' identified by 'rouncube_password';
mysql> flush privileges;

Создать таблицы базы данных, используя запросы, которые находятся в 'SQL/*.initial.sql'.

Поскольку ранее мы определили БД MySQL, то воспользуемся файлом mysql.initial.sql:

# mysql -u roundcube -p roundcube

В конфигурационный файл Apache (httpd.conf) добавим следующие настройки:

alias /mail/ "/usr/local/www/roundcube/"
<Directory "/usr/local/www/roundcube/">
Options none
DirectoryIndex index.php
AllowOverride Limit
Order Deny,Allow
Allow from all
<Directory>

Собственно первая часть настройки закончена и можно переходить к следующему этапу. Зайдем web-броузером на сервер с RoundCube:

Тут всё понятно - жмём "START INSTALLATION"

Обращаем внимание чего не хватает системе для правильной установки (выделено оранжевым). Сообщения о неостающих БД, отличных от MySQL, игнорируем. Спускаемся вниз страницы и жмём "Next", где нам предложат ввести некоторые параметры:

Раздел General configuration
  • product_name - My_test_Webmail - название вашего сервиса. Будет высвечиваться в заголовке станичек
  • temp_dir - /var/www/mail/temp/ - оставляем как есть, это папка для темпов
  • ip_check - проверка клиента по IP во время авторизации сессии. Добавляет секьюрности, но если кто-то будет ходить на мыло через проксю, клиенты с одинаковыми IP будут отваливаться.
  • des_key - ключик для шифрования пользовательских IMAP паролей
  • enable_caching - кеширование сообщений в локальной базе
  • enable_spellcheck - проверка орфографии. Чуть ниже выбирается движок для проверки
  • identities_level - Определяет, что пользователи могут сделать со своими идентификаторами
Раздел Logging & Debugging
  • debug_level - уровень детализации логов
  • log_driver - механизм логирования. В файл или через syslog
  • log_dir - /var/www/mail/logs/ - каталог для логов
  • syslog_id - используемая строка идентификации, если задействован драйвер ошибок 'syslog'
  • syslog_facility - какие средства (facility) используются, если задействован драйвер ошибок 'syslog'. Для ознакомления с возможными значениями смотрите инсталятор.
Раздел Database setup

В данном разделе указываете параметры подключения к базе данных. Те, что указывали при создании roundcubemail

  • Database type - MySQL
  • Database server - localhost
  • Database name - roundcube
  • Database user name - roundcube
  • Database password - пароль
Раздел IMAP Settings

В данном разделе указываются настройки подключения IMAP сервера

  • default_host - 127.0.0.1 - имя хоста IMAP сервера. Т.к. мыло крутится локально, указываем IP локалхоста
  • default_port - 143 - порт IMAP по умолчанию
  • username_domain - myorg.net - имя домена. Будет автоматически дописываться к логину пользователя
  • auto_create_user - автоматическое создание пользователей roundcube, когда они в первый раз залогинятся.
  • sent_mbox - каталог, куда будет складываться отправленная почта
  • trash_mbox - корзина для удалённых писем
  • drafts_mbox - каталог для черновиков
  • junk_mbox - каталог для спама
Раздел SMTP Settings

В данном разделе указываются настройки SMTP

  • smtp_server - 127.0.0.1 - имя хоста SMTP сервака. Т.к. мыло крутится локально, указываем IP локалхоста
  • smtp_port - 25 - порт SMTP по умолчанию.
  • smtp_user/smtp_pass - имя и пароль SMTP пользователей, если требуется для SMTP сервака. Чуть ниже галочка Use the current IMAP username and password for SMTP authentication (использовать настройки имени и пароля из IMAP)
  • smtp_log - логировать ли отправку сообщений
Раздел Display settings & user prefs

Настройки отображения и пользовательские

  • language - ru_RU - Язык
  • skin - default - шкурка. Список шкурок можно глянуть в /var/www/mail/skins
  • pagesize - 40 - количество сообщений в списке
  • prefer_html - предпочитать отображение сообщений в HTML
  • preview_pane -
  • htmleditor - создавать сообщения в формате HTML
  • draft_autosave - автосохранение в черновики каждые N минут.
  • mdn_requests - Если пришло письмо с подтверждением о доставке то: Спросить пользователя / отправить отчёт автоматически / забить
  • mime_param_folding - как упаовывать длинные или не ASCII имена файлов аттачей

На этом настройку roundcube можно считать завершенной. Кнопкой "Create config" открываем страничку с созданными конфиг-файлами. Её содержимое необходимо поместить в соответствующие файлы main.inc.php и db.inc.php в каталоге /var/www/mail/config. Не забудьте проставить <?php?> в начале и конце файлов.

Кроме того здесь же можно проверить работу roundcube + SMTP + IMAP сервера. После установки ОБЯЗАТЕЛЬНО удалите инсталляционный каталог.

# rm -rf /var/www/mail/installer/

Если всё сделано правильно, то вы получите работающий webmail.

Если вы считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

Последние комментарии Пропала камера на iPhone. Что делать?
  • Настасья » Огромное спасибо)Выручили. Д умала,всё.
Установка Windows на данный диск невозможна.
  • Sergey » Танцы с бубнами, через F12 помогло, загрузившись с диска напрямую
  • Аноним » Спасибо чувак огромное,всё работает )))))))
Забыли пароль на iPhone? Не все потеряно.
  • Петр » Что было: "вражеские" дети взяли в руки IPhone 6 и начали играть. Что имеем: активирован режим "в самолете", на экране "IPhone отключен, подключитесь к ITunes". Телефон кумы. Он никогда не подключался.
  • Анастасия » Как войти в режим Recovery mode, если у меня не работает кнопка "Home"?
Обновленный Hyundai Tucson уже в России. Первый взгляд.
  • Михаил » Спасибо за информацию по клиренсу. Только у вас нашел наглядное сравнение туссана с предыдущим ix35
Активация терминального сервера Windows Server 2003/2008/2008 R2
  • paf » 29/07/16 2012r2 - все гуд
  • Mike » На момент 9 августа 2016г, сервер 2012 данный метод все еще работает! Спасибо тебе, автор!
Красный экран на iPad. Не спешите нести в сервис
  • Аноним » Спасибо автору, реально помогло
Простой и красивый спойлер на jQuery
  • Гиви » Как на счёт индексации текста спрятанного в этот спойлер. Поисковики индексируют спрятаный текст в спойлере.
Контроль переписки в Postfix («большой брат» следит за тобой)
  • rusik » Всем привет. Скажите есть ли возможность и как это реализовать. Допустим чтоб если письмо от pupkin@mail.ru пришло на andrey@mydomen.ru, то только тогда копия письма приходит большому брату.
  • dre@mer » Я так понял что вы хотите сделать копирование писем определенного отправителя на ящик одного из ваших пользователей. Можно конечно попробовать добавить этого отправителя в sender_bcc: pupkin@mail.ru backup@mydomain.ru Н е знаю правда будет.
Установка SSD диска в Acer Aspire One 533
  • Василий » А сколько он максимум памятти потянет (4 гб)? И какая нужна по частоте (1333Mhgz)?
  • dre@mer » Данная информация есть на сайте производителя, у меня было установлено 4GB. Но тут еще и от операционной системы зависит 32 или 64 бит, сколько памяти она может использовать. По частоте.
Как снять пароль с BIOS и HDD на ноутбуке.
  • Валерий » Доброго времени суток! хард Seagate, запоролен. После 3х неудачных попыток скопировал ключ на bios-pw.org и получил код разблокировки. После перезагрузки снова требует пароль
Самое читаемое Рубрики О сайте

© Админ в маленьком городе, 2016
Работает на MaxSite CMS | Время: 0.0630 | SQL: 15 | Память: 2.61MB

Roundcube skins:

  • скачать
  • скачать
  • Другие статьи, обзоры программ, новости

    Roundcube skins mvision2 - Printable Version

    +- ispCP - Board - Support (http://www.isp-control.net/forum )
    +-- Forum: ispCP Omega International Area (/forum-22.html )
    +--- Forum: Russian Corner (/forum-53.html )
    +--- Thread: Roundcube skins +mvision2 (/thread-12247.html )

    На днях захотелось мне поменять стандартный скин круглокубика на что то более оригинальное. Из существующих понравилась mvision2. Скачал отсюда. залил - в експлорере до 8 версии норм (в 8 небольшое искажение), в опере и мозиле не оч, хотя по описанию тема должна работать со всеми существующими браузерами. Также нашол инструкцию по установке этой темы но это не сильно изменило ситуацию (инструкцию можно посмотреть здесь )
    Может есть на форуме гуру, готовые помогать новичкам вроде меня, или может кто то уже давно довёл его до ума и поделится наработками. Также если у вас есть хороший скин под круглокубик и вы не против им поделиться с форумчанами, то тоже можете выложить в этой теме.

    ставил, кривая ппц

    (11-26-2010 04:52 AM) server801 Wrote: ставил, кривая ппц
    да но по дизайну норм, по большому счёту можна выкинуть оттуда никому ненужние фичи типа смена расположения панели, а через правку css я думаю можно добиться нормального поведения. Или посоветуйте другой не менее красивый скин.

    перебрал несколько скринов. в итоге остался на стандартном. хз почему так. народ как то ставит.

    какой народ? не знаю таких.

    те что покупают новую версию, те ставят, а те кто ищет бесплатно даже если и ставит то сталкивается с боками. связано это с тем что производитель специально ограничивает универсальность работы шаблона. Дабы при выходе новой версии какого либо популярного браузера выпустить новую версию скина и заставить его купить/обновить ибо старые его не будут поддерживать. Если не верите посмотрите код скина, там полно условий типа If IE 6, IF IE 7, If IE 8 и так для каждого поддерживаемого браузера. Т.э политика создания скина заранее исключает универсальность, и когда выйдет IE 9 он тоже не будет поддерживаться, пока не выпустят новую версию. Но ведь можно на базе существующего дизайна универсализировать шаблон, достаточно лишь хорошо разбираться в css и js. Я не большой профи в этом вот и обратился сюда дабы сделать это общими усилиями. Как говорится с мира по нитке))

    ыыы. улыбнуло.
    1. трудно добавить поддержку IE10, пока он не вышел.
    2. добавляют спец стили только для IE в виду его специфичности (дебильности), иначе на нем будет работать криво. к мозилле и опере это не относится.

    Уважаемый, а вы перед тем как ухмыляться ознакомились со скином?
    1. Никто не спорит, но одно дело когда не учли особенностей новой версии браузера, а другое дело когда изначально не хотят что б он хотя бы теоретически работал на новых версиях (искусственно ограничивают совместимость).
    2. В том то и дело что в IE до 8 версии работает, а в опере и фф оч криво отображаются
    3. Прочтите ещё раз 1 пост, просилось ведь помочь с правкой css, а не для юмора. А если вы такой знаток в этой сфере, то лучше помогите с совместимостью.

    Плагины Roundcube

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

    В моем текущем почтовом оффлайн клиенте (Thunderbird) я всегда настраивал множество фильтров: пометить сообщения с минфина зеленым, от поселений синим, перенести сообщения от почтового сервера в папку root и т.д. А еще мега полезная вещь “метки”, которые можно изменять. Например: делаем метку 6 – к исполнению красный цвет, метку 5 – исполнено зеленый, а потом приходит письмо из МФ с обновлениями жмем “6” и они сразу становятся красными. Так очень удобно визуально отслеживать что необходимо сделать. Установил обновления с этого письма, или отправил ответ на запрос – жмем “5” и сообщение становиться зеленым. Мега полезная вещь.

    Полез искать как расширить стандартную функциональность куба – нашел кучу статеек про плагины. Много чего перепробовал, вот список что осталось, на сегодняшний день:

    Пару слов об установке. Часть плагинов уже идет в установке, какие-то надо скачивать самостоятельно. Установка элементарна – скаченный архив с плагином надо распаковать в папку plugins например так:

    Появится папка thunderbird_labels, на этом установка закончена. Далее в конфиге куба активируем плагин, добавляем в параметр $rcmail_config[‘plugins’] и если надо настраиваем плагин.

    Важно помнить: чем больше плагинов – тем медленнее будет работать куб. Теперь немного по каждому, с простых:

    additional_message_headers

    Этот плагин позволяет добавлять в отправляемые сообщения дополнительные хэдеры вроде X-RoundCube-Server или X-Sender, они не на что не влияют, но добавят информации админам которым придется разбираться с этим письмом. Переименовываем config.inc.php.dist в config.inc.php и правим:

    Теперь ясно откуда отправлено письмо и с какого сервера.

    dragndrop_attachments

    Этот плагин позволяет добавлять вложения в письмо в помощью Drag&Drop. Оставил только для пользователей, у меня браузер всегда открыт “на распашку” так что тягать особо не откуда.

    login_info

    Добавляет текст на странице авторизации. В конфиге указывается собственно что добавить:

    Слизал со статьи про плагины и немного подправил под себя.

    markasjunk2

    Добавляет кнопку “Спам”. Обращаю внимание что плагин именно 2, т.к. он добавляет и кнопку “Не спам”.В конфиге можно настроить помечать не помечать как прочитано/не прочитано, в какую папку переносить спам, а куда восстанавливать не спам. Но самое вкусное он может обучать spamassasin:

    В первой строке указываем "драйвер", cmd_learn — использовать команду. Есть еще несколько других вариантов отправлять на определенные e-mail или складывать в определенные папки. Надо сказать что cmd_learn самый долгий по времени вариант, но и самый простой в настройке, а т.к. у нас пользователей не так много оставил его.

    В последней строке указывается путь к другому плагину spamassisn user prefs он позволяет делать свои настройки каждому пользователю spamassisn-а.

    thunderbird_labels

    Это наши мега метки. Правда есть пару минусов — нет настройки. Ни цвета, ни текст меток нельзя настроить, и мне не нравиться кнопка на панели.

    Но кто ищет тот всегда найдет.

    • исправить текст меток можно в файле локализаций: thunderbird_labels/localization/ru_RU.inc.php, я сделал так:
    • цвет меток можно исправить в css файле текущий темы, например: thunderbird_labels/skins/larry/tb_label.css. Но я не стал, там надо много править: для заголовка в просмотре, для выделенного сообщения в списке, для не выделенного и т.д. мне жалко было времени, да и цвета собственно устраивали.
    managesieve

    Этот плагин добавляет фильтры для сообщений. Но есть одно “но” и очень большое. Так как это веб клиент и у него нет своего хранилища писем, то он добавляет определенные правила для IMAP сервера – Sieve. Это что вроде procmail-а только более функционально ну и со своими тараканами. Но вот беда, этот самый Seive реализован только в Cyrus IMAP и Dovecot IMAP, и плагин работает (в описании протестирован) с Dovecot, и мой courier никак не поддерживает эту штуку.

    Выход один переходить на Dovecot, тем более что весь “всезнающий” пестрит статьями об использовании именно Dovecot-а, видимо он стал модным :). Как проходил переход читаем тут:

    Web-интерфейс RoundCube для вашего почтового сервера

    Web-интерфейс RoundCube для вашего почтового сервера

    Необходимо было прикрутить web-интерфейс для Mail-сервера, что бы удаленные пользователи могли работать с своей корпоративной почтой. Перепробовав много web-клиентов, пришел к выводу, что российская разработка RoundCube имеет более дружественный интерфейс и функциональность.
    Обновляем порты и начинам устанвку:

    [ root @ srv / ] # cd /usr/ports/mail/roundcube
    [ root @ srv / usr / ports / mail / roundcube ] #make config


    В открывшемся окне выбираем:

    [ X ] MYSQL Use MySQL backend
    [ X ] SSL Enable SSL support ( imaps or google spellcheck )
    [ X ] LOCALCHECK Install internal spellchecker
    [ X ] AUTOCOMP Enable autocomplete in login form

    [ root @ srv / usr / ports / mail / roundcube ] #make install clean


    После установки инсталятор просит нас создать БД и пользователя, импортировать в нее дамп мускула, отредактировать конфиг под свои реалии и выставить пермишенсы на db.inc.php в 660.

    Create a new database and a database user for RoundCube
    . Create database tables using the queries in file
    'SQL/*.initial.sql'
    . Modify the files in config/* to suit your local environment
    . Don't forget to set db.inc.php mode to 660.

    Сказали, значит нужно делать, немного почитав INSTALL (/usr/local/share/doc/roundcube/INSTALL), приступаем к созданию БД и юзера:

    [ root @ srv / usr / local / share / doc / roundcube ] # mysql -u root -p
    Enter password:

    mysql > CREATE DATABASE roundcubemail /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */ ;
    Query OK. 1 row affected ( 0.02 sec )
    mysql > GRANT ALL PRIVILEGES ON roundcubemail. * TO roundcube@localhost IDENTIFIED BY 'password' ;
    Query OK. 0 rows affected ( 0.00 sec )
    mysql > quit
    Bye


    Импортируем в БД дамп mysql.initial.sql:

    [ root @ srv / ] #cd /usr/local/www/roundcube
    [ root @ srv / usr / local / www / roundcube ] #mysql -u root -p roundcubemail < SQL/mysql.initial.sql
    Enter password:
    [ root @ srv / usr / local / www / roundcube ] #


    Далее правим конфиг подключения roundcube к БД:

    [ root @ srv / ] #ee /usr/local/www/roundcube/config/db.inc.php

    <?php
    $rcmail_config = array ( ) ;
    # Тут говорим использовать MySQL, указываем логи,пароль для БД "roundcubemail"
    $rcmail_config [ 'db_dsnw' ] = 'mysql://roundcubemail:qwerty@localhost/roundcubemail' ;
    $rcmail_config [ 'db_dsnr' ] = '' ;
    $rcmail_config [ 'db_max_length' ] = 512000 ; // 500K
    $rcmail_config [ 'db_persistent' ] = FALSE ;
    $rcmail_config [ 'db_table_users' ] = 'users' ;
    $rcmail_config [ 'db_table_identities' ] = 'identities' ;
    $rcmail_config [ 'db_table_contacts' ] = 'contacts' ;
    $rcmail_config [ 'db_table_session' ] = 'session' ;
    $rcmail_config [ 'db_table_cache' ] = 'cache' ;
    $rcmail_config [ 'db_table_messages' ] = 'messages' ;
    $rcmail_config [ 'db_sequence_users' ] = 'user_ids' ;
    $rcmail_config [ 'db_sequence_identities' ] = 'identity_ids' ;
    $rcmail_config [ 'db_sequence_contacts' ] = 'contact_ids' ;
    $rcmail_config [ 'db_sequence_cache' ] = 'cache_ids' ;
    $rcmail_config [ 'db_sequence_messages' ] = 'message_ids' ;
    ?>


    Правим конфиг самого roundcube:

    [ root @ srv / ] # ee /usr/local/www/roundcube/config/main.inc.php

    // system error reporting: 1 = log; 2 = report (not implemented yet), 4 = show, 8 = trace
    $rcmail_config [ 'debug_level' ] = 1 ;

    // log driver: 'syslog' or 'file'.
    $rcmail_config [ 'log_driver' ] = 'file' ;

    // Syslog ident string to use, if using the 'syslog' log driver.
    $rcmail_config [ 'syslog_id' ] = 'roundcube' ;

    // Syslog facility to use, if using the 'syslog' log driver.
    // For possible values see installer or http://php.net/manual/en/function.openlog.php
    $rcmail_config [ 'syslog_facility' ] = LOG_USER ;

    // use this folder to store log files (must be writeable for apache user)
    // This is used by the 'file' log driver.
    $rcmail_config [ 'log_dir' ] = 'logs/' ;

    // use this folder to store temp files (must be writeable for apache user)
    $rcmail_config [ 'temp_dir' ] = 'temp/' ;

    // enable caching of messages and mailbox data in the local database.
    // this is recommended if the IMAP server does not run on the same machine
    $rcmail_config [ 'enable_caching' ] = TRUE ;

    // lifetime of message cache
    // possible units: s, m, h, d, w
    $rcmail_config [ 'message_cache_lifetime' ] = '10d' ;

    // automatically create a new RoundCube user when log-in the first time.
    // a new user will be created once the IMAP login succeeds.
    // set to false if only registered users can use this service
    $rcmail_config [ 'auto_create_user' ] = TRUE ;

    // the mail host chosen to perform the log-in
    // leave blank to show a textbox at login, give a list of hosts
    // to display a pulldown menu or set one host as string.
    // To use SSL connection, enter ssl://hostname:993
    $rcmail_config [ 'default_host' ] = 'localhost' ;

    // TCP port used for IMAP connections
    $rcmail_config [ 'default_port' ] = 143 ;

    // IMAP auth type. Can be "auth" (CRAM-MD5), "plain" (PLAIN) or "check" to auto detect.
    // Optional, defaults to "check"
    $rcmail_config [ 'imap_auth_type' ] = null ;

    // If you know your imap's root directory and its folder delimiter,
    // you can specify them here. Otherwise they will be determined automatically.
    $rcmail_config [ 'imap_root' ] = null ;
    $rcmail_config [ 'imap_delimiter' ] = null ;

    // Automatically add this domain to user names for login
    // Only for IMAP servers that require full e-mail addresses for login
    // Specify an array with 'host' => 'domain' values to support multiple hosts
    $rcmail_config [ 'username_domain' ] = '' ;

    //Тут указываем свой почтовый домен
    $rcmail_config [ 'mail_domain' ] = 'mail.example.com' ;

    // Path to a virtuser table file to resolve user names and e-mail addresses
    $rcmail_config [ 'virtuser_file' ] = '' ;

    // Query to resolve user names and e-mail addresses from the database
    // %u will be replaced with the current username for login.
    // The query should select the user's e-mail address as first col
    $rcmail_config [ 'virtuser_query' ] = '' ;

    // SMTP port (default is 25; 465 for SSL)
    $rcmail_config [ 'smtp_port' ] = 25 ;

    // SMTP username (if required) if you use %u as the username RoundCube
    // will use the current username for login
    $rcmail_config [ 'smtp_user' ] = '%u' ;

    // SMTP password (if required) if you use %p as the password RoundCube
    // will use the current user's password for login
    $rcmail_config [ 'smtp_pass' ] = '%p' ;

    // SMTP AUTH type (DIGEST-MD5, CRAM-MD5, LOGIN, PLAIN or empty to use
    // best server supported one)
    $rcmail_config [ 'smtp_auth_type' ] = 'PLAIN' ;

    // SMTP HELO host
    // Hostname to give to the remote server for SMTP 'HELO' or 'EHLO' messages
    // Leave this blank and you will get the server variable 'server_name' or
    // localhost if that isn't defined.
    $rcmail_config [ 'smtp_helo_host' ] = 'mail.example.com' ;

    // Log sent messages
    $rcmail_config [ 'smtp_log' ] = TRUE ;

    // How many seconds must pass between emails sent by a user
    $rcmail_config [ 'sendmail_delay' ] = 0 ;

    // These cols are shown in the message list. Available cols are:
    // subject, from, to, cc, replyto, date, size, flag, attachment
    $rcmail_config [ 'list_cols' ] = array ( 'subject'. 'from'. 'date'. 'size'. 'flag'. 'attachment' ) ;

    // Includes should be interpreted as PHP files
    $rcmail_config [ 'skin_include_php' ] = FALSE ;

    // Session lifetime in minutes
    // must be greater than 'keep_alive'/60
    $rcmail_config [ 'session_lifetime' ] = 10 ;

    // check client IP in session athorization
    $rcmail_config [ 'ip_check' ] = false ;

    // Use an additional frequently changing cookie to athenticate user sessions.
    // There have been problems reported with this feature.
    $rcmail_config [ 'double_auth' ] = false ;

    // this key is used to encrypt the users imap password which is stored
    // in the session record (and the client cookie if remember password is enabled).
    // please provide a string of exactly 24 chars.
    $rcmail_config [ 'des_key' ] = 'rcmail-!24ByteDESkey*Str' ;

    // the default locale setting (leave empty for auto-detection)
    // RFC1766 formatted language name like en_US, de_DE, de_CH, fr_FR, pt_BR
    $rcmail_config [ 'language' ] = null ;

    // use this format for short date display
    $rcmail_config [ 'date_short' ] = 'D H:i' ;

    // use this format for detailed date/time formatting
    $rcmail_config [ 'date_long' ] = 'd.m.Y H:i' ;

    // use this format for today's date display
    $rcmail_config [ 'date_today' ] = 'H:i' ;

    // add this user-agent to message headers when sending
    $rcmail_config [ 'useragent' ] = 'RoundCube Webmail/0.2.1' ;

    //Использовать это имя для заголовков страниц
    $rcmail_config [ 'product_name' ] = 'mail.example.com' ;

    // store draft message is this mailbox
    // leave blank if draft messages should not be stored
    $rcmail_config [ 'drafts_mbox' ] = 'Drafts' ;

    // store spam messages in this mailbox
    $rcmail_config [ 'junk_mbox' ] = 'Junk' ;

    // store sent message is this mailbox
    // leave blank if sent messages should not be stored
    $rcmail_config [ 'sent_mbox' ] = 'Sent' ;

    // move messages to this folder when deleting them
    // leave blank if they should be deleted directly
    $rcmail_config [ 'trash_mbox' ] = 'Trash' ;

    // display these folders separately in the mailbox list.
    // these folders will also be displayed with localized names
    $rcmail_config [ 'default_imap_folders' ] = array ( 'INBOX'. 'Drafts'. 'Sent'. 'Junk'. 'Trash' ) ;

    // automatically create the above listed default folders on login.
    $rcmail_config [ 'create_default_folders' ] = TRUE ;

    // protect the default folders from renames, deletes, and subscription changes
    $rcmail_config [ 'protect_default_folders' ] = TRUE ;

    // if in your system 0 quota means no limit set this option to TRUE
    $rcmail_config [ 'quota_zero_as_unlimited' ] = FALSE ;

    // Behavior if a received message requests a message delivery notification (read receipt)
    // 0 = ask the user, 1 = send automatically, 2 = ignore (never send or ask)
    $rcmail_config [ 'mdn_requests' ] = 0 ;

    // Use this charset as fallback for message decoding
    $rcmail_config [ 'default_charset' ] = 'UTF-8' ;

    // Make use of the built-in spell checker. It is based on GoogieSpell.
    // Since Google only accepts connections over https your PHP installatation
    // requires to be compiled with Open SSL support
    $rcmail_config [ 'enable_spellcheck' ] = TRUE ;

    // Set the spell checking engine. 'googie' is the default. 'pspell' is also available,
    // but requires the Pspell extensions. When using Nox Spell Server, also set 'googie' here.
    $rcmail_config [ 'spellcheck_engine' ] = 'googie' ;

    // For a locally installed spellcheker, specify the URI to call it, for example:
    // 'http://'. $_SERVER['HTTP_HOST']. '/spellchecker.php?lang='
    // Leave empty to use the Google spell checking service, what means
    // that the message content will be sent to Google in order to check spelling
    $rcmail_config [ 'spellcheck_uri' ] = '' ;

    // These languages can be selected for spell checking.
    // Configure as a PHP style hash array: array('en'=>'English', 'de'=>'Deutsch');
    // Leave empty for default set of Google spell check languages, should be defined
    // when using local Pspell extension
    $rcmail_config [ 'spellcheck_languages' ] = NULL ;

    // path to a text file which will be added to each sent message
    // paths are relative to the RoundCube root folder
    $rcmail_config [ 'generic_message_footer' ] = '' ;

    // add a received header to outgoing mails containing the creators IP and hostname
    $rcmail_config [ 'http_received_header' ] = false ;

    // this string is used as a delimiter for message headers when sending
    // leave empty for auto-detection
    $rcmail_config [ 'mail_header_delimiter' ] = NULL ;

    // session domain. example.org
    $rcmail_config [ 'session_domain' ] = '' ;

    // This indicates which type of address book to use. Possible choises:
    // 'sql' (default) and 'ldap'.
    // If set to 'ldap' then it will look at using the first writable LDAP
    // address book as the primary address book and it will not display the
    // SQL address book in the 'Address Book' view.
    $rcmail_config [ 'address_book_type' ] = 'sql' ;

    // In order to enable public ldap search, configure an array like the Verisign
    // example further below. if you would like to test, simply uncomment the example.
    $rcmail_config [ 'ldap_public' ] = array ( ) ;

    // An ordered array of the ids of the addressbooks that should be searched
    // when populating address autocomplete fields server-side. ex: array('sql','Verisign');
    $rcmail_config [ 'autocomplete_addressbooks' ] = array ( 'sql' ) ;

    // don't allow these settings to be overriden by the user
    $rcmail_config [ 'dont_override' ] = array ( ) ;

    // Set identities access level:
    // 0 - many identities with possibility to edit all params
    // 1 - many identities with possibility to edit all params but not email address
    // 2 - one identity with possibility to edit all params
    // 3 - one identity with possibility to edit all params but not email address
    $rcmail_config [ 'identities_level' ] = 0 ;

    // don't let users set pagesize to more than this value if set
    $rcmail_config [ 'max_pagesize' ] = 200 ;

    // mime magic database
    $rcmail_config [ 'mime_magic' ] = '/usr/share/misc/magic' ;

    // default sort col
    $rcmail_config [ 'message_sort_col' ] = 'date' ;

    // default sort order
    $rcmail_config [ 'message_sort_order' ] = 'DESC' ;

    // THIS OPTION WILL ALLOW THE INSTALLER TO RUN AND CAN EXPOSE SENSITIVE CONFIG DATA.
    // ONLY ENABLE IT IF YOU'RE REALLY SURE WHAT YOU'RE DOING!
    $rcmail_config [ 'enable_installer' ] = false ;

    // Log successful logins
    $rcmail_config [ 'log_logins' ] = false ;

    $rcmail_config [ 'delete_always' ] = false ;

    // Minimal value of user's 'keep_alive' setting (in seconds)
    // Must be less than 'session_lifetime'
    $rcmail_config [ 'min_keep_alive' ] = 60 ;

    /***** these settings can be overwritten by user's preferences *****/

    // skin name: folder from skins/
    // Шкура по дефолту (я указал свою)
    $rcmail_config [ 'skin' ] = 'mvision' ;

    // show up to X items in list view
    $rcmail_config [ 'pagesize' ] = 40 ;

    // use this timezone to display date/time
    $rcmail_config [ 'timezone' ] = 'auto' ;

    // is daylight saving On?
    $rcmail_config [ 'dst_active' ] = ( bool ) date ( 'I' ) ;

    // prefer displaying HTML messages
    $rcmail_config [ 'prefer_html' ] = TRUE ;

    // display remote inline images
    // 0 - Never, always ask
    // 1 - Ask if sender is not in address book
    // 2 - Always show inline images
    $rcmail_config [ 'show_images' ] = 0 ;

    // compose html formatted messages by default
    $rcmail_config [ 'htmleditor' ] = FALSE ;

    // show pretty dates as standard
    $rcmail_config [ 'prettydate' ] = TRUE ;

    // save compose message every 300 seconds (5min)
    $rcmail_config [ 'draft_autosave' ] = 300 ;

    // default setting if preview pane is enabled
    $rcmail_config [ 'preview_pane' ] = FALSE ;

    // focus new window if new message arrives
    $rcmail_config [ 'focus_on_new_message' ] = true ;

    // Clear Trash on logout
    $rcmail_config [ 'logout_purge' ] = FALSE ;

    // Compact INBOX on logout
    $rcmail_config [ 'logout_expunge' ] = FALSE ;

    // Display attached images below the message body
    $rcmail_config [ 'inline_images' ] = TRUE ;

    // Encoding of long/non-ascii attachment names:
    // 0 - Full RFC 2231 compatible
    // 1 - RFC 2047 for 'name' and RFC 2231 for 'filename' parameter (Thunderbird's default)
    // 2 - Full 2047 compatible
    $rcmail_config [ 'mime_param_folding' ] = 0 ;

    // Set TRUE if deleted messages should not be displayed
    // This will make the application run slower
    $rcmail_config [ 'skip_deleted' ] = FALSE ;

    // Set true to Mark deleted messages as read as well as deleted
    // False means that a message's read status is not affected by marking it as deleted
    $rcmail_config [ 'read_when_deleted' ] = TRUE ;

    // When a Trash folder is not present and a message is deleted, flag
    // the message for deletion rather than deleting it immediately. Setting this to
    // false causes deleted messages to be permanantly removed if there is no Trash folder
    $rcmail_config [ 'flag_for_deletion' ] = FALSE ;

    // Default interval for keep-alive/check-recent requests (in seconds)
    // Must be greater than or equal to 'min_keep_alive' and less than 'session_lifetime'
    $rcmail_config [ 'keep_alive' ] = 60 ;

    // If true all folders will be checked for recent messages
    $rcmail_config [ 'check_all_folders' ] = FALSE ;

    // end of config file
    ?>


    Добавим алиас в Apache:

    [ root @ router / ] # ee /usr/local/etc/apache/vhosts/aliases.conf

    Alias / roundcube / "/usr/local/www/roundcube/"
    < Directory "/usr/local/www/roundcube" >
    Order deny,allow
    Allow from all
    </ Directory >

    < VirtualHost *>
    ServerAdmin admin @ example.com
    ServerName mail.example.com
    DocumentRoot / usr / local / www / roundcube /
    DirectoryIndex index.php index.php3 index.html
    AddType application / x-httpd-php .php .php3
    Action application / x-httpd-php / cgi-bin / php-cgi
    ErrorLog / var / log / webmail-error.log
    CustomLog / var / log / webmail-custom.log combined
    </ VirtualHost >


    Перегружаем web-сервер и заходим с браузера на mail.example.com:

    после авторизации:

    Если кому понравилась шкура, прилепил - mvision.tar.bz2, распаковываем ее в /usr/local/www/roundcube/skins.
    Вот вроде и все.

    Комментарии:

    RoundCube Webmail - скачать бесплатно русскую версию RoundCube Webmail для Linux

    RoundCube Webmail Основная информация о программе

    RoundCube Webmail is a browser-based multilingual IMAP client with an application-like user interface.
    RoundCube Webmail provides full functionality you expect from an e-mail client, including MIME support, address book, folder manipulation and message filters. RoundCube Webmail is written in PHP and requires the MySQL database. The user interface is fully skinnable using XHTML and CSS 2.

    Ключевые особенности и функции

    · Multilingual capabilities
    · Full support for MIME and HTML messages
    · Compose messages with attachments
    · Multiple sender identities
    · Basic address book
    · Find-as-you-type address book integration
    · Create or remove custom message folders
    · Built-in caching for fast mailbox access
    · Support for external SMTP server
    · Advanced user interface
    · Unlimited users and messages
    · Complete customization with skins

    Что нового в этой версии?

    0.1 RC1 (01.01.1970)

    · This release has a stable core and a new message parser (less memory consuming). · It works with PHP safe_mode and creates valid HTML. · It has new LDAP integration and allows you to search for contacts. Смотреть всю историю изменений

    Roundcube skins

    RoundCube. Установка и настройка.

    Аренда сервера. Выделенные серверы в Украине и Нидерландах
    Аренда сервера

    Roundcube – это web-интерфейс или, если хотите, почтовый клиент, написанный на PHP. Roundcube сочетает в себе приятность дизайна интерфейса и удобство, которое проявляется даже в мелочах, например письма можно перемещать между папками простым перетаскиванием. Из всех известных мне web-интерфейсов на сегодняшний день Roundcube является наиболее красивым и удобным, а к тому же еще и бесплатным. Для работы Roundcube нам потребуется web-сервер Apache. который мы уже установили, а также сервер баз данных MySQL. тоже установленный ранее. В MySQL базе Roundcube будет сохранять настройки пользователей, адресные книги, автоматически добавляемые подписи к сообщениям и т.д.

    Начнем с установки Roundcube:

    # cd /usr/ports/mail/roundcube
    # make config

    Отмечаем следующие опции:

    [X] MYSQL Use MySQL backend

    # make install clean

    Создадим базу данных MySQL:

    # mysql
    mysql> create database roundcube;
    mysql> grant all on roundcube.* to 'roundcube'@'localhost' identified by 'roundcube';
    mysql> flush privileges;
    mysql> quit

    Теперь займемся настройкой web-сервера apache для нашего Roundcube. Для скриптов roundcube мы выделим отдельную площадку. Для этих целей создадим пользователя и домашнюю директорию с деревом каталогов под виртуалхост, установим соответствующие права:

    # pw useradd roundcube -g www -s “/sbin/nologin” -c “Roundcube”
    # mkdir /home/roundcube
    # mkdir /home/roundcube/tmp
    # mkdir /home/roundcube/webmail.example.com
    # chmod -R 770 /home/roundcube

    Создадим конфигурационный файл виртуалхоста:

    И отредактируем его:

    <Virtualhost>
    ServerName webmail.example.com
    ServerAdmin [email protected]
    DocumentRoot "/home/roundcube/webmail.example.com"

    # Поскольку roundcube написан на PHP и мы
    # не предполагаем запуск чего-либо кроме PHP скриптов
    # на этом виртуалхосте, то на всякий случай отключаем CGI
    # и запрещаем изменение параметров ./htaccess'ом
    <Directory "/home/roundcube/webmail.example.com">
    Options -ExecCGI
    AllowOverride None
    </Directory>
    # Запрещаем PHP скриптам выходить за пределы
    # директории виртуалхоста
    php_admin_value open_basedir /home/roundcube
    php_admin_value safe_mode_include_dir /home/roundcube
    php_admin_value safe_mode_exec_dir /noexec
    php_admin_value doc_root /home/roundcube
    php_admin_value upload_tmp_dir /home/roundcube/tmp
    php_admin_value session.save_path /home/roundcube/tmp

    # Логирование
    ErrorLog /var/log/httpd/roundcube-error.log
    TransferLog /var/log/httpd/roundcube-access.log
    </Virtualhost>

    Перезапускаем apache, чтобы изменения вступили в силу:

    После установки скрипты Roundcube появились в директории /usr/local/www/roundcube. Скопируем их в директорию, где будет размещаться наш VirtualHost и зададим владельца:

    # cp -R /usr/local/www/roundcube/* /home/roundcube/webmail.example.com/
    # chown -R roundcube:www /home/roundcube

    Заполняем базу данных:

    # mysql roundcube < /home/roundcube/webmail.example.com/SQL/mysql.initial.sql

    Переходим к настройке Roundcube. Отредактируем файл /home/roundcube/webmail.example.com/config/db.inc.php:

    $rcmail_config = array();
    $rcmail_config['db_dsnw'] = 'mysql://roundcube:[email protected] /roundcube';
    $rcmail_config['db_dsnr'] = '';
    $rcmail_config['db_max_length'] = 512000; // 500K
    $rcmail_config['db_persistent'] = FALSE;
    $rcmail_config['db_table_users'] = 'users';
    $rcmail_config['db_table_identities'] = 'identities';
    $rcmail_config['db_table_contacts'] = 'contacts';
    $rcmail_config['db_table_session'] = 'session';
    $rcmail_config['db_table_cache'] = 'cache';
    $rcmail_config['db_table_messages'] = 'messages';
    $rcmail_config['db_sequence_users'] = 'user_ids';
    $rcmail_config['db_sequence_identities'] = 'identity_ids';
    $rcmail_config['db_sequence_contacts'] = 'contact_ids';
    $rcmail_config['db_sequence_cache'] = 'cache_ids';
    $rcmail_config['db_sequence_messages'] = 'message_ids';

    Теперь отредактируем файл /home/roundcube/webmail.example.com/config/main.inc.php:

    $rcmail_config = array();
    $rcmail_config['debug_level'] = 1;
    $rcmail_config['enable_caching'] = TRUE;
    $rcmail_config['message_cache_lifetime'] = '10d';
    $rcmail_config['auto_create_user'] = TRUE;
    $rcmail_config['default_host'] = 'localhost';
    $rcmail_config['default_port'] = 143;
    $rcmail_config['username_domain'] = '';
    $rcmail_config['mail_domain'] = '';
    $rcmail_config['virtuser_file'] = '';
    $rcmail_config['virtuser_query'] = '';
    $rcmail_config['smtp_server'] = '';
    $rcmail_config['smtp_port'] = 25;
    $rcmail_config['smtp_user'] = '';
    $rcmail_config['smtp_pass'] = '';
    $rcmail_config['smtp_auth_type'] = '';
    $rcmail_config['smtp_helo_host'] = '';
    $rcmail_config['smtp_log'] = TRUE;
    $rcmail_config['list_cols'] = array('subject', 'from', 'date', 'size');
    $rcmail_config['skin_path'] = 'mvision';
    $rcmail_config['skin_include_php'] = FALSE;
    $rcmail_config['temp_dir'] = 'temp/';
    $rcmail_config['log_dir'] = 'logs/';
    $rcmail_config['session_lifetime'] = 10;
    $rcmail_config['ip_check'] = false;
    $rcmail_config['double_auth'] = false;
    $rcmail_config['des_key'] = 'rcmail-!24ByteDESkey*Str';
    $rcmail_config['locale_string'] = 'ru';
    $rcmail_config['date_short'] = 'D H:i';
    $rcmail_config['date_long'] = 'd.m.Y H:i';
    $rcmail_config['date_today'] = 'H:i';
    $rcmail_config['useragent'] = 'RoundCube Webmail/0.1';
    $rcmail_config['product_name'] = 'RoundCube Webmail';
    $rcmail_config['imap_root'] = '';
    $rcmail_config['drafts_mbox'] = 'Drafts';
    $rcmail_config['junk_mbox'] = 'Junk';
    $rcmail_config['sent_mbox'] = 'Sent';
    $rcmail_config['trash_mbox'] = 'Trash';
    $rcmail_config['default_imap_folders'] = array('INBOX', 'Drafts', 'Sent', 'Junk', 'Trash');
    $rcmail_config['create_default_folders'] = TRUE;
    $rcmail_config['protect_default_folders'] = TRUE;
    $rcmail_config['skip_deleted'] = FALSE;
    $rcmail_config['read_when_deleted'] = TRUE;
    $rcmail_config['flag_for_deletion'] = FALSE;
    $rcmail_config['enable_spellcheck'] = TRUE;
    $rcmail_config['spellcheck_uri'] = '';
    $rcmail_config['spellcheck_languages'] = NULL;
    $rcmail_config['generic_message_footer'] = '';
    $rcmail_config['mail_header_delimiter'] = NULL;
    $rcmail_config['dont_override'] = array();
    $rcmail_config['javascript_config'] = array('read_when_deleted', 'flag_for_deletion');
    $rcmail_config['include_host_config'] = FALSE;

    /***** these settings can be overwritten by user's preferences *****/
    $rcmail_config['pagesize'] = 40;
    $rcmail_config['timezone'] = intval(date('O'))/100 - date('I');
    $rcmail_config['dst_active'] = (bool)date('I');
    $rcmail_config['prefer_html'] = TRUE;
    $rcmail_config['htmleditor'] = TRUE;
    $rcmail_config['prettydate'] = TRUE;
    $rcmail_config['message_sort_col'] = 'date';
    $rcmail_config['message_sort_order'] = 'DESC';
    $rcmail_config['draft_autosave'] = 300;
    $rcmail_config['max_pagesize'] = 200;
    $rcmail_config['preview_pane'] = TRUE;

    RoundCube установлен и готов к работе.

    3 комментариев