Changes

Jump to navigation Jump to search
4,077 bytes removed ,  27 February
m
Line 6: Line 6:  
==RoundCube V1.0 for SME Server==
 
==RoundCube V1.0 for SME Server==
 
===Maintainer===
 
===Maintainer===
[mailto:stephdl@de-labrusse.fr stephdl] Stéphane de Labrusse AKA [[User:stephdl|Stephdl]]<br />
+
[mailto:stephdl@de-labrusse.fr stephdl] Stéphane de Labrusse AKA [[User:stephdl|Stephdl]]
 +
 
 +
== Versions ==
 +
{{ #smeversion: smeserver-roundcube }}
 +
 
 +
 
 +
roundcubemail_plugins is deprecated in SME10, all is provided by smeserver-roundcube
 +
{| class="wikitable"
 +
!Release
 +
!Released
 +
!Active Support
 +
!Security Support
 +
!Latest
 +
|-
 +
|1.6
 +
|25 Jul 2022
 +
|Yes
 +
|Yes
 +
|1.6.5
 +
|-
 +
|1.5 LTS
 +
|18 Oct 2021
 +
|Yes
 +
|Yes
 +
|1.5.6
 +
|}
    
===Installation===
 
===Installation===
 +
<tabs container=""><tab name="For SME 10">
 +
yum install smeserver-extrarepositories-remi-roundcube -y
 +
we now only support version 1.6.x
 +
yum install smeserver-roundcube  --enablerepo=smecontribs,remi-roundcube
   −
==== '''For SME9''' ====
+
if you previously locked to version 1.5, to revert versionlock<syntaxhighlight lang="bash">
Remember to first configure the required [[stephdl]] repository, then issue the following command on the SME Server shell:
+
  yum versionlock delete roundcubemail
 
+
  yum update -y
yum install smeserver-roundcube --enablerepo=stephdl
+
  signal-event smeserver-roundcube-update
 +
</syntaxhighlight>
    +
</tab><tab name="For SME 9">
 +
yum install smeserver-roundcube --enablerepo=smecontribs
    
answer yes (y) for all plugins you want to activate
 
answer yes (y) for all plugins you want to activate
Line 23: Line 55:  
  signal-event post-upgrade; signal-event reboot
 
  signal-event post-upgrade; signal-event reboot
    +
upgrade
 +
yum upgrade --enablerepo=smecontribs,remi-roundcube
 +
</tab><tab name="For SME 8">
 
==== '''For SME8''' ====
 
==== '''For SME8''' ====
 
Remember to first configure the two required repositories, [[stephdl]] and [[epel]],
 
Remember to first configure the two required repositories, [[stephdl]] and [[epel]],
Line 36: Line 71:  
or
 
or
 
  signal-event post-upgrade; signal-event reboot
 
  signal-event post-upgrade; signal-event reboot
 +
</tab>
 +
</tabs>
    
===Uninstallation===
 
===Uninstallation===
Line 46: Line 83:  
http://servername/roundcube'' and logon with your SME Server user account.
 
http://servername/roundcube'' and logon with your SME Server user account.
    +
{{Note box|Roundcube will connect to IMAP with SSL to the primary domain of your server.
 +
You need a valid or a self-signed certificate including your own domain name at least as alternative DNS.}}
 
===Logs===
 
===Logs===
Logs are available :
+
<tabs container=""><tab name="For SME 9 and newer">
* for sme8
+
less /var/log/roundcubemail/errors
 +
</tab><tab name="For SME 8">
 
  less /opt/roundcube/logs/errors
 
  less /opt/roundcube/logs/errors
* for sme9
+
</tab></tabs>
less /var/log/roundcubemail/
      
===Limit access to web interface===
 
===Limit access to web interface===
{{Note box|By default, the Roundcube webmail interface is accessible from the entire internet without requiring additional HTTP authentication. }}
+
{{Note box|By default, the Roundcube webmail interface is accessible from the entire internet without requiring additional HTTP authentication.}}
 +
Access to Roundcube can be fine-tuned by setting the corresponding property in the configuration DB of SME server:
 +
<tabs container=""><tab name="For SME 10 smeserver-roundcube-1.2-20 and newer">
 +
To change to public access do
 +
  config setprop roundcube access public
 +
  systemctl restart httpd-e-smith
 +
or to change to private access (lan + authorized external IP)
 +
  config setprop roundcube access private
 +
  systemctl restart httpd-e-smith
 +
 
 +
To disable roundcube
 +
  config setprop roundcube status disabled
 +
  signal-event smeserver-roundcube-update
 +
To enable roundcube
 +
  config setprop roundcube status enabled
 +
  signal-event smeserver-roundcube-update
 +
 
 +
</tab><tab name="For SME 10 before 1.2-20">
 +
config setprop roundcube PublicAccess OPTION
 +
 
 +
where OPTION is either of the following:
   −
Access to Roundcube can be fine-tuned by setting the corresponding property in the configuration DB of SME server:
+
        none            => No access
 +
        local            => Local network  (no password required)
 +
        local-pw        => Local network  (password required)
 +
        global          => Entire Internet (no password required, this is the default on SME)
 +
        global-pw        => Entire Internet (password required)
 +
        global-pw-remote => Entire Internet (password required outside local network)
 +
 
 +
For example, to restrict access to LAN only:
 +
 
 +
config setprop roundcube PublicAccess local
    +
To activate these changes to the configuration DB, run this command:
 +
systemctl restart httpd-e-smith
 +
</tab><tab name="For SME 8, 9">
 
  config setprop roundcube PublicAccess OPTION
 
  config setprop roundcube PublicAccess OPTION
   Line 63: Line 134:     
         none            => No access
 
         none            => No access
         local            => Local network (no password required)
+
         local            => Local network   (no password required)
         local-pw        => Local network (password required)
+
         local-pw        => Local network   (password required)
         global          => Entire Internet(no password required, this is the default on SME)
+
         global          => Entire Internet (no password required, this is the default on SME)
         global-pw        => Entire Internet(password required)
+
         global-pw        => Entire Internet (password required)
         global-pw-remote => Entire Internet(password required outside local network)
+
         global-pw-remote => Entire Internet (password required outside local network)
    
For example, to restrict access to LAN only:
 
For example, to restrict access to LAN only:
Line 73: Line 144:  
  config setprop roundcube PublicAccess local
 
  config setprop roundcube PublicAccess local
   −
To activate these changes to the configuration DB, run these commands
+
To activate these changes to the configuration DB, run these commands:
    
  expand-template /etc/httpd/conf/httpd.conf
 
  expand-template /etc/httpd/conf/httpd.conf
Line 79: Line 150:     
afterwards.
 
afterwards.
 +
</tab></tabs>
 +
   −
Note: For a general description of how DB settings work on SME server, have a look at [[Web Application RPM#New DB settings]].
     −
=== Customization ===
      +
Note: for a general description of how DB settings work on SME server, have a look at [[Web Application RPM#New DB settings]].
    +
=== Customization ===
 +
{| class="wikitable"
 +
|+
 +
config setprop roundcube
 +
!property
 +
!default
 +
!accepted
 +
!comment
 +
|-
 +
|Dbname
 +
|roundcube
 +
|
 +
|
 +
|-
 +
|DbPassword
 +
|
 +
|
 +
|
 +
|-
 +
|DbUser
 +
|
 +
|
 +
|
 +
|-
 +
|Name
 +
|RoundCube IMAP Client
 +
|
 +
|
 +
|-
 +
|URL
 +
|
 +
|string
 +
|you can add an URL to your domains as an http alias. Could be webmail (if default webmail is deactivated)
 +
|-
 +
|PluginsList
 +
|globaladdressbook,contextmenu,markasjunk,vcard_attachments,newmail_notifier,emoticons,managesieve,nextcloud_attachments
 +
|comma separated list
 +
|if you need to add or remove a plugin you need to alter this string in order to get it detected
 +
|-
 +
|access
 +
|public
 +
|private,public
 +
|
 +
|-
 +
|status
 +
|enabled
 +
|enabled,disabled
 +
|
 +
|-
 +
|MaxUploadSize
 +
|100M
 +
|
 +
|
 +
|-
 +
|MemoryLimit
 +
|512M
 +
|
 +
|
 +
|-
 +
|PHPBaseDir
 +
|/usr/share/roundcubemail:/etc/roundcubemail/:/var/log/roundcubemail:/var/lib/roundcubemail:/var/log/roundcube.log:/var/lib/php/roundcube:/home/e-smith/files/roundcube:/dev/urandom:/proc/meminfo:/usr/share/GeoIP/GeoLite2-Country.mmdb:/proc/cpuinfo
 +
|strings separated by :
 +
|the property will be added to the existing string
 +
|-
 +
|PHPmaxChildren
 +
|20
 +
|number
 +
|
 +
|-
 +
|PHPminServers
 +
|4
 +
|number
 +
|
 +
|-
 +
|PHPstartServers
 +
|6
 +
|number
 +
|
 +
|-
 +
|PHPmaxServers
 +
|8
 +
|number
 +
|
 +
|-
 +
|PHPmaxRequests
 +
|1000
 +
|number
 +
|
 +
|-
 +
|nextcloudURI
 +
|<nowiki>https://$DomainName/nextcloud</nowiki> or <nowiki>https://$nextcloud{'Virtualhost'}</nowiki>
 +
|
 +
|will override default, usefull if nextcloud is not on the same server
 +
|-
 +
|nextcloudFolder
 +
|Mail Attachments
 +
|string
 +
|can not be a subfolder
 +
|-
 +
|NCsoftlimit
 +
|<nowiki>$qmail{'MaxMessageSize'}||'25M'</nowiki>
 +
|number with M
 +
|limit size for attachements
 +
|-
 +
|nextcloudBehavior
 +
|prompt
 +
|prompt,upload
 +
|show dialog or upload directly
 +
|-
 +
|nextcloudVerifyCerts
 +
|true
 +
|true,false
 +
|allow you to override cert verification in case of self signed cert
 +
|}
 +
then
 +
signal-event roundcube-update
 
====Roundcube plugins====
 
====Roundcube plugins====
  −
  −
=====Default plugins shipped with smeserver-roundcube=====
  −
The smeserver-roundcube contrib is shipped with the following plugins already installed and enabled by default:
  −
  −
config getprop roundcube PluginsList
  −
  −
''globaladdressbook,carddav,calendar,libcalendaring,contextmenu,markasjunk2,vcard_attachments,newmail_notifier,emoticons,tasklist,managesieve''
      
=====Installing additional plugins=====
 
=====Installing additional plugins=====
Line 105: Line 285:     
'''Step 3:''' Add the package name and version to the "require:" block in /opt/roundcube/composer.json. Take attention to the comma (,) separator, it is really important!
 
'''Step 3:''' Add the package name and version to the "require:" block in /opt/roundcube/composer.json. Take attention to the comma (,) separator, it is really important!
* for sme8
+
<tabs container=""><tab name="For SME 10">
 +
cd /usr/share/roundcubemail
 +
/usr/bin/php74  /usr/local/bin/composer require cor/message_highlight --with-dependencies
 +
</tab><tab name="For SME 9">
 +
nano /usr/share/roundcubemail/composer.json
 +
 
 +
  "require": {
 +
      "php": ">=5.3.0",
 +
      "roundcube/plugin-installer": ">=0.1.3",
 +
      "johndoh/markasjunk2": "dev-release-1.0",
 +
      "johndoh/contextmenu": "dev-master",
 +
      "johndoh/globaladdressbook": "dev-release-1.0",
 +
        "cor/message_highlight": "dev-master"
 +
    },
 +
 
 +
</tab><tab name="For SME 8">
 
  nano /opt/roundcube/composer.json
 
  nano /opt/roundcube/composer.json
* for sme9
  −
nano /usr/share/roundcubemail/composer.json
      
   "require": {
 
   "require": {
Line 118: Line 311:  
         "cor/message_highlight": "dev-master"
 
         "cor/message_highlight": "dev-master"
 
     },
 
     },
 +
</tab></tabs>
    
'''Step 4:''' after each modification to composer.json, in order to automatically download and install the plugin launch  
 
'''Step 4:''' after each modification to composer.json, in order to automatically download and install the plugin launch  
Line 130: Line 324:  
  config getprop roundcube PluginsList
 
  config getprop roundcube PluginsList
 
   
 
   
  ''PluginsList=globaladdressbook,carddav,calendar,libcalendaring,contextmenu,markasjunk2,vcard_attachments,newmail_notifier,emoticons,tasklist,managesieve''
+
  ''PluginsList=globaladdressbook,carddav,calendar,libcalendaring,contextmenu,markasjunk,vcard_attachments,newmail_notifier,emoticons,tasklist,managesieve''
    
'''Step 5b:''' Add your newly installed plugin to the list (separated by a comma (,) and without spaces) and activate the change:
 
'''Step 5b:''' Add your newly installed plugin to the list (separated by a comma (,) and without spaces) and activate the change:
Line 147: Line 341:  
  rcplugin_update.sh
 
  rcplugin_update.sh
   −
====Customize Roundcube settings====
+
====Miscellaneous notes====
 
  −
For special needs you should create your personal template file if you want your config file will not be overwritten by the smeserver-roundcube templates. This also applies to Roundcube plugins in /opt/roundcube/plugins/ which occasionally come with their own config.inc.php or generic config.php.inc.dist which you can use to set default options.
  −
 
  −
* The config file for Roundcube itself is now templated, so changes need to be made in a new custom template fragment
  −
ll /etc/e-smith/templates/opt/roundcube/config/config.inc.php/
  −
  −
''10default_host          15Ldap_addressbook      20plugins_configuration  template-begin          template-end            ''
  −
 
  −
* check which setting you want to change with
  −
cat /opt/roundcube/config/defaults.inc.php
  −
 
  −
* Extend the default settings by adding a new template fragment and add your customizations/additions there, eg.:
  −
vim /etc/e-smith/templates/opt/roundcube/config/config.inc.php/30my_custom_settings
  −
 
  −
* Finally, expand the template:
  −
signal-event conf-roundcube
  −
 
  −
Likewise, plugin customization can be done by creating custom template fragments.
  −
For example, to set if and how the "vacation management panel" of the "managesieve" plugin should appear in the Roundcube webmail frontend:
  −
 
  −
* check the current configuration of the managesieve plugin:
  −
cat /opt/roundcube/plugins/managesieve/config.inc.php
  −
 
  −
* check current template fragments for the plugin configuration:
  −
ll /etc/e-smith/templates/opt/roundcube/plugins/managesieve/config.inc.php/
  −
 
  −
  ''...''
  −
  ''-rw-r--r-- 1 root root  266 30. Nov 19:45 30showvacation''
  −
  ''...''
  −
 
  −
* copy the relevant template fragment to /etc/e-smith/templates-custom/... and modify the setting: 
  −
mkdir -p /etc/e-smith/templates-custom/opt/roundcube/plugins/managesieve/config.inc.php
  −
 
  −
cp /etc/e-smith/templates/opt/roundcube/plugins/managesieve/config.inc.php/30showvacation /etc/e-smith/templates-custom/opt/roundcube/plugins/managesieve/config.inc.php/
  −
  −
vim /etc/e-smith/templates-custom/opt/roundcube/plugins/managesieve/config.inc.php/30showvacation
  −
 
  −
* Finally, expand the customized template:
  −
signal-event conf-roundcube
  −
 
  −
{{Note box|If you think your setting should be the SME default raise a bug}}
  −
 
  −
====Add an alternative URL====
  −
 
  −
If Roundcube should be reachable by an alternative URL to http://yourserver.net/roundcube, eg.
  −
 
  −
http://yourserver.net/webmail
  −
or
  −
http://yourserver.net/mail
  −
 
  −
{{warning box|The URL '''/webmail''' is by default used by the horde webmail, so you have to deactivate the webmail in the server-manager's "Configuration" -> "Email" panel if you want to use it for roundcube instead.}}
  −
 
  −
{{note box|this adds another url, it doesn't remove the default}}
  −
 
  −
config setprop roundcube URL webmail
  −
or
  −
config setprop roundcube URL mail
  −
 
  −
To enable your changes run these commands
  −
 
  −
expand-template /etc/httpd/conf/httpd.conf
  −
sv h /service/httpd-e-smith
  −
 
  −
*If you want to remove completely the new url
  −
 
  −
config delprop roundcube URL
  −
 
  −
then
  −
 
  −
expand-template /etc/httpd/conf/httpd.conf
  −
sv h /service/httpd-e-smith
  −
 
  −
===Miscellaneous notes===
      
====Mail filter support (Sieve)====
 
====Mail filter support (Sieve)====
Roundcube V1.0 on SME server comes with the managesieve plugin installed and enabled by default. The managesieve plugin adds additional menu items to the settings in Roundcube's webinterface to allow users to define mail filters and vacation messages in a convenient way. However, to make use of these features, the [[Dovecot-extras|smeserver-dovecot-extras]] contrib also has to be installed (this adds sieve script support and a manage sieve daemon to SME server). If these features are not wanted, Roundcube's managesieve plugin should be disabled (reverse [[#Adding additional plugins|Step 5 described above]], ie. remove <tt>managesieve</tt> from the list of installed plugins).
+
Roundcube on SME server comes with the managesieve plugin installed and enabled by default (sieverules has been deprecated and you must only use managesieve). The managesieve plugin adds additional menu items to the settings in Roundcube's webinterface to allow users to define mail filters and vacation messages in a convenient way.  
    
=====Troubleshooting=====
 
=====Troubleshooting=====
Line 232: Line 353:  
      
 
      
 
------------------
 
------------------
  −
==RoundCube V0.9.5 for SME Server==
  −
{{note box|RoundCube version 0.95beta is possibly deprecated. SME admins are encouraged to use the stable version 1.0 described above instead. This section is left more or less for reference.}}
  −
===Maintainer===
  −
[mailto:stephdl@de-labrusse.fr stephdl] Stéphane de Labrusse AKA [[User:stephdl|Stephdl]]<br />
  −
  −
[http://www.dungog.net Dungog.net] (Software) : original developper
  −
  −
===Description===
  −
RoundCube Webmail is a browser-based multilingual IMAP client with an application-like user interface. It provides full functionality you expect from an e-mail client, including MIME support, address book, folder manipulation, message searching and spell checking. For more information see ''http://www.roundcube.net/''. Actually roundcube is only available with ''beta'' status, but it runs very fast and stable.
  −
  −
===Installation===
  −
Install from the [http://mirror.contribs.org/releases/7/smecontribs/i386/repoview/ SME Contribs] repository issue the following command on the SME Server shell:
  −
  −
yum --enablerepo=smecontribs install smeserver-roundcube
  −
  −
If you do not want to restart your server
  −
signal-event conf-roundcube; signal-event console-save
  −
or
  −
signal-event post-upgrade; signal-event reboot
  −
  −
===Uninstallation===
  −
To remove the package issue the following command on the SME Server shell:
  −
rpm -e roundcube smeserver-roundcube
  −
  −
To remove mysql database and user, both are roundcube, see [[MySQL#Remove a database]] and [[MySQL#Remove a user]]. There is no need to reboot.
  −
  −
===Usage===
  −
http://servername/roundcube'' and logon with your SME Server user account.
  −
  −
===Logs===
  −
Logs are available :
  −
  −
less /opt/roundcube/logs/errors
  −
  −
=== Options ===
  −
You can fine tune access to roundcube with DB settings. For details have a look at [[Web Application RPM#New DB settings]].
  −
  −
  −
====Activate Roundcube Plugin====
  −
Plugins need to be allowed in the main.config.php of roundcube, you can also write  options in this file. If you want to modify options you have to modify the template in /etc/e-smith/templates/opt/roundcube/config/main.inc.php/20plugin<br />
  −
  −
Please add all plugins you want to activate in the command line below :
  −
$rcmail_config['plugins'] = array('plugin1','plugin2','plugin3');
  −
where "plugin*" is a valid name of plugin and a valid folder name in /opt/roundcube/plugins
  −
  −
see the file 20plugin for example
  −
  −
nano /etc/e-smith/templates/opt/roundcube/config/main.inc.php/20plugin
  −
save by ctrl+x
  −
expand-template /opt/roundcube/config/main.inc.php
  −
  −
====Personal settings====
  −
  −
For special needs you should create your personal template file if you want your config file will not be overwritten by the smeserver-roundcube templates.
  −
  −
* The config file is now templated, so changes need to be made in a new fragment
  −
ll /etc/e-smith/templates/opt/roundcube/config/config.inc.php/
  −
10default_host          15Ldap_addressbook      20plugins_configuration  template-begin          template-end           
  −
  −
* check which setting you want to change with
  −
cat /opt/roundcube/config/defaults.inc.php
  −
or for a plugin like managesieve
  −
cat /opt/roundcube/plugins/managesieve/config.inc.php.dist
  −
  −
* Add the new settings in a new file
  −
vim /etc/e-smith/templates/opt/roundcube/config/config.inc.php/30my_custom_settings
  −
or for a plugin like managesieve
  −
mkdir -p /etc/e-smith/templates-custom/opt/roundcube/plugins/managesieve/config.inc.php
  −
vim /etc/e-smith/templates-custom/opt/roundcube/plugins/managesieve/config.inc.php/10pluginsetting
  −
  −
* Now you have to expand
  −
signal-event conf-roundcube
  −
  −
  −
All plugins in /opt/roundcube/plugins/ comes with their own config.inc.php.dist which you can use to set default options.
  −
  −
{{Note box|If you think your setting should be the SME default raise a bug}}
  −
  −
====Limit access to roundcube====
  −
config setprop roundcube PublicAccess OPTION
  −
  −
OPTION is either of the following.
  −
  −
        none            => No access
  −
        local            => Local network  (no password required)
  −
        local-pw        => Local network  (password required)
  −
        global          => Entire Internet(no password required)
  −
        global-pw        => Entire Internet(password required)
  −
        global-pw-remote => Entire Internet(password required outside local network)
  −
  −
{{Note box|the global option is already the default option to control access to this contribs}}
  −
  −
config setprop roundcube PublicAccess global
  −
  −
To enable your changes run these commands
  −
  −
expand-template /etc/httpd/conf/httpd.conf
  −
sv h /service/httpd-e-smith
  −
  −
====Add a different URL====
  −
by example
  −
http://yourserver.net/webmail
  −
or
  −
http://yourserver.net/mail
  −
  −
{{warning box|This URL of '''/webmail''' is used by the horde webmail, so you have to deactivated the webmail in the server-manager}}
  −
  −
{{note box|this adds another url, it doesn't remove the default}}
  −
  −
config setprop roundcube URL webmail
  −
or
  −
config setprop roundcube URL mail
  −
  −
To enable your changes run these commands
  −
  −
expand-template /etc/httpd/conf/httpd.conf
  −
sv h /service/httpd-e-smith
  −
  −
*If you want to remove completely the new url
  −
  −
config delprop roundcube URL
  −
  −
then
  −
  −
expand-template /etc/httpd/conf/httpd.conf
  −
sv h /service/httpd-e-smith
  −
  −
  −
{{Note box|If you think your setting should be the SME default raise a bug}}
      
=== Bugs ===
 
=== Bugs ===
 
Please raise bugs under the SME-Contribs section in {{BugzillaFileBug|product=|component=|title=bugzilla}}and select the smeserver-roundcube component or use {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-roundcube|title=this link}}.
 
Please raise bugs under the SME-Contribs section in {{BugzillaFileBug|product=|component=|title=bugzilla}}and select the smeserver-roundcube component or use {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-roundcube|title=this link}}.
 
+
* smeserver-roundcube
 +
{{#bugzilla:columns=id,product,version,status,summary |sort=id|order=desc |component=smeserver-roundcube|noresultsmessage="No open bugs found."}}
 +
* roundcubemail_plugins
 +
{{#bugzilla:columns=id,product,version,status,summary |sort=id|order=desc |component=roundcubemail_plugins|noresultsmessage="No open bugs found."}}
    
[[Category: Contrib]]
 
[[Category: Contrib]]
3,054

edits

Navigation menu