Как установить Roundcube на Ubuntu 16.04

Что такое Roundcube? 

Roundcube - это сетевой почтовый клиент IMAP, предлагающий пользовательский интерфейс, аналогичный Gmail Google. Это серверное приложение, написанное на PHP, предназначенное для доступа к почтовому серверу или сервису. Пользователи электронной почты взаимодействуют с Roundcube с помощью веб-браузера.

Прежде чем начать 

  1. Ознакомьтесь с нашим руководством по  и выполните шаги по настройке имени хоста и часового пояса вашего VPS.
  2. Заполните разделы «  чтобы создать учетную запись стандартного пользователя, улучшить доступ по SSH и удалить ненужные сетевые службы.
  3. Это руководство предназначено для работы с нашими руководствами по  , но вы можете использовать другой почтовый сервер.
  4. Сконфигурируйте DNS-запись HOST или CNAME (поддомен), чтобы она указывала на ваш VPS. Для этого руководства webmailбудет использоваться поддомен . Обратитесь к нашему руководству  если вам нужна помощь в создании этой записи.
  5. Обновите пакеты программного обеспечения вашего сервера:

    sudo apt-get update && sudo apt-get upgrade
    
Заметка
Это руководство написано для пользователя без полномочий root. Команды, которые требуют повышенных привилегий, имеют префикс sudo. Если вы не знакомы с sudoкомандой, вы можете проверить наше руководство  .

стек для Linux, Apache, MySQL и PHP (LAMP)

В этом разделе будет рассказано об установке Apache, MySQL, PHP и SSL на VPS с нуля. Если у вас уже есть работающий стек LAMP, перейдите к разделу  .

Установить пакеты стека LAMP 

  1. Установите lamp-server^метапакет, который устанавливает Apache, MySQL и PHP как зависимости:

    sudo apt-get install lamp-server^
    
  2. В процессе установки вам будет предложено выбрать пароль для пользователя root MySQL.
  3. Защитите вашу новую установку MySQL:

    sudo mysql_secure_installation
    
  4. Укажите часовой пояс VPS в /etc/php/7.0/apache2/php.iniфайле конфигурации PHP. Если ваш сервер не использует UTC, замените его местным часовым поясом, указанным на PHP.net :

    sudo sed -i -e "s/^;date\.timezone =.*$/date\.timezone = 'UTC'/" /etc/php/7.0/apache2/php.ini
    

Создание Apache Виртуальный хост с SSL 

