Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
centos:mail_c7:roundcube_1 [09.09.2014 18:08. ] – angelegt django | centos:mail_c7:roundcube_1 [18.11.2024 19:10. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 7: | Zeile 7: | ||
Im Detail sind das folgende Pakete: | Im Detail sind das folgende Pakete: | ||
* **php-pspell** | * **php-pspell** | ||
+ | * **aspell-de** | ||
* **php-mcrypt** | * **php-mcrypt** | ||
* **GraphicsMagick** | * **GraphicsMagick** | ||
- | # yum install php-pspell php-mcrypt GraphicsMagick -y | + | # yum install php-pspell |
- | /* Für die deutsche Rechtschreibkorrektur gibt es unter CentOS 7.x (noch)((Stand: | + | 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://repo.nausch.org/7/ | ||
# cd / | # cd / | ||
- | # wget http://ftp.tu-chemnitz.de/pub/ | + | # wget http://repo.nausch.org/7/ |
- | Anschließend installieren wir dieses RPM. | + | Anschließend installieren wir dieses RPM mit Hilfe von **yum**. |
- | # yum install | + | # yum localinstall |
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-/Konfigurationsdokumentation ==== | ||
+ | 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 (# | ||
+ | </ | ||
+ | |||
+ | ===== 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, | ||
+ | # 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, | ||
+ | # Deny from all | ||
+ | # Allow from 127.0.0.1 | ||
+ | # Allow from ::1 | ||
+ | # </ | ||
+ | #</ | ||
+ | # | ||
+ | ## Those directories should not be viewed by Web clients. | ||
+ | #< | ||
+ | # Order Allow, | ||
+ | # Deny from all | ||
+ | #</ | ||
+ | #< | ||
+ | # Order Allow, | ||
+ | # 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:// | ||
+ |