summaryrefslogtreecommitdiffstats
path: root/roles/webmail
diff options
context:
space:
mode:
Diffstat (limited to 'roles/webmail')
-rw-r--r--roles/webmail/tasks/roundcube.yml5
-rw-r--r--roles/webmail/templates/usr/share/roundcube/plugins/managesieve/config.inc.php.j267
2 files changed, 70 insertions, 2 deletions
diff --git a/roles/webmail/tasks/roundcube.yml b/roles/webmail/tasks/roundcube.yml
index 21d4dff..2d8a8b9 100644
--- a/roles/webmail/tasks/roundcube.yml
+++ b/roles/webmail/tasks/roundcube.yml
@@ -20,65 +20,66 @@
owner=root group=www-data
mode=0640
with_items:
# Logging/Debugging
- { var: smtp_log, value: "FALSE" }
# IMAP
- { var: default_host, value: "'localhost'" }
- { var: imap_auth_type, value: "'plain'" }
- { var: imap_cache, value: "null" }
- { var: message_cache, value: "null" }
# SMTP
- { var: smtp_server, value: "localhost" }
- { var: smtp_port, value: "2580" }
# System
- { var: force_https, value: "TRUE" }
- { var: login_autocomplete, value: "2" }
- { var: skin_logo, value: "'skins/default/images/logo_webmail.png'" }
- { var: username_domain, value: "'fripost.org'" }
- { var: product_name, value: "'Fripost'" }
# Plugins
- - { var: plugins, value: "array('password','additional_message_headers')" }
+ - { var: plugins, value: "array('additional_message_headers','managesieve','password')" }
# User Interface
- { 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" }
- name: Make the logo a hyperlink to the website
lineinfile: dest=/usr/share/roundcube/skins/default/templates/login.html
regexp='^(<roundcube:object name="logo" src="/images/roundcube_logo.png" id="logo" border="0" style="margin:0 11px" />)$'
line='<a href="https://fripost.org">\1</a>'
backrefs=yes
owner=root group=root
mode=0644
- name: Configure Roundcube plugins
template: src=usr/share/roundcube/plugins/{{ item }}/config.inc.php.j2
dest=/usr/share/roundcube/plugins/{{ item }}/config.inc.php
owner=root group=root
mode=0644
with_items:
- - password
- additional_message_headers
+ - managesieve
+ - password
- name: Start php5-fpm
service: name=php5-fpm state=started
- name: Copy /etc/nginx/sites-available/roundcube
copy: src=etc/nginx/sites-available/roundcube
dest=/etc/nginx/sites-available/roundcube
owner=root group=root
mode=0644
notify:
- Restart Nginx
- name: Create /etc/nginx/sites-enabled/roundcube
file: src=../sites-available/roundcube
dest=/etc/nginx/sites-enabled/roundcube
owner=root group=root
state=link
notify:
- Restart Nginx
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
new file mode 100644
index 0000000..27b5b44
--- /dev/null
+++ b/roles/webmail/templates/usr/share/roundcube/plugins/managesieve/config.inc.php.j2
@@ -0,0 +1,67 @@
+<?php
+
+// managesieve server port
+$rcmail_config['managesieve_port'] = 4190;
+
+// managesieve server address, default is localhost.
+// Replacement variables supported in host name:
+// %h - user's IMAP hostname
+// %n - http hostname ($_SERVER['SERVER_NAME'])
+// %d - domain (http hostname without the first part)
+// For example %n = mail.domain.tld, %d = domain.tld
+$rcmail_config['managesieve_host'] = '{{ IMAP }}';
+
+// authentication method. Can be CRAM-MD5, DIGEST-MD5, PLAIN, LOGIN, EXTERNAL
+// or none. Optional, defaults to best method supported by server.
+$rcmail_config['managesieve_auth_type'] = 'PLAIN';
+
+// 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['managesieve_auth_cid'] = null;
+
+// Optional managesieve authentication password to be used for imap_auth_cid
+$rcmail_config['managesieve_auth_pw'] = null;
+
+// use or not TLS for managesieve server connection
+// it's because I've problems with TLS and dovecot's managesieve plugin
+// and it's not needed on localhost
+$rcmail_config['managesieve_usetls'] = FALSE;
+
+// default contents of filters script (eg. default spam filter)
+$rcmail_config['managesieve_default'] = '/etc/dovecot/sieve/global';
+
+// The name of the script which will be used when there's no user script
+$rcmail_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
+$rcmail_config['managesieve_mbox_encoding'] = 'UTF-8';
+
+// I need this because my dovecot (with listescape plugin) uses
+// ':' delimiter, but creates folders with dot delimiter
+$rcmail_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
+$rcmail_config['managesieve_disabled_extensions'] = array();
+
+// Enables debugging of conversation with sieve server. Logs it into <log_dir>/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();
+
+?>