From 9c0c8ca11846893e75ac7cc6e633d67d94eb88b2 Mon Sep 17 00:00:00 2001 From: Guilhem Moulin Date: Thu, 24 Sep 2015 20:06:36 +0200 Subject: Upgrade Roundcube to 1.1.2. --- .../skins/classic/images/fripost_logo.png | Bin 0 -> 6567 bytes .../roundcube/skins/larry/images/fripost_logo.png | Bin 0 -> 5454 bytes .../files/var/lib/roundcube/skins/logo_webmail.png | Bin 6567 -> 0 bytes roles/webmail/tasks/roundcube.yml | 52 +-- .../additional_message_headers/config.inc.php.j2 | 14 + .../plugins/managesieve/config.inc.php.j2 | 99 +++++ .../roundcube/plugins/password/config.inc.php.j2 | 401 +++++++++++++++++++++ .../additional_message_headers/config.inc.php.j2 | 14 - .../plugins/managesieve/config.inc.php.j2 | 67 ---- .../roundcube/plugins/password/config.inc.php.j2 | 360 ------------------ 10 files changed, 543 insertions(+), 464 deletions(-) create mode 100644 roles/webmail/files/usr/share/roundcube/skins/classic/images/fripost_logo.png create mode 100644 roles/webmail/files/usr/share/roundcube/skins/larry/images/fripost_logo.png delete mode 100644 roles/webmail/files/var/lib/roundcube/skins/logo_webmail.png create mode 100644 roles/webmail/templates/etc/roundcube/plugins/additional_message_headers/config.inc.php.j2 create mode 100644 roles/webmail/templates/etc/roundcube/plugins/managesieve/config.inc.php.j2 create mode 100644 roles/webmail/templates/etc/roundcube/plugins/password/config.inc.php.j2 delete mode 100644 roles/webmail/templates/usr/share/roundcube/plugins/additional_message_headers/config.inc.php.j2 delete mode 100644 roles/webmail/templates/usr/share/roundcube/plugins/managesieve/config.inc.php.j2 delete mode 100644 roles/webmail/templates/usr/share/roundcube/plugins/password/config.inc.php.j2 (limited to 'roles/webmail') diff --git a/roles/webmail/files/usr/share/roundcube/skins/classic/images/fripost_logo.png b/roles/webmail/files/usr/share/roundcube/skins/classic/images/fripost_logo.png new file mode 100644 index 0000000..7af586a Binary files /dev/null and b/roles/webmail/files/usr/share/roundcube/skins/classic/images/fripost_logo.png differ diff --git a/roles/webmail/files/usr/share/roundcube/skins/larry/images/fripost_logo.png b/roles/webmail/files/usr/share/roundcube/skins/larry/images/fripost_logo.png new file mode 100644 index 0000000..c581a30 Binary files /dev/null and b/roles/webmail/files/usr/share/roundcube/skins/larry/images/fripost_logo.png differ diff --git a/roles/webmail/files/var/lib/roundcube/skins/logo_webmail.png b/roles/webmail/files/var/lib/roundcube/skins/logo_webmail.png deleted file mode 100644 index 7af586a..0000000 Binary files a/roles/webmail/files/var/lib/roundcube/skins/logo_webmail.png and /dev/null differ diff --git a/roles/webmail/tasks/roundcube.yml b/roles/webmail/tasks/roundcube.yml index 5392242..ab13729 100644 --- a/roles/webmail/tasks/roundcube.yml +++ b/roles/webmail/tasks/roundcube.yml @@ -12,47 +12,53 @@ - roundcube-core - roundcube-mysql - roundcube-plugins + - php-net-sieve + - php-net-ldap3 + - php-mail-mimedecode - name: Copy fripost's logo - copy: src=var/lib/roundcube/skins/logo_webmail.png - dest=/var/lib/roundcube/skins/logo_webmail.png + copy: src=usr/share/roundcube/skins/{{ item }}/images/fripost_logo.png + dest=/usr/share/roundcube/skins/{{ item }}/images/fripost_logo.png owner=root group=root mode=0644 + with_items: + - classic + - larry - name: Configure Roundcube - lineinfile: dest=/etc/roundcube/main.inc.php - "regexp=^\\s*\\$rcmail_config\\['{{ item.var }}'\\]\\s*=" - "line=$rcmail_config['{{ item.var }}'] = {{ item.value }};" + lineinfile: dest=/etc/roundcube/config.inc.php + "regexp=^\\s*\\$config\\['{{ item.var }}'\\]\\s*=" + "line=$config['{{ item.var }}'] = {{ item.value }};" owner=root group=www-data mode=0640 with_items: # Logging/Debugging - - { var: smtp_log, value: "FALSE" } + - { var: smtp_log, value: "false" } # IMAP - { var: default_host, value: "'localhost'" } - - { var: default_port, value: "143" } - - { var: imap_auth_type, value: "'plain'" } + - { var: default_port, value: "143" } + - { var: imap_auth_type, value: "'PLAIN'" } - { var: imap_cache, value: "null" } - - { var: messages_cache, value: "null" } + - { var: messages_cache, value: "false" } # SMTP - { var: smtp_server, value: "'localhost'" } - { var: smtp_port, value: "2525" } # System - - { var: force_https, value: "TRUE" } - - { var: login_autocomplete, value: "2" } - - { var: skin_logo, value: "'skins/logo_webmail.png'" } - - { var: username_domain, value: "'fripost.org'" } - - { var: product_name, value: "'Fripost'" } + - { var: force_https, value: "true" } + - { var: login_autocomplete, value: "2" } + - { var: skin_logo, value: "'/images/fripost_logo.png'" } + - { var: username_domain, value: "'fripost.org'" } + - { var: product_name, value: "'Fripost Webmail'" } # Plugins - - { var: plugins, value: "array('additional_message_headers','managesieve','password')" } + - { var: plugins, value: "array('archive','additional_message_headers','managesieve','password')" } # User Interface - - { var: skin, value: "'classic'" } - - { var: language, value: "'sv_SE'" } - - { var: create_default_folders, value: "TRUE" } + - { var: skin, value: "'larry'" } + - { var: language, value: "'sv_SE'" } + - { var: create_default_folders, value: "true" } # User Preferences - - { var: htmleditor, value: "TRUE" } - - { var: skip_deleted, value: "TRUE" } - - { var: check_all_folders, value: "FALSE" } + - { var: htmleditor, value: "3" } + - { var: skip_deleted, value: "true" } + - { var: check_all_folders, value: "false" } - name: Make the logo a hyperlink to the website lineinfile: dest=/usr/share/roundcube/skins/{{ item }}/templates/login.html @@ -66,8 +72,8 @@ - larry - name: Configure Roundcube plugins - template: src=usr/share/roundcube/plugins/{{ item }}/config.inc.php.j2 - dest=/usr/share/roundcube/plugins/{{ item }}/config.inc.php + template: src=etc/roundcube/plugins/{{ item }}/config.inc.php.j2 + dest=/etc/roundcube/plugins/{{ item }}/config.inc.php owner=root group=root mode=0644 with_items: diff --git a/roles/webmail/templates/etc/roundcube/plugins/additional_message_headers/config.inc.php.j2 b/roles/webmail/templates/etc/roundcube/plugins/additional_message_headers/config.inc.php.j2 new file mode 100644 index 0000000..63eeb8c --- /dev/null +++ b/roles/webmail/templates/etc/roundcube/plugins/additional_message_headers/config.inc.php.j2 @@ -0,0 +1,14 @@ + diff --git a/roles/webmail/templates/etc/roundcube/plugins/managesieve/config.inc.php.j2 b/roles/webmail/templates/etc/roundcube/plugins/managesieve/config.inc.php.j2 new file mode 100644 index 0000000..1423610 --- /dev/null +++ b/roles/webmail/templates/etc/roundcube/plugins/managesieve/config.inc.php.j2 @@ -0,0 +1,99 @@ + array( + 'verify_peer' => true, + 'verify_depth' => 3, + 'cafile' => '/etc/stunnel/certs/imap.fripost.org.pem', + ), + ); + +// default contents of filters script (eg. default spam filter) +$config['managesieve_default'] = '/etc/dovecot/sieve/global'; + +// The name of the script which will be used when there's no user script +$config['managesieve_script_name'] = 'managesieve'; + +// 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['managesieve_mbox_encoding'] = 'UTF-8'; + +// I need this because my dovecot (with listescape plugin) uses +// ':' delimiter, but creates folders with dot delimiter +$config['managesieve_replace_delimiter'] = ''; + +// disabled sieve extensions (body, copy, date, editheader, encoded-character, +// envelope, environment, ereject, fileinto, ihave, imap4flags, index, +// mailbox, mboxmetadata, regex, reject, relational, servermetadata, +// spamtest, spamtestplus, subaddress, vacation, variables, virustest, etc. +// Note: not all extensions are implemented +$config['managesieve_disabled_extensions'] = array(); + +// Enables debugging of conversation with sieve server. Logs it into /sieve +$config['managesieve_debug'] = false; + +// Enables features described in http://wiki.kolab.org/KEP:14 +$config['managesieve_kolab_master'] = false; + +// Script name extension used for scripts including. Dovecot uses '.sieve', +// Cyrus uses '.siv'. Doesn't matter if you have managesieve_kolab_master disabled. +$config['managesieve_filename_extension'] = '.sieve'; + +// List of reserved script names (without extension). +// Scripts listed here will be not presented to the user. +$config['managesieve_filename_exceptions'] = array(); + +// List of domains limiting destination emails in redirect action +// If not empty, user will need to select domain from a list +$config['managesieve_domains'] = array(); + +// 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['managesieve_vacation'] = 0; + +// Default vacation interval (in days). +// Note: If server supports vacation-seconds extension it is possible +// to define interval in seconds here (as a string), e.g. "3600s". +$config['managesieve_vacation_interval'] = 0; + +// Some servers require vacation :addresses to be filled with all +// user addresses (aliases). This option enables automatic filling +// of these on initial vacation form creation. +$config['managesieve_vacation_addresses_init'] = false; + +// Supported methods of notify extension. Default: 'mailto' +$config['managesieve_notify_methods'] = array('mailto'); diff --git a/roles/webmail/templates/etc/roundcube/plugins/password/config.inc.php.j2 b/roles/webmail/templates/etc/roundcube/plugins/password/config.inc.php.j2 new file mode 100644 index 0000000..c32f58e --- /dev/null +++ b/roles/webmail/templates/etc/roundcube/plugins/password/config.inc.php.j2 @@ -0,0 +1,401 @@ + /dev/null'; + + +// XMail Driver options +// --------------------- +$config['xmail_host'] = 'localhost'; +$config['xmail_user'] = 'YourXmailControlUser'; +$config['xmail_pass'] = 'YourXmailControlPass'; +$config['xmail_port'] = 6017; + + +// 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['hmailserver_remote_dcom'] = false; +// Windows credentials +$config['hmailserver_server'] = array( + 'Server' => 'localhost', // hostname or ip address + 'Username' => 'administrator', // windows username + 'Password' => 'password' // windows user password +); + + +// 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['password_virtualmin_format'] = 0; + + +// 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: /usr/sbin/pw +$config['password_pw_usermod_cmd'] = 'sudo /usr/sbin/pw usermod -h 0 -n'; + + +// DBMail Driver options +// ------------------- +// Additional arguments for the dbmail-users call +$config['password_dbmail_args'] = '-p sha512'; + + +// Expect Driver options +// --------------------- +// Location of expect binary +$config['password_expect_bin'] = '/usr/bin/expect'; + +// Location of expect script (see helpers/passwd-expect) +$config['password_expect_script'] = ''; + +// Arguments for the expect script. See the helpers/passwd-expect file for details. +// This is probably a good starting default: +// -telent -host localhost -output /tmp/passwd.log -log /tmp/passwd.log +$config['password_expect_params'] = ''; + + +// smb Driver options +// --------------------- +// Samba host (default: localhost) +// Supported replacement variables: +// %n - hostname ($_SERVER['SERVER_NAME']) +// %t - hostname without the first part +// %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part) +$config['password_smb_host'] = 'localhost'; +// Location of smbpasswd binary +$config['password_smb_cmd'] = '/usr/bin/smbpasswd'; + +// gearman driver options +// --------------------- +// Gearman host (default: localhost) +$config['password_gearman_host'] = 'localhost'; + + + +// Plesk/PPA Driver options +// -------------------- +// You need to allow RCP for IP of roundcube-server in Plesk/PPA Panel + +// Plesk RCP Host +$config['password_plesk_host'] = '10.0.0.5'; + +// Plesk RPC Username +$config['password_plesk_user'] = 'admin'; + +// Plesk RPC Password +$config['password_plesk_pass'] = 'password'; + +// Plesk RPC Port +$config['password_plesk_rpc_port'] = '8443'; + +// Plesk RPC Path +$config['password_plesk_rpc_path'] = 'enterprise/control/agent.php'; diff --git a/roles/webmail/templates/usr/share/roundcube/plugins/additional_message_headers/config.inc.php.j2 b/roles/webmail/templates/usr/share/roundcube/plugins/additional_message_headers/config.inc.php.j2 deleted file mode 100644 index e9d0d3d..0000000 --- a/roles/webmail/templates/usr/share/roundcube/plugins/additional_message_headers/config.inc.php.j2 +++ /dev/null @@ -1,14 +0,0 @@ - diff --git a/roles/webmail/templates/usr/share/roundcube/plugins/managesieve/config.inc.php.j2 b/roles/webmail/templates/usr/share/roundcube/plugins/managesieve/config.inc.php.j2 deleted file mode 100644 index d88a09a..0000000 --- a/roles/webmail/templates/usr/share/roundcube/plugins/managesieve/config.inc.php.j2 +++ /dev/null @@ -1,67 +0,0 @@ -/sieve -$rcmail_config['managesieve_debug'] = false; - -// Enables features described in http://wiki.kolab.org/KEP:14 -$rcmail_config['managesieve_kolab_master'] = false; - -// Script name extension used for scripts including. Dovecot uses '.sieve', -// Cyrus uses '.siv'. Doesn't matter if you have managesieve_kolab_master disabled. -$rcmail_config['managesieve_filename_extension'] = '.sieve'; - -// List of reserved script names (without extension). -// Scripts listed here will be not presented to the user. -$rcmail_config['managesieve_filename_exceptions'] = array(); - -?> diff --git a/roles/webmail/templates/usr/share/roundcube/plugins/password/config.inc.php.j2 b/roles/webmail/templates/usr/share/roundcube/plugins/password/config.inc.php.j2 deleted file mode 100644 index f4bdd82..0000000 --- a/roles/webmail/templates/usr/share/roundcube/plugins/password/config.inc.php.j2 +++ /dev/null @@ -1,360 +0,0 @@ - /dev/null'; - - -// XMail Driver options -// --------------------- -$rcmail_config['xmail_host'] = 'localhost'; -$rcmail_config['xmail_user'] = 'YourXmailControlUser'; -$rcmail_config['xmail_pass'] = 'YourXmailControlPass'; -$rcmail_config['xmail_port'] = 6017; - - -// 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['hmailserver_remote_dcom'] = false; -// Windows credentials -$rcmail_config['hmailserver_server'] = array( - 'Server' => 'localhost', // hostname or ip address - 'Username' => 'administrator', // windows username - 'Password' => 'password' // windows user password -); - - -// 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['password_virtualmin_format'] = 0; - - -// 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: /usr/sbin/pw -$rcmail_config['password_pw_usermod_cmd'] = 'sudo /usr/sbin/pw usermod -h 0 -n'; - - -// DBMail Driver options -// ------------------- -// Additional arguments for the dbmail-users call -$rcmail_config['password_dbmail_args'] = '-p sha512'; - - -// Expect Driver options -// --------------------- -// Location of expect binary -$rcmail_config['password_expect_bin'] = '/usr/bin/expect'; - -// Location of expect script (see helpers/passwd-expect) -$rcmail_config['password_expect_script'] = ''; - -// Arguments for the expect script. See the helpers/passwd-expect file for details. -// This is probably a good starting default: -// -telent -host localhost -output /tmp/passwd.log -log /tmp/passwd.log -$rcmail_config['password_expect_params'] = ''; - - -// smb Driver options -// --------------------- -// Samba host (default: localhost) -$rcmail_config['password_smb_host'] = 'localhost'; -// Location of smbpasswd binary -$rcmail_config['password_smb_cmd'] = '/usr/bin/smbpasswd'; -- cgit v1.2.3