Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| centos:mail_c7:roundcube_1 [09.09.2014 18:56. ] – [Voraussetzungen und Abhängigkeiten] django | centos:mail_c7:roundcube_1 [18.11.2024 19:10. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
|---|---|---|---|
| Zeile 13: | Zeile 13: | ||
| # yum install php-pspell aspell-de php-mcrypt GraphicsMagick -y | # yum install php-pspell aspell-de php-mcrypt GraphicsMagick -y | ||
| - | Für die deutsche Rechtschreibkorrektur gibt es im [[centos: | + | Für die deutsche Rechtschreibkorrektur gibt es im [[centos: |
| - | Alternativ kann man natürlich acu das Paket manuell installieren. Hierzu laden wir das Paket [[http:// | + | Alternativ kann man natürlich acu das Paket manuell installieren. Hierzu laden wir das Paket [[http:// |
| # cd / | # cd / | ||
| - | # wget http:// | + | # wget http:// |
| Anschließend installieren wir dieses RPM mit Hilfe von **yum**. | Anschließend installieren wir dieses RPM mit Hilfe von **yum**. | ||
| Zeile 24: | Zeile 24: | ||
| Wie immer kann man sich mit Hilfe des Aufrufes **rpm -qil < | Wie immer kann man sich mit Hilfe des Aufrufes **rpm -qil < | ||
| + | |||
| + | ==== Installation roundcube ==== | ||
| + | Die Installation von Roundcube selbst ist kein Hexenwerk, braucht man doch nur das entsprechende RPM-Paket mit Hilfe von **yum** installieren. | ||
| + | # yum install roundcubemail -y | ||
| + | |||
| + | ==== Installations-/ | ||
| + | Im RPM finden wir eine ausführliche Dokumentation zur Konfiguration von **roundcubemail** | ||
| + | # cat / | ||
| + | |||
| + | <file / | ||
| + | ============ | ||
| + | |||
| + | This file describes the basic steps to install Roundcube Webmail on your | ||
| + | web server. For additional information, | ||
| + | wiki page at http:// | ||
| + | |||
| + | |||
| + | REQUIREMENTS | ||
| + | ============ | ||
| + | |||
| + | * The Apache, Lighttpd, Cherokee or Hiawatha web server | ||
| + | * .htaccess support allowing overrides for DirectoryIndex | ||
| + | * PHP Version 5.2.1 or greater including | ||
| + | - PCRE, DOM, JSON, XML, Session, Sockets (required) | ||
| + | - PHP Data Objects (PDO) with driver for either MySQL, PostgreSQL or SQLite (required) | ||
| + | Note: MySQL database driver requires PHP 5.3.7 or newer. | ||
| + | - Libiconv (required) | ||
| + | - Multibyte String (mbstring) | ||
| + | - Mcrypt (supporting Triple DES) | ||
| + | - Fileinfo (optional) | ||
| + | - Zip (recommended) | ||
| + | * PEAR packages distributed with Roundcube or external: | ||
| + | - Mail_Mime 1.8.1 or newer | ||
| + | - Mail_mimeDecode 1.5.5 or newer | ||
| + | - Net_SMTP (latest from https:// | ||
| + | - Net_IDNA2 0.1.1 or newer | ||
| + | - Auth_SASL 1.0.6 or newer | ||
| + | - Net_Sieve 1.3.2 or newer (for managesieve plugin) | ||
| + | - Crypt_GPG 1.2.0 or newer (for enigma plugin) | ||
| + | * php.ini options (see .htaccess file): | ||
| + | - error_reporting E_ALL & ~E_NOTICE (or lower) | ||
| + | - memory_limit > 16MB (increase as suitable to support large attachments) | ||
| + | - file_uploads enabled (for attachment upload features) | ||
| + | - session.auto_start disabled | ||
| + | - zend.ze1_compatibility_mode disabled | ||
| + | - suhosin.session.encrypt disabled | ||
| + | - mbstring.func_overload disabled | ||
| + | - magic_quotes_runtime disabled | ||
| + | - magic_quotes_sybase disabled | ||
| + | - register_globals disabled (PHP < 5.4) | ||
| + | * PHP compiled with OpenSSL to connect to IMAPS and to use the spell checker | ||
| + | * A MySQL (4.0.8 or newer), PostgreSQL, MS SQL Server (2005 or newer) database engine | ||
| + | or SQLite support in PHP | ||
| + | * One of the above databases with permission to create tables | ||
| + | * An SMTP server (recommended) or PHP configured for mail delivery | ||
| + | |||
| + | |||
| + | INSTALLATION | ||
| + | ============ | ||
| + | |||
| + | 1. Decompress and put this folder somewhere inside your document root | ||
| + | 2. Make sure that the following directories (and the files within) | ||
| + | are writable by the webserver | ||
| + | - /temp | ||
| + | - /logs | ||
| + | 3. Create a new database and a database user for Roundcube (see DATABASE SETUP) | ||
| + | 4. Point your browser to http:// | ||
| + | 5. Follow the instructions of the install script (or see MANUAL CONFIGURATION) | ||
| + | 6. After creating and testing the configuration, | ||
| + | 7. Check Known Issues section of this file | ||
| + | 8. Done! | ||
| + | |||
| + | |||
| + | CONFIGURATION HINTS | ||
| + | =================== | ||
| + | |||
| + | Roundcube writes internal errors to the ' | ||
| + | directory which can be configured in config/ | ||
| + | PHP errors to be logged there as well, enable the ' | ||
| + | in the .htaccess file and set the path to the log file accordingly. | ||
| + | |||
| + | By default the session_path settings of PHP are not modified by Roundcube. | ||
| + | However if you want to limit the session cookies to the directory where | ||
| + | Roundcube resides you can uncomment and configure the according line | ||
| + | in the .htaccess file. | ||
| + | |||
| + | |||
| + | DATABASE SETUP | ||
| + | ============== | ||
| + | |||
| + | Note: Database for Roundcube must use UTF-8 character set. | ||
| + | |||
| + | * MySQL | ||
| + | ------- | ||
| + | Setting up the mysql database can be done by creating an empty database, | ||
| + | importing the table layout and granting the proper permissions to the | ||
| + | roundcube user. Here is an example of that procedure: | ||
| + | |||
| + | # mysql | ||
| + | > CREATE DATABASE roundcubemail /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */; | ||
| + | > GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost | ||
| + | IDENTIFIED BY ' | ||
| + | > quit | ||
| + | |||
| + | # mysql roundcubemail < SQL/ | ||
| + | |||
| + | Note 1: ' | ||
| + | recommended you replace this with a more secure password. Please keep in | ||
| + | mind: You need to specify this password later in ' | ||
| + | |||
| + | |||
| + | * SQLite | ||
| + | -------- | ||
| + | Versions of sqlite database engine older than 3 aren't supported. | ||
| + | Database file and structure is created automatically by Roundcube. | ||
| + | Make sure your configuration points to some file location and that the | ||
| + | webserver can write to the file and the directory containing the file. | ||
| + | |||
| + | |||
| + | * PostgreSQL | ||
| + | ------------ | ||
| + | To use Roundcube with PostgreSQL support you have to follow these | ||
| + | simple steps, which have to be done as the postgres system user (or | ||
| + | which ever is the database superuser): | ||
| + | |||
| + | $ createuser -P roundcube | ||
| + | $ createdb -O roundcube -E UNICODE roundcubemail | ||
| + | $ psql -U roundcube -f SQL/ | ||
| + | |||
| + | Note: in some system configurations you might need to add '-U postgres' | ||
| + | createuser and createdb commands. | ||
| + | |||
| + | |||
| + | * Microsoft SQL Server | ||
| + | ---------------------- | ||
| + | Language/ | ||
| + | on this at http:// | ||
| + | |||
| + | |||
| + | Database cleaning | ||
| + | ----------------- | ||
| + | To keep your database slick and clean we recommend to periodically execute | ||
| + | bin/ | ||
| + | Best solution is to install a cronjob running this script daily. | ||
| + | |||
| + | |||
| + | MANUAL CONFIGURATION | ||
| + | ==================== | ||
| + | |||
| + | First of all, copy the sample configuration file config/ | ||
| + | to config/ | ||
| + | environment and your needs. More configuration options can be copied from the | ||
| + | config/ | ||
| + | Read the comments above the individual configuration options to find out what | ||
| + | they do or read http:// | ||
| + | guidance. | ||
| + | |||
| + | You can also modify the default .htaccess file. This is necessary to | ||
| + | increase the allowed size of file attachments, | ||
| + | php_value | ||
| + | |||
| + | |||
| + | UPGRADING | ||
| + | ========= | ||
| + | |||
| + | If you already have a previous version of Roundcube installed, | ||
| + | please refer to the instructions in UPGRADING guide. | ||
| + | |||
| + | |||
| + | OPTIMISING | ||
| + | ========== | ||
| + | |||
| + | There are two forms of optimisation here, compression and caching, both aimed | ||
| + | at increasing an end user's experience using Roundcube Webmail. Compression | ||
| + | allows the static web pages to be delivered with less bandwidth. The index.php | ||
| + | of Roundcube Webmail already enables compression on its output. The settings | ||
| + | below allow compression to occur for all static files. Caching sets HTTP | ||
| + | response headers that enable a user's web client to understand what is static | ||
| + | and how to cache it. | ||
| + | |||
| + | The caching directives used are: | ||
| + | * Etags - sets at tag so the client can request is the page has changed | ||
| + | * Cache-control - defines the age of the page and that the page is ' | ||
| + | This enables clients to cache javascript files that don't have private | ||
| + | | ||
| + | to share the same cached page between users. | ||
| + | * Expires - provides another hint to increase the lifetime of static pages. | ||
| + | |||
| + | For more information refer to RFC 2616. | ||
| + | |||
| + | Side effects: | ||
| + | ------------- | ||
| + | These directives are designed for production use. If you are using this in | ||
| + | a development environment you may get horribly confused if your webclient | ||
| + | is caching stuff that you changed on the server. Disabling the expires | ||
| + | parts below should save you some grief. | ||
| + | |||
| + | If you are changing the skins, it is recommended that you copy content to | ||
| + | a different directory apart from ' | ||
| + | |||
| + | Apache: | ||
| + | ------- | ||
| + | To enable these features in apache the following modules need to be enabled: | ||
| + | * mod_deflate | ||
| + | * mod_expires | ||
| + | * mod_headers | ||
| + | |||
| + | The optimisation is already included in the .htaccess file in the top | ||
| + | directory of your installation. | ||
| + | |||
| + | If you are using Apache version 2.2.9 and later, in the .htaccess file | ||
| + | change the ' | ||
| + | as ' | ||
| + | eliminate the possibility of duplicate ' | ||
| + | |||
| + | Lighttpd: | ||
| + | --------- | ||
| + | With Lightty the addition of Expire: tags by mod_expire is incompatible with | ||
| + | the addition of " | ||
| + | used below as it is assumed to give a better caching result. | ||
| + | |||
| + | Enable modules in server.modules: | ||
| + | " | ||
| + | " | ||
| + | |||
| + | Mod_compress is a server side cache of compressed files to improve its performance. | ||
| + | |||
| + | $HTTP[" | ||
| + | |||
| + | static-file.etags = " | ||
| + | # http:// | ||
| + | etag.use-mtime = " | ||
| + | |||
| + | # http:// | ||
| + | $HTTP[" | ||
| + | setenv.add-response-header | ||
| + | } | ||
| + | |||
| + | # http:// | ||
| + | # set compress.cache-dir to somewhere outside the docroot. | ||
| + | compress.cache-dir | ||
| + | |||
| + | compress.filetype = (" | ||
| + | } | ||
| + | |||
| + | |||
| + | KNOWN ISSUES | ||
| + | ============ | ||
| + | |||
| + | Installations with uw-imap server should set imap_disabled_caps = array(' | ||
| + | in main configuration file. ESEARCH implementation in this server is broken (#1489184). | ||
| + | </ | ||
| + | |||
| + | ===== Konfiguration ===== | ||
| + | ==== Apachekonfig aus dem RPM ==== | ||
| + | Da wir einen eigenen vHOST für den WEB-Mailer anbieten wollen und keine Unterverzeichniss-Konfiguration, | ||
| + | # vim / | ||
| + | |||
| + | <file apache / | ||
| + | ## Round Cube Webmail is a browser-based multilingual IMAP client | ||
| + | ## | ||
| + | # | ||
| + | #Alias / | ||
| + | # | ||
| + | ## Define who can access the Webmail | ||
| + | ## You can enlarge permissions once configured | ||
| + | # | ||
| + | #< | ||
| + | # < | ||
| + | # # Apache 2.4 | ||
| + | # Require local | ||
| + | # </ | ||
| + | # < | ||
| + | # # Apache 2.2 | ||
| + | # Order Deny,Allow | ||
| + | # Deny from all | ||
| + | # Allow from 127.0.0.1 | ||
| + | # Allow from ::1 | ||
| + | # </ | ||
| + | #</ | ||
| + | # | ||
| + | ## Define who can access the installer | ||
| + | ## keep this secured once configured | ||
| + | # | ||
| + | #< | ||
| + | # < | ||
| + | # # Apache 2.4 | ||
| + | # Require local | ||
| + | # </ | ||
| + | # < | ||
| + | # # Apache 2.2 | ||
| + | # Order Deny,Allow | ||
| + | # Deny from all | ||
| + | # Allow from 127.0.0.1 | ||
| + | # Allow from ::1 | ||
| + | # </ | ||
| + | #</ | ||
| + | # | ||
| + | ## Those directories should not be viewed by Web clients. | ||
| + | #< | ||
| + | # Order Allow,Deny | ||
| + | # Deny from all | ||
| + | #</ | ||
| + | #< | ||
| + | # Order Allow,Deny | ||
| + | # Deny from all | ||
| + | #</ | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Apache vHost ==== | ||
| + | Für unsere Webmailer richten wir uns nun einen geeigneten vHost ein. Im Konfigurationsverzeichnis unseres [[centos: | ||
| + | # vim / | ||
| + | <file apache / | ||
| + | # roundcubemail.sec-mail.guru | ||
| + | # | ||
| + | < | ||
| + | ServerAdmin webmaster@nausch.org | ||
| + | ServerName roundcubemail.sec-mail.guru | ||
| + | ServerPath / | ||
| + | |||
| + | < | ||
| + | Options -Indexes +FollowSymLinks | ||
| + | Require all granted | ||
| + | </ | ||
| + | |||
| + | RewriteEngine on | ||
| + | RewriteCond %{HTTPS} off | ||
| + | RewriteRule (.*) https:// | ||
| + | |||
| + | DirectoryIndex index.php | ||
| + | |||
| + | ErrorLog logs/ | ||
| + | CustomLog logs/ | ||
| + | </ | ||
| + | < | ||
| + | ServerAdmin webmaster@nausch.org | ||
| + | ServerName roundcubemail.sec-mail.guru | ||
| + | ServerPath / | ||
| + | DocumentRoot "/ | ||
| + | |||
| + | # Django | ||
| + | # Required, because there is a host with same ServerName and | ||
| + | # ServerAlias LISTENING ON PORT 80, - and if these lines are | ||
| + | # not present, and .htaccess-Files or LDAP-Access is enabled | ||
| + | # for one or more Directory the host on PORT 443 and PORT 80 | ||
| + | # will ASK for .htaccess ord LDAP-Access, | ||
| + | # ---------------------------------------------------------- | ||
| + | # -- DO NOT DELETE THE FOLLOWING LINES, STARTING WITH SSL -- | ||
| + | # -- WHEN USING .htaccess or LDAP-Access! | ||
| + | # ---------------------------------------------------------- | ||
| + | SSLEngine on | ||
| + | SSLProtocol -ALL +SSLv3 +TLSv1 | ||
| + | SSLCipherSuite EECDH+AES256: | ||
| + | SSLHonorCipherOrder on | ||
| + | SSLCertificateFile / | ||
| + | SSLCertificateKeyFile / | ||
| + | SSLCertificateChainFile / | ||
| + | |||
| + | # Define who can access the Webmail | ||
| + | # You can enlarge permissions once configured | ||
| + | < | ||
| + | < | ||
| + | # before configuration | ||
| + | Require local | ||
| + | # after configuration | ||
| + | # Require all granted | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | # Define who can access the installer | ||
| + | # keep this secured once configured | ||
| + | < | ||
| + | < | ||
| + | # while configuration | ||
| + | Require host nausch.org | ||
| + | # after configuration | ||
| + | # Require local | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | # Those directories should not be viewed by Web clients. | ||
| + | < | ||
| + | Require all denied | ||
| + | </ | ||
| + | < | ||
| + | Require all denied | ||
| + | </ | ||
| + | |||
| + | DirectoryIndex index.php | ||
| + | ErrorLog logs/ | ||
| + | CustomLog logs/ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | <WRAP round important> | ||
| + | |||
| + | Solange wir unseren vHost noch nicht in der Produktionsumgebung steht und fertig konfiguriert wurde, beschränken wir den Zugriff auf den vHost noch. In der obigen Apache-vHOST ist dies bereits berücksichtigt! | ||
| + | |||
| + | Erst nach erfolgter Konfiguration geben wir den vHOST für unsere Nutzer frei; hierzu tragen wir in der **Directive // | ||
| + | <code apache> | ||
| + | |||
| + | # Define who can access the Webmail | ||
| + | # You can enlarge permissions once configured | ||
| + | |||
| + | < | ||
| + | < | ||
| + | # before configuration | ||
| + | # Require local | ||
| + | # after configuration | ||
| + | Require all granted | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | |||
| + | # Define who can access the installer | ||
| + | # keep this secured once configured | ||
| + | < | ||
| + | < | ||
| + | # while configuration | ||
| + | # Require host 10.0.0 | ||
| + | # after configuration | ||
| + | Require local | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ... | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Bevor unseren Webserver starten, damit der neue vHost auch bedient werden kann, überprüfen wir die Konfiguration noch auf syntaktische Fehler. | ||
| + | # apachectl -t | ||
| + | |||
| + | Ist alles O.K. dann steht einem Reload des Apache httpd nichts mehr im Wege. | ||
| + | # systemctl reload httpd.service | ||
| + | |||
| + | Wollen wir den Reload kontrollieren, | ||
| + | # systemctl status httpd.service | ||
| + | |||
| + | < | ||
| + | | ||
| + | | ||
| + | Process: 20019 ExecStop=/ | ||
| + | Process: 20368 ExecReload=/ | ||
| + | Main PID: 20024 (httpd) | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | Sep 09 22:15:07 vml000097.dmz.nausch.org systemd[1]: Reloading The Apache HTTP Server. | ||
| + | Sep 09 22:15:07 vml000097.dmz.nausch.org systemd[1]: Reloaded The Apache HTTP Server. | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== mySQL Datenbank ==== | ||
| + | Ein Großteil der Benutzer-Konfigurationsdaten werden in einer **[[centos: | ||
| + | |||
| + | === Datenbank anlegen === | ||
| + | Diese [[centos: | ||
| + | |||
| + | Wir melden uns also als berechtigter Datenbankuser an der mySQL-Datenbank an. | ||
| + | # mysql -h mysql.dmz.nausch.org -u root -p | ||
| + | |||
| + | < | ||
| + | Welcome to the MySQL monitor. | ||
| + | Your MySQL connection id is 188332 | ||
| + | Server version: 5.1.73 Source distribution | ||
| + | |||
| + | Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. | ||
| + | |||
| + | Oracle is a registered trademark of Oracle Corporation and/or its | ||
| + | affiliates. Other names may be trademarks of their respective | ||
| + | owners. | ||
| + | |||
| + | Type ' | ||
| + | |||
| + | mysql> | ||
| + | </ | ||
| + | |||
| + | Dort legen wir als aller erst einmal eine Datenbank mit dem Namen **roundcubemail** an. | ||
| + | | ||
| + | |||
| + | Query OK, 1 row affected (0.04 sec) | ||
| + | |||
| + | === Datenuserbank anlegen === | ||
| + | Anschließend legen wir uns einen Datenbankuser an, denen wir entsprechende Rechte an der, gerade angelegten Datenbank **horde** einräumen. Als Namen nehme wir einfach **hode_admin_user**. | ||
| + | |||
| + | | ||
| + | |||
| + | Query OK, 0 rows affected (0.00 sec) | ||
| + | |||
| + | und | ||
| + | | ||
| + | |||
| + | Query OK, 0 rows affected (0.00 sec) | ||
| + | |||
| + | === Nutzerberechtigungen setzen === | ||
| + | Dem gerade angelegten Datenbankuser für **[[http:// | ||
| + | | ||
| + | |||
| + | Query OK, 0 rows affected (0.00 sec) | ||
| + | |||
| + | und | ||
| + | | ||
| + | |||
| + | Query OK, 0 rows affected (0.00 sec) | ||
| + | |||
| + | === Nutzerberechtigungen zuweisen === | ||
| + | Zum Ende unserer mySQL-Userkonfiguration weisen wir unserem Nutzer die Berechtigungen zu. | ||
| + | | ||
| + | |||
| + | Query OK, 0 rows affected (0.00 sec) | ||
| + | |||
| + | === Zugriff testen === | ||
| + | Als nächstes überprüfen wir, ob der zuvor angelegt User/Zugang auch funktioniert. | ||
| + | # mysql -D roundcubemail -h mysql.dmz.nausch.org -u roundcube_user -p | ||
| + | |||
| + | < | ||
| + | Welcome to the MariaDB monitor. | ||
| + | Your MySQL connection id is 188556 | ||
| + | Server version: 5.1.73 Source distribution | ||
| + | |||
| + | Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. | ||
| + | |||
| + | Type ' | ||
| + | |||
| + | MySQL [roundcubemail]> | ||
| + | < | ||
| + | < | ||
| + | +--------------------+ | ||
| + | | Database | ||
| + | +--------------------+ | ||
| + | | information_schema | | ||
| + | | roundcubemail | ||
| + | +--------------------+ | ||
| + | 2 rows in set (0.00 sec) | ||
| + | |||
| + | MySQL [roundcubemail]> | ||
| + | </ | ||
| + | Da der Test positiv ausgefallen ist, können wie uns wieder von unserem Datenbankserver abmelden. | ||
| + | MySQL [roundcubemail]> | ||
| + | |||
| + | Bye | ||
| + | |||
| + | ==== Datenbanktabellen anlegen ==== | ||
| + | |||
| + | Die von Roundcube benötigten Datebank-Tabellen, | ||
| + | # mysql -D roundcubemail -h mysql.dmz.nausch.org -u roundcube_user -p < / | ||
| + | |||
| + | Enter password: | ||
| + | |||
| + | ==== PHP Date.Timezone ==== | ||
| + | Damit der Installer später nicht beklagt, dass keine **date.timezone** gesetzt ist, kontrollieren wir noch kurz die Einstellungen in der Datei // | ||
| + | # vim / | ||
| + | |||
| + | <code php>... | ||
| + | |||
| + | [Date] | ||
| + | ; Defines the default timezone used by the date functions | ||
| + | ; http:// | ||
| + | ; Django : 2014-09-09 | ||
| + | ; default: ; | ||
| + | date.timezone = " | ||
| + | |||
| + | ; http:// | ||
| + | ; | ||
| + | |||
| + | ; http:// | ||
| + | ; | ||
| + | |||
| + | ; http:// | ||
| + | ; | ||
| + | |||
| + | ; http:// | ||
| + | ; | ||
| + | |||
| + | ... | ||
| + | </ | ||
| + | |||
| + | Haben wir eine Änderung vorgenommen, | ||
| + | # systemctl reload httpd.service | ||
| + | |||
| + | ==== Roundcube Konfiguration ==== | ||
| + | Die Konfiguration von Roundcube erfolgt über die zentrale Konfigurationsdatei **config.inc.php** im Verzeichnis // | ||
| + | |||
| + | Die einfachste Variante diese Konfigurationsdatei zu erstellen ist über die WEB-GUI. Alternativ kann man natürlich auch die Datei direkt per Hand installieren. Werfen wir zu erst einmal einen Blick auf die Konfiguration mit Hilfe der WEB-GUI; hierzu rufen wir die **/ | ||
| + | $ firefox https:// | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Auf der ersten Seite **//Check environment// | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Hat man alle Angaben für die Konfiguration unseres WEB-Mailers eingetragen, | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Hier haben wir zwei Möglichkeiten. Entweder wir kopieren den Text direkt aus dem Anzeigefenster und fügen den kopierten Text dann in die Datei // | ||
| + | |||
| + | # less / | ||
| + | <file php / | ||
| + | |||
| + | /* Local configuration for Roundcube Webmail */ | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // SQL DATABASE | ||
| + | // ---------------------------------- | ||
| + | // Database connection string (DSN) for read+write operations | ||
| + | // Format (compatible with PEAR MDB2): db_provider:// | ||
| + | // Currently supported db_providers: | ||
| + | // For examples see http:// | ||
| + | // NOTE: for SQLite use absolute path: ' | ||
| + | $config[' | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // IMAP | ||
| + | // ---------------------------------- | ||
| + | // 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/TLS connection, enter hostname with prefix ssl:// or tls:// | ||
| + | // Supported replacement variables: | ||
| + | // %n - hostname ($_SERVER[' | ||
| + | // %t - hostname without the first part | ||
| + | // %d - domain (http hostname $_SERVER[' | ||
| + | // %s - domain name after the ' | ||
| + | // For example %n = mail.domain.tld, | ||
| + | // WARNING: After hostname change update of mail_host column in users table is | ||
| + | // required to match old user data records with the new host. | ||
| + | $config[' | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // SMTP | ||
| + | // ---------------------------------- | ||
| + | // SMTP server host (for sending mails). | ||
| + | // To use SSL/TLS connection, enter hostname with prefix ssl:// or tls:// | ||
| + | // If left blank, the PHP mail() function is used | ||
| + | // Supported replacement variables: | ||
| + | // %h - user's IMAP hostname | ||
| + | // %n - hostname ($_SERVER[' | ||
| + | // %t - hostname without the first part | ||
| + | // %d - domain (http hostname $_SERVER[' | ||
| + | // %z - IMAP domain (IMAP hostname without the first part) | ||
| + | // For example %n = mail.domain.tld, | ||
| + | $config[' | ||
| + | |||
| + | // provide an URL where a user can get support for this Roundcube installation | ||
| + | // PLEASE DO NOT LINK TO THE ROUNDCUBE.NET WEBSITE HERE! | ||
| + | $config[' | ||
| + | |||
| + | // 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 | ||
| + | $config[' | ||
| + | |||
| + | // 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. | ||
| + | $config[' | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // PLUGINS | ||
| + | // ---------------------------------- | ||
| + | // List of active plugins (in plugins/ directory) | ||
| + | $config[' | ||
| + | |||
| + | // the default locale setting (leave empty for auto-detection) | ||
| + | // RFC1766 formatted language name like en_US, de_DE, de_CH, fr_FR, pt_BR | ||
| + | $config[' | ||
| + | |||
| + | // store spam messages in this mailbox | ||
| + | // NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) | ||
| + | $config[' | ||
| + | |||
| + | // display these folders separately in the mailbox list. | ||
| + | // these folders will also be displayed with localized names | ||
| + | // NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) | ||
| + | $config[' | ||
| + | |||
| + | // Set the spell checking engine. Possible values: | ||
| + | // - ' | ||
| + | // - ' | ||
| + | // - ' | ||
| + | // - ' | ||
| + | // Since Google shut down their public spell checking service, you need to | ||
| + | // connect to a Nox Spell Server when using ' | ||
| + | $config[' | ||
| + | |||
| + | // prefer displaying HTML messages | ||
| + | $config[' | ||
| + | |||
| + | // Encoding of long/ | ||
| + | // 0 - Full RFC 2231 compatible | ||
| + | // 1 - RFC 2047 for ' | ||
| + | // 2 - Full 2047 compatible | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | Anschließend passen wir noch die Dateirechte der konfigurationsdatei an. | ||
| + | # chmod 640 / | ||
| + | |||
| + | # chown root.apache / | ||
| + | |||
| + | Nun können wir auf der WEB-GUI die Schaltfläche **[ CONTINUE ]** anklicken um zum dritten Schritt //**Test config**// zu gelangen. | ||
| + | |||
| + | |||
| + | {{ : | ||
| + | |||
| + | Sind alle Tests bestanden, können wir den **installer** deaktivieren und die Anwendung für den abschließenden Test " | ||
| + | |||
| + | <WRAP round tip> | ||
| + | Wir ändern nun die **Directive // | ||
| + | < | ||
| + | |||
| + | # Define who can access the Webmail | ||
| + | # You can enlarge permissions once configured | ||
| + | |||
| + | < | ||
| + | < | ||
| + | # before configuration | ||
| + | # Require local | ||
| + | # after configuration | ||
| + | Require all granted | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | |||
| + | # Define who can access the installer | ||
| + | # keep this secured once configured | ||
| + | < | ||
| + | < | ||
| + | # while configuration | ||
| + | # Require host 10.0.0 | ||
| + | # after configuration | ||
| + | Require local | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ... | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Ob die Sperrung des **installer** passt, kontrollieren wir einfach durch einen erneuten Aufruf der betreffenden URL. | ||
| + | $ firefox https:// | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Test eins ist schon mal bestanden, wir rufen also als nächstes die URL unseres Webmailers auf. | ||
| + | $ firefox https:// | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Wir erreichen die Anmeldemaske und nun steht nur noch der Test an, ob wir uns auch anmelden können. | ||
| + | |||
| + | |||
| + | {{ : | ||
| + | |||
| + | ===== Plugins ===== | ||
| + | Mit Hilfe von Plugins kann Roundcube um verschiedene Funktionen und Fähigkeiten erweitert werden. Bei der Installation des RPM wurden bereits alle Plugins in das Verzeichnis // | ||
| + | # / | ||
| + | |||
| + | < | ||
| + | ├── acl | ||
| + | ├── additional_message_headers | ||
| + | ├── archive | ||
| + | ├── attachment_reminder | ||
| + | ├── autologon | ||
| + | ├── database_attachments | ||
| + | ├── debug_logger | ||
| + | ├── emoticons | ||
| + | ├── enigma | ||
| + | ├── example_addressbook | ||
| + | ├── filesystem_attachments | ||
| + | ├── help | ||
| + | ├── hide_blockquote | ||
| + | ├── http_authentication | ||
| + | ├── identity_select | ||
| + | ├── jqueryui | ||
| + | ├── managesieve | ||
| + | ├── markasjunk | ||
| + | ├── newmail_notifier | ||
| + | ├── new_user_dialog | ||
| + | ├── new_user_identity | ||
| + | ├── password | ||
| + | ├── redundant_attachments | ||
| + | ├── show_additional_headers | ||
| + | ├── squirrelmail_usercopy | ||
| + | ├── subscriptions_option | ||
| + | ├── userinfo | ||
| + | ├── vcard_attachments | ||
| + | ├── virtuser_file | ||
| + | ├── virtuser_query | ||
| + | └── zipdownload | ||
| + | </ | ||
| + | |||
| + | In unserem konfigurationsbeispiel beschränken wir uns dabei auf die drei wichtigsten Plugins, nämlich **Password** und **Managesieve** und **ACL**. Hierzu tragen wir die drei Plugins bei der Konfigurations-Array **plugins** ein. | ||
| + | |||
| + | # vim / | ||
| + | <code php>... | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // PLUGINS | ||
| + | // ---------------------------------- | ||
| + | // List of active plugins (in plugins/ directory) | ||
| + | $config[' | ||
| + | |||
| + | ... | ||
| + | </ | ||
| + | ==== Password ==== | ||
| + | Damit unsere User später Ihr **[[centos: | ||
| + | Als erstes kopieren wir die Vorgabedatei, | ||
| + | # cp -a / | ||
| + | |||
| + | Anschließend bearbeiten wir diese Datei und tragen dort die Datenbankanbindung zur MySQL sowie das benötigte SQL-Statement ein. In dem nachfolgenden Beispiel sind die nötigen Änderungen mit // | ||
| + | # vim / | ||
| + | <file php / | ||
| + | |||
| + | // Password Plugin options | ||
| + | // ----------------------- | ||
| + | // A driver to use for password change. Default: " | ||
| + | // See README file for list of supported driver names. | ||
| + | $config[' | ||
| + | |||
| + | // Determine whether current password is required to change password. | ||
| + | // Default: false. | ||
| + | $config[' | ||
| + | |||
| + | // Require the new password to be a certain length. | ||
| + | // set to blank to allow passwords of any length | ||
| + | // Django : 2014-09-10 | ||
| + | // default: $config[' | ||
| + | $config[' | ||
| + | |||
| + | // Require the new password to contain a letter and punctuation character | ||
| + | // Change to false to remove this check. | ||
| + | // Django : 2014-09-10 | ||
| + | // default: $config[' | ||
| + | $config[' | ||
| + | |||
| + | // Enables logging of password changes into logs/ | ||
| + | $config[' | ||
| + | |||
| + | // Comma-separated list of login exceptions for which password change | ||
| + | // will be not available (no Password tab in Settings) | ||
| + | $config[' | ||
| + | |||
| + | // Array of hosts that support password changing. Default is NULL. | ||
| + | // Listed hosts will feature a Password option in Settings; others will not. | ||
| + | // Example: | ||
| + | // | ||
| + | $config[' | ||
| + | |||
| + | // Enables saving the new password even if it matches the old password. Useful | ||
| + | // for upgrading the stored passwords after the encryption scheme has changed. | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // SQL Driver options | ||
| + | // ------------------ | ||
| + | // PEAR database DSN for performing the query. By default | ||
| + | // Roundcube DB settings are used. | ||
| + | // Django : 2014-09-10 | ||
| + | // default: $config[' | ||
| + | $config[' | ||
| + | |||
| + | // The SQL query used to change the password. | ||
| + | // The query can contain the following macros that will be expanded as follows: | ||
| + | // %p is replaced with the plaintext new password | ||
| + | // %c is replaced with the crypt version of the new password, MD5 if available | ||
| + | // | ||
| + | // | ||
| + | // %D is replaced with the dovecotpw-crypted version of the new password | ||
| + | // %o is replaced with the password before the change | ||
| + | // %n is replaced with the hashed version of the new password | ||
| + | // %q is replaced with the hashed password before the change | ||
| + | // %h is replaced with the imap host (from the session info) | ||
| + | // %u is replaced with the username (from the session info) | ||
| + | // %l is replaced with the local part of the username | ||
| + | // (in case the username is an email address) | ||
| + | // %d is replaced with the domain part of the username | ||
| + | // (in case the username is an email address) | ||
| + | // Escaping of macros is handled by this module. | ||
| + | // Default: " | ||
| + | // Django : 2014-09-10 | ||
| + | // default: $config[' | ||
| + | $config[' | ||
| + | |||
| + | // By default the crypt() function which is used to create the ' | ||
| + | // parameter uses the md5 algorithm. To use different algorithms | ||
| + | // you can choose between: des, md5, blowfish, sha256, sha512. | ||
| + | // Before using other hash functions than des or md5 please make sure | ||
| + | // your operating system supports the other hash functions. | ||
| + | $config[' | ||
| + | |||
| + | // By default domains in variables are using unicode. | ||
| + | // Enable this option to use punycoded names | ||
| + | $config[' | ||
| + | |||
| + | // Path for dovecotpw (if not in $PATH) | ||
| + | // $config[' | ||
| + | |||
| + | // Dovecot method (dovecotpw -s ' | ||
| + | // Django : 2014-09-10 | ||
| + | // default: $config[' | ||
| + | $config[' | ||
| + | |||
| + | // Enables use of password with crypt method prefix in %D, e.g. {MD5}$1$LUiMYWqx$fEkg/ | ||
| + | $config[' | ||
| + | |||
| + | // Using a password hash for %n and %q variables. | ||
| + | // Determine which hashing algorithm should be used to generate | ||
| + | // the hashed new and current password for using them within the | ||
| + | // SQL query. Requires PHP's ' | ||
| + | $config[' | ||
| + | |||
| + | // You can also decide whether the hash should be provided | ||
| + | // as hex string or in base64 encoded format. | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // Poppassd Driver options | ||
| + | // ----------------------- | ||
| + | // The host which changes the password | ||
| + | $config[' | ||
| + | |||
| + | // TCP port used for poppassd connections | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // SASL Driver options | ||
| + | // ------------------- | ||
| + | // Additional arguments for the saslpasswd2 call | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // LDAP and LDAP_SIMPLE Driver options | ||
| + | // ----------------------------------- | ||
| + | // LDAP server name to connect to. | ||
| + | // You can provide one or several hosts in an array in which case the hosts are tried from left to right. | ||
| + | // Exemple: array(' | ||
| + | // Default: ' | ||
| + | $config[' | ||
| + | |||
| + | // LDAP server port to connect to | ||
| + | // Default: ' | ||
| + | $config[' | ||
| + | |||
| + | // TLS is started after connecting | ||
| + | // Using TLS for password modification is recommanded. | ||
| + | // Default: false | ||
| + | $config[' | ||
| + | |||
| + | // LDAP version | ||
| + | // Default: ' | ||
| + | $config[' | ||
| + | |||
| + | // LDAP base name (root directory) | ||
| + | // Exemple: ' | ||
| + | $config[' | ||
| + | |||
| + | // LDAP connection method | ||
| + | // There is two connection method for changing a user's LDAP password. | ||
| + | // ' | ||
| + | // ' | ||
| + | // Default: ' | ||
| + | $config[' | ||
| + | |||
| + | // LDAP Admin DN | ||
| + | // Used only in admin connection mode | ||
| + | // Default: null | ||
| + | $config[' | ||
| + | |||
| + | // LDAP Admin Password | ||
| + | // Used only in admin connection mode | ||
| + | // Default: null | ||
| + | $config[' | ||
| + | |||
| + | // LDAP user DN mask | ||
| + | // The user's DN is mandatory and as we only have his login, | ||
| + | // we need to re-create his DN using a mask | ||
| + | // ' | ||
| + | // ' | ||
| + | // ' | ||
| + | // ' | ||
| + | // Exemple: ' | ||
| + | $config[' | ||
| + | |||
| + | // LDAP search DN | ||
| + | // The DN roundcube should bind with to find out user's DN | ||
| + | // based on his login. Note that you should comment out the default | ||
| + | // password_ldap_userDN_mask setting for this to take effect. | ||
| + | // Use this if you cannot specify a general template for user DN with | ||
| + | // password_ldap_userDN_mask. You need to perform a search based on | ||
| + | // users login to find his DN instead. A common reason might be that | ||
| + | // your users are placed under different ou's like engineering or | ||
| + | // sales which cannot be derived from their login only. | ||
| + | $config[' | ||
| + | |||
| + | // LDAP search password | ||
| + | // If password_ldap_searchDN is set, the password to use for | ||
| + | // binding to search for user's DN. Note that you should comment out the default | ||
| + | // password_ldap_userDN_mask setting for this to take effect. | ||
| + | // Warning: Be sure to set approperiate permissions on this file so this password | ||
| + | // is only accesible to roundcube and don't forget to restrict roundcube' | ||
| + | // your directory as much as possible using ACLs. Should this password be compromised | ||
| + | // you want to minimize the damage. | ||
| + | $config[' | ||
| + | |||
| + | // LDAP search base | ||
| + | // If password_ldap_searchDN is set, the base to search in using the filter below. | ||
| + | // Note that you should comment out the default password_ldap_userDN_mask setting | ||
| + | // for this to take effect. | ||
| + | $config[' | ||
| + | |||
| + | // LDAP search filter | ||
| + | // If password_ldap_searchDN is set, the filter to use when | ||
| + | // searching for user's DN. Note that you should comment out the default | ||
| + | // password_ldap_userDN_mask setting for this to take effect. | ||
| + | // ' | ||
| + | // ' | ||
| + | // ' | ||
| + | // ' | ||
| + | // Example: ' | ||
| + | // Example: ' | ||
| + | $config[' | ||
| + | |||
| + | // LDAP password hash type | ||
| + | // Standard LDAP encryption type which must be one of: crypt, | ||
| + | // ext_des, md5crypt, blowfish, md5, sha, smd5, ssha, ad or clear. | ||
| + | // Please note that most encodage types require external libraries | ||
| + | // to be included in your PHP installation, | ||
| + | // Default: ' | ||
| + | $config[' | ||
| + | |||
| + | // LDAP password attribute | ||
| + | // Name of the ldap's attribute used for storing user password | ||
| + | // Default: ' | ||
| + | $config[' | ||
| + | |||
| + | // LDAP password force replace | ||
| + | // Force LDAP replace in cases where ACL allows only replace not read | ||
| + | // See http:// | ||
| + | // Default: true | ||
| + | $config[' | ||
| + | |||
| + | // LDAP Password Last Change Date | ||
| + | // Some places use an attribute to store the date of the last password change | ||
| + | // The date is meassured in "days since epoch" (an integer value) | ||
| + | // Whenever the password is changed, the attribute will be updated if set (e.g. shadowLastChange) | ||
| + | $config[' | ||
| + | |||
| + | // LDAP Samba password attribute, e.g. sambaNTPassword | ||
| + | // Name of the LDAP's Samba attribute used for storing user password | ||
| + | $config[' | ||
| + | |||
| + | // LDAP Samba Password Last Change Date attribute, e.g. sambaPwdLastSet | ||
| + | // Some places use an attribute to store the date of the last password change | ||
| + | // The date is meassured in " | ||
| + | // Whenever the password is changed, the attribute will be updated if set | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // DirectAdmin Driver options | ||
| + | // -------------------------- | ||
| + | // The host which changes the password | ||
| + | // Use ' | ||
| + | // The host can contain the following macros that will be expanded as follows: | ||
| + | // %h is replaced with the imap host (from the session info) | ||
| + | // %d is replaced with the domain part of the username (if the username is an email) | ||
| + | $config[' | ||
| + | |||
| + | // TCP port used for DirectAdmin connections | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // vpopmaild Driver options | ||
| + | // ----------------------- | ||
| + | // The host which changes the password | ||
| + | $config[' | ||
| + | |||
| + | // TCP port used for vpopmaild connections | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // cPanel Driver options | ||
| + | // -------------------------- | ||
| + | // The cPanel Host name | ||
| + | $config[' | ||
| + | |||
| + | // The cPanel admin username | ||
| + | $config[' | ||
| + | |||
| + | // The cPanel admin password | ||
| + | $config[' | ||
| + | |||
| + | // The cPanel port to use | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // XIMSS (Communigate server) Driver options | ||
| + | // ----------------------------------------- | ||
| + | // Host name of the Communigate server | ||
| + | $config[' | ||
| + | |||
| + | // XIMSS port on Communigate server | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // chpasswd Driver options | ||
| + | // --------------------- | ||
| + | // Command to use | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // XMail Driver options | ||
| + | // --------------------- | ||
| + | $config[' | ||
| + | $config[' | ||
| + | $config[' | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // hMail Driver options | ||
| + | // ----------------------- | ||
| + | // Remote hMailServer configuration | ||
| + | // true: HMailserver is on a remote box (php.ini: com.allow_dcom = true) | ||
| + | // false: Hmailserver is on same box as PHP | ||
| + | $config[' | ||
| + | // Windows credentials | ||
| + | $config[' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ); | ||
| + | |||
| + | |||
| + | // Virtualmin Driver options | ||
| + | // ------------------------- | ||
| + | // Username format: | ||
| + | // 0: username@domain | ||
| + | // 1: username%domain | ||
| + | // 2: username.domain | ||
| + | // 3: domain.username | ||
| + | // 4: username-domain | ||
| + | // 5: domain-username | ||
| + | // 6: username_domain | ||
| + | // 7: domain_username | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // pw_usermod Driver options | ||
| + | // -------------------------- | ||
| + | // Use comma delimited exlist to disable password change for users | ||
| + | // Add the following line to visudo to tighten security: | ||
| + | // www ALL=NOPASSWORD: | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // DBMail Driver options | ||
| + | // ------------------- | ||
| + | // Additional arguments for the dbmail-users call | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // Expect Driver options | ||
| + | // --------------------- | ||
| + | // Location of expect binary | ||
| + | $config[' | ||
| + | |||
| + | // Location of expect script (see helpers/ | ||
| + | $config[' | ||
| + | |||
| + | // Arguments for the expect script. See the helpers/ | ||
| + | // This is probably a good starting default: | ||
| + | // | ||
| + | $config[' | ||
| + | |||
| + | |||
| + | // smb Driver options | ||
| + | // --------------------- | ||
| + | // Samba host (default: localhost) | ||
| + | // Supported replacement variables: | ||
| + | // %n - hostname ($_SERVER[' | ||
| + | // %t - hostname without the first part | ||
| + | // %d - domain (http hostname $_SERVER[' | ||
| + | $config[' | ||
| + | // Location of smbpasswd binary | ||
| + | $config[' | ||
| + | </ | ||
| + | |||
| + | Über den Menüpunkt **Einstellungen / Passwort** können wir nun vom Webmailer aus das Passwort ändern. | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | ==== Managesieve ==== | ||
| + | Damit unsere Mailkunden ihre **[[centos: | ||
| + | |||
| + | Auch hier kopieren wir als erstes die Vorgabedatei aus dem RPM-Paket. | ||
| + | # cp / | ||
| + | |||
| + | Anschließend bearbeiten wir diese Datei und tragen dort die benötigten sieve-Konfigurationsdetail ein. Auch hier sind in dem nachfolgenden Beispiel die Änderungen mit // | ||
| + | # vim / | ||
| + | <file php / | ||
| + | |||
| + | // managesieve server port. When empty the port will be determined automatically | ||
| + | // using getservbyname() function, with 4190 as a fallback. | ||
| + | // Django : 2014-09-10 | ||
| + | // default: $config[' | ||
| + | $config[' | ||
| + | |||
| + | // managesieve server address, default is localhost. | ||
| + | // Replacement variables supported in host name: | ||
| + | // %h - user's IMAP hostname | ||
| + | // %n - http hostname ($_SERVER[' | ||
| + | // %d - domain (http hostname without the first part) | ||
| + | // For example %n = mail.domain.tld, | ||
| + | // Django : 2014-09-10 | ||
| + | // default: $config[' | ||
| + | $config[' | ||
| + | |||
| + | // authentication method. Can be CRAM-MD5, DIGEST-MD5, PLAIN, LOGIN, EXTERNAL | ||
| + | // or none. Optional, defaults to best method supported by server. | ||
| + | $config[' | ||
| + | |||
| + | // Optional managesieve authentication identifier to be used as authorization proxy. | ||
| + | // Authenticate as a different user but act on behalf of the logged in user. | ||
| + | // Works with PLAIN and DIGEST-MD5 auth. | ||
| + | $config[' | ||
| + | |||
| + | // Optional managesieve authentication password to be used for imap_auth_cid | ||
| + | $config[' | ||
| + | |||
| + | // use or not TLS for managesieve server connection | ||
| + | // Note: tls:// prefix in managesieve_host is also supported | ||
| + | // Django : 2014-09-10 | ||
| + | // default: $config[' | ||
| + | $config[' | ||
| + | |||
| + | // default contents of filters script (eg. default spam filter) | ||
| + | $config[' | ||
| + | |||
| + | // The name of the script which will be used when there' | ||
| + | $config[' | ||
| + | |||
| + | // Sieve RFC says that we should use UTF-8 endcoding for mailbox names, | ||
| + | // but some implementations does not covert UTF-8 to modified UTF-7. | ||
| + | // Defaults to UTF7-IMAP | ||
| + | $config[' | ||
| + | |||
| + | // I need this because my dovecot (with listescape plugin) uses | ||
| + | // ':' | ||
| + | $config[' | ||
| + | |||
| + | // disabled sieve extensions (body, copy, date, editheader, encoded-character, | ||
| + | // envelope, environment, | ||
| + | // mailbox, mboxmetadata, | ||
| + | // spamtest, spamtestplus, | ||
| + | // Note: not all extensions are implemented | ||
| + | $config[' | ||
| + | |||
| + | // Enables debugging of conversation with sieve server. Logs it into < | ||
| + | $config[' | ||
| + | |||
| + | // Enables features described in http:// | ||
| + | $config[' | ||
| + | |||
| + | // Script name extension used for scripts including. Dovecot uses ' | ||
| + | // Cyrus uses ' | ||
| + | $config[' | ||
| + | |||
| + | // List of reserved script names (without extension). | ||
| + | // Scripts listed here will be not presented to the user. | ||
| + | $config[' | ||
| + | |||
| + | // List of domains limiting destination emails in redirect action | ||
| + | // If not empty, user will need to select domain from a list | ||
| + | $config[' | ||
| + | |||
| + | // Enables separate management interface for vacation responses (out-of-office) | ||
| + | // 0 - no separate section (default), | ||
| + | // 1 - add Vacation section, | ||
| + | // 2 - add Vacation section, but hide Filters section | ||
| + | $config[' | ||
| + | |||
| + | // Supported methods of notify extension. Default: ' | ||
| + | $config[' | ||
| + | </ | ||
| + | |||
| + | Über den Menüpunkt **Einstellungen / Filter** können wir nun vom Webmailer aus das Passwort ändern. | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | ==== ACL ==== | ||
| + | Für die Verwaltung von **[[centos: | ||
| + | Als erstes kopieren wir die Konfigurationsdatei aus dem RPM. | ||
| + | # cp / | ||
| + | |||
| + | Anschließend bearbeiten wir nun diese neue Datei. | ||
| + | # vim / | ||
| + | <file php / | ||
| + | |||
| + | // Default look of access rights table | ||
| + | // In advanced mode all access rights are displayed separately | ||
| + | // In simple mode access rights are grouped into four groups: read, write, delete, full | ||
| + | $config[' | ||
| + | |||
| + | // LDAP addressbook that would be searched for user names autocomplete. | ||
| + | // That should be an array refering to the $config[' | ||
| + | // or complete addressbook configuration array. | ||
| + | $config[' | ||
| + | |||
| + | // The LDAP attribute which will be used as ACL user identifier | ||
| + | $config[' | ||
| + | |||
| + | // The LDAP search filter will be &' | ||
| + | $config[' | ||
| + | |||
| + | // Include the following ' | ||
| + | // Defaults to array(' | ||
| + | // Example: array(' | ||
| + | // Set to an empty array to exclude all special aci subjects. | ||
| + | $config[' | ||
| + | |||
| + | ?> | ||
| + | </ | ||
| + | |||
| + | Über den Menüpunkt **Einstellungen / Ordner / Ordnereigenschaften / Freigabe** können wir nun vom Webmailer aus die Zugriffsrechte für andere auf einzelne Ordner verwalten. | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | ====== Links ====== | ||
| + | * **[[centos: | ||
| + | * **[[wiki: | ||
| + | * **[[http:// | ||
| + | |||