Главная
Главная Руководства FreeBSD › Установка roundcube на FreeBSD



Автор:

Статья опубликована: 2022-07-30 22:54:25
Последние правки: 2022-08-07 16:53:01

Установим и настроим roundcube в связке nginx + MySQL на FreeBSD. Roundcube работает в связке с Dovecot + Postfix.

  • Исходные данные
    # uname -sr
    FreeBSD 12.3-RELEASE-p5
    # pkg info | grep roundcube
    roundcube-php74-1.5.3,1        Fully skinnable XHTML/CSS webmail written in PHP
    


  • Установка
    # cd /usr/ports/mail/roundcube
    # make install clean
    
    Опции при установке:
    [ ] DOCS      Build and/or install documentation
    [ ] EXAMPLES  Build and/or install examples
    [ ] GD        Enable GD support (image conversion)
    [ ] LDAP      Enable LDAP support (address book)
    [ ] NSC       Install network spellchecker
    [ ] PSPELL    Enable PSpell support (internal spellcheck)
    ───────────────────────────── Database backend ───────────────────────────
    [x] MYSQL     Use MySQL backend
    [ ] PGSQL     Use PostgreSQL backend
    [ ] SQLITE    Use SQLite backend
    
    У меня в системе стоит php 7.4, поэтому roundcube поставился для него. Но есть и версия под php 8.0.
    Если с установкой все в порядке, то файлы roundcube вы найдете здесь /usr/local/www/roundcube


  • Nginx server
    server {
       listen 80;
       server_name mail.site-motor.ru;
       return 301 https://mail.site-motor.ru$request_uri;
    }
    
    server {
       listen 443 ssl;
       server_name mail.site-motor.ru;
       access_log /var/logs/nginx/mail.site-motor.ru.access.log combined;
       error_log  /var/logs/nginx/mail.site-motor.ru.error.log warn;
    
       root /usr/local/www/roundcube;
       index index.php;
    
       ssl_certificate             /etc/ssl/private/site-motor.ru/fullchain.cer;
       ssl_certificate_key         /etc/ssl/private/site-motor.ru/site-motor.ru.key;
       ssl_protocols               TLSv1 TLSv1.1 TLSv1.2;
       ssl_ciphers                 EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA256:EDH+aRSA:EECDH:!DES:!3DES:!RC4:!aNULL:!eNULL:!MD5:!EXPORT:!LOW:!SEED:!CAMELLIA:!IDEA:!PSK:!SRP:!SSLv2;
       ssl_prefer_server_ciphers   on;
    
    
       location / {
          try_files $uri $uri/ /index.php?q=$uri&$args;
       }
    
       location ~ ^/(README.md|INSTALL|LICENSE|CHANGELOG|UPGRADING)$ {
          deny all;
       }
    
       location ~ ^/(config|temp|logs)/ {
          deny all;
       }
    
       location ~ /\. {
          deny all;
          access_log off;
          log_not_found off;
       }
    
       location ~ \.php$ {
          try_files $uri =404;
          fastcgi_pass  unix:/var/run/php-fpm/php-cgi.utf8;
          fastcgi_index index.php;
          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          include fastcgi_params;
       }
    }
    
    # nginx -t
    ... OK
    # /usr/local/etc/rc.d/nginx restart
    


  • Настройка roundcube

    Идем по ссылке: https://mail.site-motor.ru/installer/

    1 этап, Check environment
    На этом этапе проверяется PHP. Необходимо доустановить необходимые модули, если на страничке будут ошибки. Next.

    2 этап, Create config
    На этом этапе делаем конфиг.
    SMTP - localhost:25, IMAP - localhost:143

    3 этап, Test config
    На этом этапе создаем БД и проверяем отправку писем и подключение к IMAP серверу
    Если все в порядке, то необходимо как то закрыть директорию installer для доступа.

    Файлы с настройками.
    - можно настраивать и через них.
    - /usr/local/www/roundcube/config/defaults.inc.php - "по умолчанию", этот читается первый
    - /usr/local/www/roundcube/config/config.inc.php - настройки из этого перезаписывают настройки файла "по умолчанию"