Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| centos:mail_c6:roundcube_1 [10.06.2013 16:56. ] – [Konfiguration aktivieren] django | centos:mail_c6:roundcube_1 [31.05.2017 16:31. ] (aktuell) – Webmail mit Roundcube - Diskussionsmöglichkeit wegen SPAM entfernt :/ django | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Webmail mit Roundcube ====== | ||
| + | {{: | ||
| + | |||
| + | ===== Installation ===== | ||
| + | ==== Voraussetzungen und Abhängigkeiten ==== | ||
| + | Für die Installation des Webmailers benötien wir noch ein paar **PHP**-Pakete, | ||
| + | Im Detail sind das folgende Pakete: | ||
| + | * **php-pspell** | ||
| + | * **php-mcrypt** | ||
| + | * **GraphicsMagick** | ||
| + | |||
| + | # yum install php-pspell php-mcrypt GraphicsMagick -y | ||
| + | |||
| + | Für die deutsche Rechtschreibkorrektur gibt es unter CentOS 6 kein RPM. Wir können jedoch das passende Paket aus dem Fedora-Zweig verwenden. Das Paket [[http:// | ||
| + | # cd / | ||
| + | |||
| + | # wget ttp:// | ||
| + | |||
| + | Anschließend installieren wir dieses RPM. | ||
| + | # yum install --nogpgcheck localinstall / | ||
| + | |||
| + | 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 | ||
| + | |||
| + | ===== Konfiguration ===== | ||
| + | ==== Apache vHost ==== | ||
| + | === vHost Definition === | ||
| + | Für unsere Webmailer richten wir uns nun einen geeigneten vHost ein. Im Konfigurationsverzeichnis unseres [[centos: | ||
| + | # vim / | ||
| + | |||
| + | <file apache / | ||
| + | # roundcube webmailer | ||
| + | # | ||
| + | < | ||
| + | ServerAdmin webmaster@nausch.org | ||
| + | ServerName webmail.nausch.org | ||
| + | ServerPath / | ||
| + | |||
| + | < | ||
| + | Options -Indexes FollowSymLinks | ||
| + | Order allow,deny | ||
| + | Allow from all | ||
| + | </ | ||
| + | |||
| + | RewriteEngine on | ||
| + | RewriteCond %{HTTPS} off | ||
| + | RewriteRule (.*) https:// | ||
| + | |||
| + | DirectoryIndex index.php | ||
| + | ErrorLog logs/ | ||
| + | CustomLog logs/ | ||
| + | </ | ||
| + | < | ||
| + | ServerAdmin webmaster@nausch.org | ||
| + | ServerName webmail.nausch.org | ||
| + | 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 ALL: | ||
| + | SSLCertificateFile / | ||
| + | SSLCertificateKeyFile / | ||
| + | SSLCertificateChainFile / | ||
| + | |||
| + | < | ||
| + | Options FollowSymLinks | ||
| + | Order allow,deny | ||
| + | Allow from all | ||
| + | </ | ||
| + | |||
| + | 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. Hierzu tragen wir in der **Directive // | ||
| + | <code apache> | ||
| + | # Access-stuff (Zugriff nur vom Admin-Host aus!) | ||
| + | Order deny,allow | ||
| + | Deny from all | ||
| + | Allow from < | ||
| + | ... | ||
| + | </ | ||
| + | |||
| + | Nach erfolgter Konfiguration, | ||
| + | <code apache> | ||
| + | # Access-stuff (Zugriff von überall erlauben.) | ||
| + | Order allom,deny | ||
| + | Allow from all | ||
| + | ... | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | === Konfiguration aktivieren === | ||
| + | Bevor unseren Webserver starten, damit der neue vHost auch bedient werden kann, überprüfen wir die Konfiguration noch auf syntaktische Fehler. | ||
| + | # service httpd configtest | ||
| + | |||
| + | | ||
| + | |||
| + | Abschließend starten wir den Webserver einmal durch. | ||
| + | # service httpd restart | ||
| + | |||
| + | | ||
| + | | ||
| + | |||
| + | |||
| + | |||
| + | ==== 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 localhost -u root -p | ||
| + | < | ||
| + | Welcome to the MySQL monitor. | ||
| + | Your MySQL connection id is 1942 | ||
| + | Server version: 5.1.67 Source distribution | ||
| + | |||
| + | Copyright (c) 2000, 2012, 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.03 sec) | ||
| + | |||
| + | === Datenbankuser anlegen === | ||
| + | ==== 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 angelebtem 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 | ||
| + | < | ||
| + | Reading table information for completion of table and column names | ||
| + | You can turn off this feature to get a quicker startup with -A | ||
| + | |||
| + | Welcome to the MySQL monitor. | ||
| + | Your MySQL connection id is 28823 | ||
| + | Server version: 5.1.69 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> show tables; | ||
| + | +-------------------------+ | ||
| + | | Tables_in_roundcubemail | | ||
| + | +-------------------------+ | ||
| + | | cache | | ||
| + | | cache_index | ||
| + | | cache_messages | ||
| + | | cache_thread | ||
| + | | contactgroupmembers | ||
| + | | contactgroups | ||
| + | | contacts | ||
| + | | dictionary | ||
| + | | identities | ||
| + | | searches | ||
| + | | session | ||
| + | | users | | ||
| + | +-------------------------+ | ||
| + | 12 rows in set (0.00 sec) | ||
| + | |||
| + | mysql> | ||
| + | </ | ||
| + | Da der Test positiv ausgefallen ist, können wie uns wieder von unserem Datenbankserver abmelden. | ||
| + | mysql> quit | ||
| + | |||
| + | Bye | ||
| + | |||
| + | ==== Datenbanktabellen anlegen ==== | ||
| + | |||
| + | Die von Roundcube benötigten Datebanktabellen, | ||
| + | # mysql -D roundcubemail -h mysql.dmz.nausch.org -u roundcube_user -p < / | ||
| + | |||
| + | ==== Datenbank-Anbindung ==== | ||
| + | Damit roundcube später auf unsere Datenbank auch zugreifen kann, definieren wir nun die Datenbankanbindung von roundcube an unseren MySQL-Datenbank-Server. | ||
| + | |||
| + | Im Verzeichnis // | ||
| + | # vim / | ||
| + | |||
| + | <file php / | ||
| + | |||
| + | /* | ||
| + | | ||
| + | | Configuration file for database access | ||
| + | | ||
| + | | This file is part of the Roundcube Webmail client | ||
| + | | Copyright (C) 2005-2009, The Roundcube Dev Team | | ||
| + | | Licensed under the GNU GPL | | ||
| + | | ||
| + | | ||
| + | |||
| + | */ | ||
| + | |||
| + | $rcmail_config = array(); | ||
| + | |||
| + | // PEAR database DSN for read/write operations | ||
| + | // format is db_provider:// | ||
| + | // For examples see http:// | ||
| + | |||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | // postgres example: ' | ||
| + | // Warning: for SQLite use absolute path in DSN: | ||
| + | |||
| + | // PEAR database DSN for read only operations (if empty write database will be used) | ||
| + | // useful for database replication | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // maximum length of a query in bytes | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // use persistent db-connections | ||
| + | // beware this will not " | ||
| + | // see: http:// | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // you can define specific table names used to store webmail data | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // you can define specific sequence names used in PostgreSQL | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // end db config file | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Roundcube Konfiguration ==== | ||
| + | Die Konfiguration von Roundcube erfolgt über die zentrale Konfigurationsdatei **main.inc.php** im Verzeichnis // | ||
| + | |||
| + | Die Parameter sind gut dokumentiert, | ||
| + | # vim / | ||
| + | <file php / | ||
| + | |||
| + | /* | ||
| + | | ||
| + | | Main configuration file | | ||
| + | | ||
| + | | This file is part of the Roundcube Webmail client | ||
| + | | Copyright (C) 2005-2011, The Roundcube Dev Team | | ||
| + | | Licensed under the GNU GPL | | ||
| + | | ||
| + | | ||
| + | |||
| + | */ | ||
| + | |||
| + | $rcmail_config = array(); | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // LOGGING/ | ||
| + | // ---------------------------------- | ||
| + | |||
| + | // system error reporting: 1 = log; 2 = report (not implemented yet), 4 = show, 8 = trace | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // log driver: | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // date format for log entries | ||
| + | // (read http:// | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Syslog ident string to use, if using the ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Syslog facility to use, if using the ' | ||
| + | // For possible values see installer or http:// | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Log sent messages to < | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Log successful logins to < | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Log session authentication errors to < | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Log SQL queries to < | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Log IMAP conversation to < | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Log LDAP conversation to < | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Log SMTP conversation to < | ||
| + | $rcmail_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 - http hostname ($_SERVER[' | ||
| + | // %d - domain (http hostname without the first part) | ||
| + | // %s - domain name after the ' | ||
| + | // For example %n = mail.domain.tld, | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // TCP port used for IMAP connections | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // IMAP AUTH type (DIGEST-MD5, | ||
| + | // best server supported one) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // If you know your imap's folder delimiter, you can specify it here. | ||
| + | // Otherwise it will be determined automatically | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // If IMAP server doesn' | ||
| + | // using shared folders or personal root folder is non-empty, you'll need to | ||
| + | // set these options. All can be strings or arrays of strings. | ||
| + | // Folders need to be ended with directory separator, e.g. " | ||
| + | // (special directory " | ||
| + | // These can be used also to overwrite server' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // By default IMAP capabilities are readed after connection to IMAP server | ||
| + | // In some cases, e.g. when using IMAP proxy, there' | ||
| + | // after login. Set to True if you've got this case. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // By default list of subscribed folders is determined using LIST-EXTENDED | ||
| + | // extension if available. Some servers (dovecot 1.x) returns wrong results | ||
| + | // for shared namespaces in this case. http:// | ||
| + | // Enable this option to force LSUB command usage instead. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // IMAP connection timeout, in seconds. Default: 0 (no limit) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Optional IMAP authentication identifier to be used as authorization proxy | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Optional IMAP authentication password to be used for imap_auth_cid | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Type of IMAP indexes cache. Supported values: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Enables messages cache. Only ' | ||
| + | $rcmail_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 - http hostname ($_SERVER[' | ||
| + | // %d - domain (http hostname without the first part) | ||
| + | // %z - IMAP domain (IMAP hostname without the first part) | ||
| + | // For example %n = mail.domain.tld, | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // SMTP port (default is 25; 465 for SSL) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // SMTP username (if required) if you use %u as the username Roundcube | ||
| + | // will use the current username for login | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // SMTP password (if required) if you use %p as the password Roundcube | ||
| + | // will use the current user's password for login | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // SMTP AUTH type (DIGEST-MD5, | ||
| + | // best server supported one) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Optional SMTP authentication identifier to be used as authorization proxy | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Optional SMTP authentication password to be used for smtp_auth_cid | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // SMTP HELO host | ||
| + | // Hostname to give to the remote server for SMTP ' | ||
| + | // Leave this blank and you will get the server variable ' | ||
| + | // localhost if that isn't defined. | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // SMTP connection timeout, in seconds. Default: 0 (no limit) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // SYSTEM | ||
| + | // ---------------------------------- | ||
| + | |||
| + | // 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[' | ||
| + | |||
| + | // use this folder to store log files (must be writeable for apache user) | ||
| + | // This is used by the ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // use this folder to store temp files (must be writeable for apache user) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // lifetime of message cache | ||
| + | // possible units: s, m, h, d, w | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // enforce connections over https | ||
| + | // with this option enabled, all non-secure connections will be redirected. | ||
| + | // set the port for the ssl connection as value of this option if it differs from the default 443 | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // tell PHP that it should work as under secure connection | ||
| + | // even if it doesn' | ||
| + | // e.g. when you're running Roundcube behind a https proxy | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Allow browser-autocompletion on login form. | ||
| + | // 0 - disabled, 1 - username and host only, 2 - username, host, password | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // If users authentication is not case sensitive this must be enabled. | ||
| + | // You can also use it to force conversion of logins to lower case. | ||
| + | // After enabling it all user records need to be updated, e.g. with query: | ||
| + | // UPDATE users SET username = LOWER(username); | ||
| + | $rcmail_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 | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // replace Roundcube logo with this image | ||
| + | // specify an URL relative to the document root of this Roundcube installation | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Includes should be interpreted as PHP files | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Session lifetime in minutes | ||
| + | // must be greater than ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // session domain: .example.org | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // session name. Default: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Backend to use for session storage. Can either be ' | ||
| + | // If set to memcache, a list of servers need to be specified in ' | ||
| + | // Make sure the Memcache extension (http:// | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Use these hosts for accessing memcached | ||
| + | // Define any number of hosts in the form hostname: | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // check client IP in session athorization | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // check referer of incoming requests | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // X-Frame-Options HTTP header value sent to prevent from Clickjacking. | ||
| + | // Possible values: sameorigin|deny. Set to false in order to disable sending them | ||
| + | $rcmail_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. | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | // | ||
| + | |||
| + | // 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 ' | ||
| + | // Supported replacement variables: | ||
| + | // %h - user's IMAP hostname | ||
| + | // %n - http hostname ($_SERVER[' | ||
| + | // %d - domain (http hostname without the first part) | ||
| + | // %z - IMAP domain (IMAP hostname without the first part) | ||
| + | // For example %n = mail.domain.tld, | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // This domain will be used to form e-mail addresses of new users | ||
| + | // Specify an array with ' | ||
| + | // Supported replacement variables: | ||
| + | // %h - user's IMAP hostname | ||
| + | // %n - http hostname ($_SERVER[' | ||
| + | // %d - domain (http hostname without the first part) | ||
| + | // %z - IMAP domain (IMAP hostname without the first part) | ||
| + | // For example %n = mail.domain.tld, | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Password charset. | ||
| + | // Use it if your authentication backend doesn' | ||
| + | // Defaults to ISO-8859-1 for backward compatibility | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // How many seconds must pass between emails sent by a user | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Maximum number of recipients per message. Default: 0 (no limit) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Maximum allowednumber of members of an address group. Default: 0 (no limit) | ||
| + | // If ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // add this user-agent to message headers when sending | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // use this name to compose page titles | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // try to load host-specific configuration | ||
| + | // see http:// | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // path to a text file which will be added to each sent message | ||
| + | // paths are relative to the Roundcube root folder | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // path to a text file which will be added to each sent HTML message | ||
| + | // paths are relative to the Roundcube root folder | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // add a received header to outgoing mails containing the creators IP and hostname | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Whether or not to encrypt the IP address and the host name | ||
| + | // these could, in some circles, be considered as sensitive information; | ||
| + | // however, for the administrator, | ||
| + | // when tracking down issues. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // This string is used as a delimiter for message headers when sending | ||
| + | // a message via mail() function. Leave empty for auto-detection | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // number of chars allowed for line when wrapping text. | ||
| + | // text wrapping is done when composing/ | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // send plaintext messages as format=flowed | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // don't allow these settings to be overriden by the user | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // 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 | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | // | ||
| + | // Django : 2013-05-17 | ||
| + | // old : $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Mimetypes supported by the browser. | ||
| + | // attachments of these types will open in a preview window | ||
| + | // either a comma-separated list or an array: ' | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // mime magic database | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // path to imagemagick identify binary | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // path to imagemagick convert binary | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // maximum size of uploaded contact photos in pixel | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Enable DNS checking for e-mail address validation | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // PLUGINS | ||
| + | // ---------------------------------- | ||
| + | |||
| + | // List of active plugins (in plugins/ directory) | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // USER INTERFACE | ||
| + | // ---------------------------------- | ||
| + | |||
| + | // default messages sort column. Use empty value for default server' | ||
| + | // or ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // default messages sort order | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // These cols are shown in the message list. Available cols are: | ||
| + | // subject, from, to, fromto, cc, replyto, date, size, status, flag, attachment, ' | ||
| + | $rcmail_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 | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // use this format for date display (date or strftime format) | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // give this choice of date formats to the user to select from | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // use this format for time display (date or strftime format) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // give this choice of time formats to the user to select from | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // use this format for short date display (derived from date_format and time_format) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // use this format for detailed date/time formatting (derived from date_format and time_format) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // store draft message is this mailbox | ||
| + | // leave blank if draft messages should not be stored | ||
| + | // NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // store spam messages in this mailbox | ||
| + | // NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // store sent message is this mailbox | ||
| + | // leave blank if sent messages should not be stored | ||
| + | // NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // move messages to this folder when deleting them | ||
| + | // leave blank if they should be deleted directly | ||
| + | // NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) | ||
| + | $rcmail_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) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // automatically create the above listed default folders on first login | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // protect the default folders from renames, deletes, and subscription changes | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // if in your system 0 quota means no limit set this option to true | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // 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[' | ||
| + | |||
| + | // Enables spellchecker exceptions dictionary. | ||
| + | // Setting it to ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Set the spell checking engine. ' | ||
| + | // but requires the Pspell extensions. When using Nox Spell Server, also set ' | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // For a locally installed Nox Spell Server, please specify the URI to call it. | ||
| + | // Get Nox Spell Server from http:// | ||
| + | // 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[' | ||
| + | |||
| + | // These languages can be selected for spell checking. | ||
| + | // Configure as a PHP style hash array: array(' | ||
| + | // Leave empty for default set of available language. | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Makes that words with all letters capitalized will be ignored (e.g. GOOGLE) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Makes that words with numbers will be ignored (e.g. g00gle) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Makes that words with symbols will be ignored (e.g. g@@gle) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Use this char/string to separate recipients when composing a new message | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // don't let users set pagesize to more than this value if set | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Minimal value of user's ' | ||
| + | // Must be less than ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Enables files upload indicator. Requires APC installed and enabled apc.rfc1867 option. | ||
| + | // By default refresh time is set to 1 second. You can set this value to true | ||
| + | // or any integer value indicating number of seconds. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Specifies for how many seconds the Undo button will be available | ||
| + | // after object delete action. Currently used with supporting address book sources. | ||
| + | // Setting it to 0, disables the feature. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // ADDRESSBOOK SETTINGS | ||
| + | // ---------------------------------- | ||
| + | |||
| + | // This indicates which type of address book to use. Possible choises: | ||
| + | // ' | ||
| + | // If set to ' | ||
| + | // address book as the primary address book and it will not display the | ||
| + | // SQL address book in the ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // 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. | ||
| + | // Array key must contain only safe characters, ie. a-zA-Z0-9_ | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // If you are going to use LDAP for individual address books, you will need to | ||
| + | // set ' | ||
| + | // | ||
| + | // The recommended directory structure for LDAP is to store all the address book entries | ||
| + | // under the users main entry, e.g.: | ||
| + | // | ||
| + | // o=root | ||
| + | // | ||
| + | // uid=user@domain | ||
| + | // mail=contact@contactdomain | ||
| + | // | ||
| + | // So the base_dn would be uid=%fu, | ||
| + | // The bind_dn would be the same as based_dn or some super user login. | ||
| + | /* | ||
| + | * example config for Verisign directory | ||
| + | * | ||
| + | $rcmail_config[' | ||
| + | ' | ||
| + | // Replacement variables supported in host names: | ||
| + | // %h - user's IMAP hostname | ||
| + | // %n - http hostname ($_SERVER[' | ||
| + | // %d - domain (http hostname without the first part) | ||
| + | // %z - IMAP domain (IMAP hostname without the first part) | ||
| + | // For example %n = mail.domain.tld, | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | // %fu - The full username provided, assumes the username is an email | ||
| + | // | ||
| + | // %u - The username prior to the ' | ||
| + | // %d - The domain name after the ' | ||
| + | // %dc - The domain name hierarchal string e.g. " | ||
| + | // %dn - DN found by ldap search when search_filter/ | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | // It's possible to bind for an individual address book | ||
| + | // The login name is used to search for the DN to bind with | ||
| + | ' | ||
| + | ' | ||
| + | // DN and password to bind as before searching for bind DN, if anonymous search is not allowed | ||
| + | ' | ||
| + | ' | ||
| + | // Default for %dn variable if search doesn' | ||
| + | ' | ||
| + | // Optional authentication identifier to be used as SASL authorization proxy | ||
| + | // bind_dn need to be empty | ||
| + | ' | ||
| + | // SASL authentication method (for proxy auth), e.g. DIGEST-MD5 | ||
| + | ' | ||
| + | // Indicates if the addressbook shall be hidden from the list. | ||
| + | // With this option enabled you can still search/view contacts. | ||
| + | ' | ||
| + | // Indicates if the addressbook shall not list contacts but only allows searching. | ||
| + | ' | ||
| + | // Indicates if we can write to the LDAP directory or not. | ||
| + | // If writable is true then these fields need to be populated: | ||
| + | // LDAP_Object_Classes, | ||
| + | ' | ||
| + | // To create a new contact these are the object classes to specify | ||
| + | // (or any other classes you wish to use). | ||
| + | ' | ||
| + | // The RDN field that is used for new entries, this field needs | ||
| + | // to be one of the search_fields, | ||
| + | // to the RDN to insert into the LDAP directory. | ||
| + | ' | ||
| + | // The required fields needed to build a new contact as required by | ||
| + | // the object classes (can include additional fields not required by the object classes). | ||
| + | ' | ||
| + | ' | ||
| + | // mapping of contact fields to directory attributes | ||
| + | // for every attribute one can specify the number of values (limit) allowed. | ||
| + | // | ||
| + | ' | ||
| + | // Roundcube | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | |||
| + | // definition for contact groups (uncomment if no groups are supported) | ||
| + | // for the groups base_dn, the user replacements %fu, %u, $d and %dc work as for base_dn (see above) | ||
| + | // if the groups base_dn is empty, the contact base_dn is used for the groups as well | ||
| + | // -> in this case, assure that groups and contacts are separated due to the concernig filters! | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | ); | ||
| + | */ | ||
| + | |||
| + | // An ordered array of the ids of the addressbooks that should be searched | ||
| + | // when populating address autocomplete fields server-side. ex: array(' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // The minimum number of characters required to be typed in an autocomplete field | ||
| + | // before address books will be searched. Most useful for LDAP directories that | ||
| + | // may need to do lengthy results building given overly-broad searches | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Number of parallel autocomplete requests. | ||
| + | // If there' | ||
| + | // where each request will search in one address book. By default (0), all address | ||
| + | // books are searched in one request. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Max. numer of entries in autocomplete popup. Default: 15. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // show address fields in this order | ||
| + | // available placeholders: | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Matching mode for addressbook search (including autocompletion) | ||
| + | // 0 - partial (*abc*), default | ||
| + | // 1 - strict (abc) | ||
| + | // 2 - prefix (abc*) | ||
| + | // Note: For LDAP sources fuzzy_search must be enabled to use ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // ---------------------------------- | ||
| + | // USER PREFERENCES | ||
| + | // ---------------------------------- | ||
| + | |||
| + | // Use this charset as fallback for message decoding | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // skin name: folder from skins/ | ||
| + | // Django : 2013-05-17 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // show up to X items in list view | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // sort contacts by this col (preferably either one of name, firstname, surname) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // the way how contact names are displayed in the list | ||
| + | // 0: display name | ||
| + | // 1: (prefix) firstname middlename surname (suffix) | ||
| + | // 2: (prefix) surname firstname middlename (suffix) | ||
| + | // 3: (prefix) surname, firstname middlename (suffix) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // use this timezone to display date/time | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // is daylight saving On? Default: (bool)date(' | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // prefer displaying HTML messages | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // display remote inline images | ||
| + | // 0 - Never, always ask | ||
| + | // 1 - Ask if sender is not in address book | ||
| + | // 2 - Always show inline images | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // compose html formatted messages by default | ||
| + | // 0 - never, 1 - always, 2 - on reply to HTML message only | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // show pretty dates as standard | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // save compose message every 300 seconds (5min) | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // default setting if preview pane is enabled | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Mark as read when viewed in preview pane (delay in seconds) | ||
| + | // Set to -1 if messages in preview pane should not be marked as read | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Clear Trash on logout | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Compact INBOX on logout | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Display attached images below the message body | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Encoding of long/ | ||
| + | // 0 - Full RFC 2231 compatible | ||
| + | // 1 - RFC 2047 for ' | ||
| + | // 2 - Full 2047 compatible | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Set true if deleted messages should not be displayed | ||
| + | // This will make the application run slower | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Set true to Mark deleted messages as read as well as deleted | ||
| + | // False means that a message' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Set to true to never delete messages immediately | ||
| + | // Use ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Default interval for keep-alive/ | ||
| + | // Must be greater than or equal to ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // If true all folders will be checked for recent messages | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // If true, after message delete/ | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // 0 - Do not expand threads | ||
| + | // 1 - Expand all threads automatically | ||
| + | // 2 - Expand only threads with unread messages | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // When replying place cursor above original message (top posting) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // When replying strip original signature from message | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Show signature: | ||
| + | // 0 - Never | ||
| + | // 1 - Always | ||
| + | // 2 - New messages only | ||
| + | // 3 - Forwards and Replies only | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // When replying or forwarding place sender' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Use MIME encoding (quoted-printable) for 8bit characters in message body | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Defaults of the search field configuration. | ||
| + | // The array can contain a per-folder list of header fields which should be considered when searching | ||
| + | // The entry with key ' | ||
| + | // Please note that folder names should to be in sync with $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Defaults of the addressbook search field configuration. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // ' | ||
| + | // This setting reflects if mail should be always deleted | ||
| + | // when moving to Trash fails. This is necessary in some setups | ||
| + | // when user is over quota and Trash is included in the quota. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Behavior if a received message requests a message delivery notification (read receipt) | ||
| + | // 0 = ask the user, 1 = send automatically, | ||
| + | // 3 = send automatically if sender is in addressbook, | ||
| + | // 4 = send automatically if sender is in addressbook, | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Return receipt checkbox default state | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Delivery Status Notification checkbox default state | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Place replies in the folder of the message being replied to | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Sets default mode of Forward feature to " | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Defines address book (internal index) to which new contacts will be added | ||
| + | // By default it is the first writeable addressbook. | ||
| + | // Note: Use ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Enables spell checking before sending a message. | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Skip alternative email addresses in autocompletion (show one address per contact) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // end of config file | ||
| + | |||
| + | </ | ||
| + | |||
| + | ===== Plugins ===== | ||
| + | Mit Hilfe von Plugins kann Roundgroup um verschiedene Funktionen und Fähigkeiten erweitert werden. In unserem konfigurationsbeispiel beschränken wir uns dabei auf die zwei wichtigsten Plugins, nämlich **Password** und **Managesieve**. | ||
| + | |||
| + | ==== Password ==== | ||
| + | Damit unsere User später Ihr Passwort eigenständig ändern können, konfigurieren wir nun das zugehörige Plugin **password**. | ||
| + | Als erstes kopieren wir die Vorgabedatei, | ||
| + | # cp / | ||
| + | |||
| + | Anschließend bearbeiten wir diese Datei und tragen dort die Datenbankanbindung zur MySQL sowie das benötigte SQL-Statement ein. Auch hier sind in dem nachfolgenden Beispiel die Änderungen mit **Django** gekennzeichnet. | ||
| + | # vim / | ||
| + | |||
| + | <file php / | ||
| + | |||
| + | // Password Plugin options | ||
| + | // ----------------------- | ||
| + | // A driver to use for password change. Default: " | ||
| + | // See README file for list of supported driver names. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Determine whether current password is required to change password. | ||
| + | // Default: false. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Require the new password to be a certain length. | ||
| + | // set to blank to allow passwords of any length | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Require the new password to contain a letter and punctuation character | ||
| + | // Change to false to remove this check. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Enables logging of password changes into logs/ | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // SQL Driver options | ||
| + | // ------------------ | ||
| + | // PEAR database DSN for performing the query. By default | ||
| + | // Roundcube DB settings are used. | ||
| + | // Django : 2012-10-18 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_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 : 2012-10-18 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // By default domains in variables are using unicode. | ||
| + | // Enable this option to use punycoded names | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Path for dovecotpw (if not in $PATH) | ||
| + | // Django : 2012-10-18 | ||
| + | // default: unset | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Dovecot method (dovecotpw -s ' | ||
| + | // Django : 2012-10-18 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Enables use of password with crypt method prefix in %D, e.g. {MD5}$1$LUiMYWqx$fEkg/ | ||
| + | $rcmail_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 ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // You can also decide whether the hash should be provided | ||
| + | // as hex string or in base64 encoded format. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // Poppassd Driver options | ||
| + | // ----------------------- | ||
| + | // The host which changes the password | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // TCP port used for poppassd connections | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // SASL Driver options | ||
| + | // ------------------- | ||
| + | // Additional arguments for the saslpasswd2 call | ||
| + | $rcmail_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: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP server port to connect to | ||
| + | // Default: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // TLS is started after connecting | ||
| + | // Using TLS for password modification is recommanded. | ||
| + | // Default: false | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP version | ||
| + | // Default: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP base name (root directory) | ||
| + | // Exemple: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP connection method | ||
| + | // There is two connection method for changing a user's LDAP password. | ||
| + | // ' | ||
| + | // ' | ||
| + | // Default: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP Admin DN | ||
| + | // Used only in admin connection mode | ||
| + | // Default: null | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP Admin Password | ||
| + | // Used only in admin connection mode | ||
| + | // Default: null | ||
| + | $rcmail_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: ' | ||
| + | $rcmail_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. | ||
| + | $rcmail_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. | ||
| + | $rcmail_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. | ||
| + | $rcmail_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: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP password hash type | ||
| + | // Standard LDAP encryption type which must be one of: crypt, | ||
| + | // ext_des, md5crypt, blowfish, md5, sha, smd5, ssha, or clear. | ||
| + | // Please note that most encodage types require external libraries | ||
| + | // to be included in your PHP installation, | ||
| + | // Default: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP password attribute | ||
| + | // Name of the ldap's attribute used for storing user password | ||
| + | // Default: ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP password force replace | ||
| + | // Force LDAP replace in cases where ACL allows only replace not read | ||
| + | // See http:// | ||
| + | // Default: true | ||
| + | $rcmail_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) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // LDAP Samba password attribute, e.g. sambaNTPassword | ||
| + | // Name of the LDAP's Samba attribute used for storing user password | ||
| + | $rcmail_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 | ||
| + | $rcmail_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) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // TCP port used for DirectAdmin connections | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // vpopmaild Driver options | ||
| + | // ----------------------- | ||
| + | // The host which changes the password | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // TCP port used for vpopmaild connections | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // cPanel Driver options | ||
| + | // -------------------------- | ||
| + | // The cPanel Host name | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // The cPanel admin username | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // The cPanel admin password | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // The cPanel port to use | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Using ssl for cPanel connections? | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // The cPanel theme in use | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // XIMSS (Communigate server) Driver options | ||
| + | // ----------------------------------------- | ||
| + | // Host name of the Communigate server | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // XIMSS port on Communigate server | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // chpasswd Driver options | ||
| + | // --------------------- | ||
| + | // Command to use | ||
| + | $rcmail_config[' | ||
| + | |||
| + | |||
| + | // XMail Driver options | ||
| + | // --------------------- | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | $rcmail_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 | ||
| + | $rcmail_config[' | ||
| + | // Windows credentials | ||
| + | $rcmail_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 | ||
| + | $rcmail_config[' | ||
| + | </ | ||
| + | ==== Managesieve ==== | ||
| + | Damit unsere Mailkunden ihre sieve-Regeln direkt aus Roundcube heraus komfortabel ändern können, aktivieren wir das zugehörige Plugin **managesieve** | ||
| + | |||
| + | Als erstes kopieren wir die Vorgabedatei, | ||
| + | # 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 **Django** gekennzeichnet. | ||
| + | # vim / | ||
| + | |||
| + | <file php / | ||
| + | |||
| + | // managesieve server port | ||
| + | // Django : 2012-10-12 | ||
| + | // default: $rcmail_config[' | ||
| + | $rcmail_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 : 2012-10-12 | ||
| + | //default: $rcmail_config[' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // authentication method. Can be CRAM-MD5, DIGEST-MD5, PLAIN, LOGIN, EXTERNAL | ||
| + | // or none. Optional, defaults to best method supported by server. | ||
| + | $rcmail_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. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Optional managesieve authentication password to be used for imap_auth_cid | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // use or not TLS for managesieve server connection | ||
| + | // it's because I've problems with TLS and dovecot' | ||
| + | // and it's not needed on localhost | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // default contents of filters script (eg. default spam filter) | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // The name of the script which will be used when there' | ||
| + | $rcmail_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 | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // I need this because my dovecot (with listescape plugin) uses | ||
| + | // ':' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // disabled sieve extensions (body, copy, date, editheader, encoded-character, | ||
| + | // envelope, environment, | ||
| + | // mailbox, mboxmetadata, | ||
| + | // spamtest, spamtestplus, | ||
| + | // Note: not all extensions are implemented | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Enables debugging of conversation with sieve server. Logs it into < | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Enables features described in http:// | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // Script name extension used for scripts including. Dovecot uses ' | ||
| + | // Cyrus uses ' | ||
| + | $rcmail_config[' | ||
| + | |||
| + | // List of reserved script names (without extension). | ||
| + | // Scripts listed here will be not presented to the user. | ||
| + | $rcmail_config[' | ||
| + | |||
| + | ?> | ||
| + | </ | ||
| + | |||
| + | ===== Programmstart/ | ||
| + | Nun ist es an der Zeit unseren Webmailer zu testen. | ||
| + | $ firefox https:// | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | ====== Links ====== | ||
| + | * **[[centos: | ||
| + | * **[[centos: | ||
| + | * **[[wiki: | ||
| + | * **[[http:// | ||
| + | |||
| + | |||