В этом разделе мы создадим новый виртуальный хост для Roundcube. Это создаст новый рут-корень для Roundcube, отделив его от любых других рут-корней на вашем VPS.
  1. Разместите приглашение оболочки вашего VPS в /etc/apache2/sites-availableкаталоге:

    cd /etc/apache2/sites-available
    
  2. Загрузите копию нашего apache2-roundcube.sample.confфайла конфигурации виртуального хоста. Замените экземпляры webmail.example.comна нужный домен или поддомен вашей установки.

    sudo wget https://VPS.com/docs/assets/roundcube/apache2-roundcube.sample.conf
    
  3. Перенесите владение файла в root :

    sudo chown root:root apache2-roundcube.sample.conf
    
  4. Затем измените права доступа к файлу:

    sudo chmod 644 apache2-roundcube.sample.conf
    
  5. Определите, какой тип сертификата шифрования Secure Socket Layer (SSL) лучше всего подходит для развертывания Roundcube.  легко и свободно, но вызывает ошибку в большинстве современных браузеров , сообщающих о том , что соединение не является частным. Let's Encrypt предлагает браузеру надежные, бесплатные сертификаты SSL, но не поддерживает расширенную проверку (EV) или многодоменные ( подстановочные ) сертификаты. Чтобы получить эти функции, необходимо использовать  .
  6. Получив сертификат SSL, измените следующие параметры в apache2-roundcube.sample.confсоответствии с желаемой конфигурацией:
    • ServerAdmin: административный адрес электронной почты для вашего линода (например, admin@example.comили webmaster@example.com)
    • ServerName: полное доменное имя виртуального хоста (например webmail.example.com)
    • ErrorLog (необязательно): путь к пользовательскому файлу журнала ошибок (например /var/log/apache2/webmail.example.com/error.log, раскомментировать, удалив #)
    • CustomLog (необязательно): путь к файлу журнала настраиваемого доступа (например /var/log/apache2/webmail.example.com/access.log, снова, раскомментируйте, удалив #)
    • SSLCertificateFile: путь к файлу информации о сертификате SSL ( .crt)
    • SSLCertificateKeyFile: путь к .keyфайлу закрытого ключа сертификата SSL ( )
  7. предосторожность
  8. Убедитесь, что пользовательский каталог и нужные .logфайлы существуют, прежде чем указывать их в конфигурации вашего виртуального хоста. В противном случае Apache не запустится. Файлы должны принадлежать www-dataпользователю с 644разрешениями.
  9. Переименуйте файл конфигурации, чтобы он соответствовал полному имени домена:

    sudo mv apache2-roundcube.sample.conf webmail.example.com.conf
    
  10. Наконец, отключите виртуальный хост Apache по умолчанию, если вы не планируете его использовать.

    sudo a2dissite 000-default.conf default-ssl.conf
    

Создайте базу данных MySQL и постоянную пользователя

  1. Войдите в командную строку MySQL от имени пользователя root :

    mysql -u root -p
    
  2. После входа в систему и mysql>отображения приглашения создайте новую базу данных MySQL с именем roundcubemail:

    CREATE DATABASE roundcubemail;
    
  3. Создайте нового пользователя MySQL с именем roundcubeи назначьте ему надежный пароль:

    CREATE USER 'roundcube'@'localhost' IDENTIFIED BY 'example_password';
    
  4. Предоставьте новому roundcubeпользователю полный доступ к базе данных Roundcube roundcubemail:

    GRANT ALL PRIVILEGES ON roundcubemail.* TO 'roundcube'@'localhost';
    
  5. Очистите таблицы привилегий MySQL, чтобы перезагрузить их:

    FLUSH PRIVILEGES;
    
  6. Выйдите из командной строки MySQL и вернитесь к обычной командной строке Linux:

    exit
    

Окончательная подготовка к Roundcube 

  1. Установите и включите необходимые пакеты PHP:

    sudo apt-get install php-pear php7.0-intl php7.0-mcrypt php7.0-mbstring && sudo phpenmod intl mcrypt mbstring
    
  2. Включение модулей Apache deflateexpiresheadersrewrite, и ssl:

    sudo a2enmod deflate expires headers rewrite ssl
    
  3. Кроме того, установить пакеты PHP PEAR Auth_SASLNet_SMTPNet_IDNA2-0.1.1Mail_mime, и Mail_mimeDecode:

    sudo pear install Auth_SASL2 Net_SMTP Net_IDNA2-0.1.1 Mail_mime Mail_mimeDecode
    
    Заметка
  4. PEAR - это сокращение от «Расширение PHP и хранилище приложений». Общие библиотеки кода PHP, написанные официально или третьими лицами, могут быть легко установлены с помощью pearкоманды.
    PEAR напечатает подтверждающее сообщение об установке для каждого пакета, который он успешно установил. В этом случае полная установка будет выглядеть примерно так:

      
    install ok: channel://pear.php.net/Auth_SASL-1.1.0
    install ok: channel://pear.php.net/Net_IDNA2-0.1.1
    install ok: channel://pear.php.net/Mail_Mime-1.10.2
    install ok: channel://pear.php.net/Net_Socket-1.2.2
    install ok: channel://pear.php.net/Net_SMTP-1.8.0
    install ok: channel://pear.php.net/Mail_mimeDecode-1.5.6
    [/code]

Загрузите и установите круглую постоянную 

  1. Убедитесь, что приглашение оболочки вашего VPS работает в домашнем каталоге вашего пользователя. ~/DownloadsПапка является предпочтительной, но ~/также является приемлемым.

    cd ~/Downloads
    
  2. Скачать Roundcube. На момент написания этой статьи текущей стабильной версией является 1.3.3, поэтому она будет использоваться для остальной части этого руководства.

    wget https://github.com/roundcube/roundcubemail/releases/download/1.3.3/roundcubemail-1.3.3-complete.tar.gz
    
  3. Распакуйте и скопируйте Roundcube в /var/wwwкаталог. Снова замените любые вхождения 1.3.3в имени файла на более новый номер версии, если необходимо:

    sudo tar -zxvf roundcubemail-1.3.3-complete.tar.gz -C /var/www
    
  4. Удалите номер версии из имени каталога Roundcube. Это облегчит обновление позже:

    sudo mv /var/www/roundcubemail-1.3.3 /var/www/roundcube
    
  5. Передать право собственности на /var/www/roundcubeкаталог www-dataпользователю. Это позволит Roundcube сохранить свой собственный файл конфигурации, вместо того чтобы загружать его, а затем вручную загружать в VPS:

    sudo chown -R www-dаta:www-data /var/www/roundcube
    
  6. Наконец, вы должны включить скрипт оболочки автоматической очистки кэша Roundcube:

    echo '0 0 * * * root bash /var/www/roundcube/bin/cleandb.sh >> /dev/null' | sudo tee --append /etc/crontab
    
    При этом используется задание cron для запуска cleandb.shсценария оболочки, включенного в Roundcube, один раз в день в полночь. Прочтите наше руководство по  чтобы узнать о Cron.

Включение Roundcube в Apache виртуальный хост 

  1. Включите webmail.example.comвиртуальный хост, который вы только что написали в разделе Создание виртуального хоста Apache с SSL :

    sudo a2ensite webmail.example.com.conf
    
  2. Перезапустите Apache, чтобы применить все изменения конфигурации и включить новый виртуальный хост:

    sudo service apache2 restart
    
    Выход должен быть * Restarting web server apache2 ... [ OK ]. Если выдается ошибка, используйте сообщения об ошибках для устранения неполадок в вашей конфигурации. Отсутствующие файлы, неправильные права доступа и опечатки - типичные причины неправильной перезагрузки Apache.

Настроить круглую постоянную 

  1. Перейдите к https://webmail.example.com/installerв веб-браузере. Опять же, не забудьте заменить webmail.example.comвыбранным доменным именем.
  2. Начните настройку Roundcube. Первым шагом графической конфигурации Roundcube является проверка среды . Нажмите кнопку « СЛЕДУЮЩАЯ» внизу страницы, чтобы продолжить.

    Заметка
  3. Поскольку Roundcube поддерживает шесть различных механизмов SQL, в разделе « Проверка доступных баз данных» появятся пять предупреждений « НЕ ДОСТУПНО ». MySQL был установлен ранее как часть стека LAMP, поэтому вы можете игнорировать эти предупреждения.
  4. Укажите параметры конфигурации Roundcube. Приведенный ниже список параметров предоставит вам правильную рабочую конфигурацию, но вы можете настроить любые не упомянутые параметры по своему усмотрению.
  5. Общая конфигурация> product_name: название вашей почтовой службы.
Общая конфигурация> support_url: куда ваши пользователи должны обращаться, если им нужна помощь? Следует использовать URL-адрес для веб-формы контакта или адрес электронной почты. (например, http://example.com/supportили mailto:support@example.com)Общая конфигурация> skin_logo: заменяет стандартный логотип Roundcube изображением по вашему выбору. Изображение должно быть расположено в /var/www/roundcubeкаталоге и быть связано (например skins/larry/logo.png). Рекомендуемое разрешение изображения 177pxна 49px.Настройка базы данных> db_dsnw> Пароль базы данных: пароль для пользователя MySQL круглого куба, который вы создали ранее.Настройки IMAP> default_host: Имя хоста вашего сервера IMAP. Установите это ssl://плюс домен вашего почтового сервера (например ssl://webmail.example.com).Настройки IMAP> username_domain: Какое доменное имя должно принимать Roundcube для всех пользователей? Это позволяет пользователям вводить только свое имя пользователя электронной почты (например, кого-нибудь ) вместо полного адреса электронной почты (например somebody@example.com).Настройки SMTP> smtp_server: имя хоста вашего SMTP-сервера. Установите это в свой домен почтового сервера с префиксом ssl://.Настройки SMTP> smtp_user / smtp_pass: установите и установите флажок Использовать текущее имя пользователя и пароль IMAP для аутентификации SMTP, чтобы пользователи могли отправлять почту, не вводя свои учетные данные повторно.Настройки отображения и пользовательские настройки> язык: позволяет выбрать стандартную для RFC1766 локаль для Roundcube. Для получения полного списка поддерживаемых языковых кодов, запустите cat /usr/share/i18n/SUPPORTEDна своем VPS.Настройки отображения и пользовательские настройки> draft_autosave: большинство пользователей ожидают, что их черновики будут сохранены практически мгновенно при вводе . Хотя Roundcube не предлагает мгновенное сохранение черновика в качестве опции, он может сохранять черновик пользователя каждую минуту. Выберите 1 minиз выпадающего меню.Нажмите кнопку « CREATE CONFIG» в нижней части страницы, чтобы сохранить новую конфигурацию. Вы должны увидеть подтверждающее сообщение на соответствующей странице: «Файл конфигурации был успешно сохранен в каталоге RCMAIL_CONFIG_DIR вашей установки Roundcube .Завершите настройку, нажав ПРОДОЛЖИТЬ .Наконец, импортируйте структуру базы данных MySQL от Roundcube, нажав на кнопку Initialize database .

Удалить каталог установщика 

  1. Удалите /var/www/roundcube/installerкаталог, в котором находятся файлы веб-страниц, используемые только для настройки Roundcube:

    sudo rm -rf /var/www/roundcube/installer
    
    В то время как Roundcube автоматически отключил функциональность установщика в своем файле конфигурации, удаление каталога установщика добавляет еще один уровень защиты от злоумышленников.

Проверьте свой Roundcube Установка 

  1. Перейдите https://webmail.example.comи войдите в систему, используя имя пользователя и пароль своей учетной записи электронной почты. Если ваша конфигурация работает, Roundcube позволит вам получать, читать и отправлять электронные письма как внутри, так и за пределами вашего доменного имени.

Сохранение Roundcube Обновленная 

  1. Сравните стабильную> полную версию пакета, указанную на странице загрузки Roundcube, с версией, установленной на вашем VPS.
  2. Если доступна более новая версия, замените все вхождения на 1.3.3самую новую версию в приведенной ниже команде. Это загрузит Roundcube в ваш ~/Downloadsкаталог:

    cd ~/Downloads && wget https://github.com/roundcube/roundcubemail/releases/download/1.3.3/roundcubemail-1.3.3-complete.tar.gz
    
  3. Извлеките и распакуйте архив (файл .tar.gz), чтобы ~/Downloads:

    tar -zxvf roundcubemail-1.3.3.tar.gz
    
  4. Начните обновлять Roundcube, выполнив /var/www/roundcube/bin/installto.shскрипт PHP. Если вы не установили Roundcube в /var/www/roundcubeкаталог, замените конечный каталог каталогом Roundcube на вашем сервере:

    cd roundcubemail-1.3.3
    sudo php bin/installto.sh /var/www/roundcube
    
  5. Подтвердите обновление, нажав Y, а затем ENTER . Успешное обновление напечатает что-то похожее на это:

      
    Upgrading from 1.3.3. Do you want to continue? (y/N)
    y
    Copying files to target location...sending incremental file list
    
    ...
    
    Running update script at target...
    Executing database schema update.
    This instance of Roundcube is up-to-date.
    Have fun!
    All done.
    [/code]Все сделано означает, что обновление прошло успешно; если вы видите это сообщение, перейдите к шагу шесть.
  6. Удалите каталог Roundcube и сжатый архив из ~/Downloads:

    cd ~/Downloads && rm -rfd roundcubemail-1.3.3 roundcubemail-1.3.3.tar.gz
    

Заключение 

Теперь, когда вы установили Roundcube, у вас есть бесплатный сетевой почтовый клиент, похожий на Google Gmail. Пользователи могут получить доступ к своей электронной почте, перейдя к https://webmail.example.com.
Отсюда вы можете установить плагины, чтобы добавить дополнительные функции и настроить тему в соответствии с цветовой схемой вашей организации.

Дополнительная информация 

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

Добавить комментарий

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

Комментариев 0