Roundcube: Difference between revisions
(replace /etc/init.d with rc-service) |
|||
(12 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
{{Obsolete|This page needs to either be deleted (Alpine doesn't package Roundcube) or updated with directions for a current version of Alpine with Roundcube 1.6.2}} | |||
Roundcube is a free and open source webmail software for the masses, written in PHP. | [https://roundcube.net/ Roundcube] is a free and open source webmail software for the masses, written in PHP. | ||
== Installing PHP and Lighttpd == | == Installing PHP and Lighttpd == | ||
{{:Setting_Up_Lighttpd_With_FastCGI}} | |||
To add security, configure [[Lighttp_Https_access| https access]] in Lighttpd. | |||
Add additional packages | |||
{{Cmd|apk add php-openssl php-intl}} | |||
== vHost == | |||
{{Cmd|vi /etc/lighttpd/lighttpd.conf}} | |||
* Uncomment this | * Uncomment this line: | ||
"mod_simple_vhost | "mod_simple_vhost" | ||
* Add this lines | * Add this lines | ||
Line 46: | Line 32: | ||
} | } | ||
* | * Restart the web service: | ||
{{Cmd|rc-service lighttpd restart}} | |||
* Set the php timezone acording to: [ | * Set the php timezone acording to: [https://php.net/manual/en/timezones.php] | ||
{{Cmd|vi /etc/php/php.ini}} | |||
* Uncomment and set the date.timezone ='' (e.g. 'America/Asuncion') | * Uncomment and set the date.timezone ='' (e.g. 'America/Asuncion') | ||
Line 64: | Line 46: | ||
* Create folder | * Create folder | ||
{{Cmd|mkdir -p /usr/share/webapps | |||
cd /usr/share/webapps}} | |||
* Download | * Download | ||
{{Cmd|wget <nowiki>https://downloads.sourceforge.net/project/roundcubemail/roundcubemail/0.5.2/roundcubemail-0.5.2.tar.gz</nowiki>}} | |||
* Unpack | * Unpack | ||
{{Cmd|tar zxvf roundcubemail-0.5.2.tar.gz}} | |||
* Rename folder and change permissions | * Rename folder and change permissions | ||
{{Cmd|mv roundcubemail-0.5.2 roundcubemail | |||
chmod 775 -R roundcubemail}} | |||
* Create the symlynk | * Create the symlynk | ||
{{Cmd|mv /var/www/localhost/htdocs/ /var/www/localhost/htdocs.old | |||
ln -s /usr/share/webapps/roundcube/ /var/www/localhost/htdocs/}} | |||
* Create logs folder | * Create logs folder | ||
{{Cmd|mkdir -p /var/log/roundcube/ | |||
chown -R lighttpd:lighttpd /var/log/roundcube/ | |||
chmod 775 /var/log/roundcube/ -R}} | |||
== Postgres installation == | == Postgres installation == | ||
Line 95: | Line 77: | ||
* Add postgresql, create and configure database | * Add postgresql, create and configure database | ||
{{Cmd|apk add postgresql postgresql-client | |||
rc-service postgresql setup | |||
rc-service postgresql start | |||
rc-update add postgresql}} | |||
{{Cmd|su postgres | |||
createuser roundcube}} | |||
Answers: N,N,Y | Answers: N,N,Y | ||
Line 108: | Line 90: | ||
* Shall the new role be allowed to create more new roles? (y/n) y | * Shall the new role be allowed to create more new roles? (y/n) y | ||
{{Cmd|createdb -O roundcube -E UNICODE -T template0 roundcubemail}} | |||
'''Note:''' Set the same timzone you use in the php.ini (e.g. 'America/Asuncion') | '''Note:''' Set the same timzone you use in the php.ini (e.g. 'America/Asuncion') | ||
Line 122: | Line 104: | ||
== Roundcube Web Configuration == | == Roundcube Web Configuration == | ||
Start your browser and visit: <nowiki>https://round.cube.mail.ipaddres/installer/</nowiki> | |||
Roundcube Webmail Installer have 3 steps: | |||
* Check environment | |||
::Check if all is ok, click NEXT | |||
* Create config | |||
Here you need to set: | |||
:a. General configuration | |||
::product_name | |||
:::'''Your Country Branch Webmail Access''' | |||
::temp_dir | |||
:::'''/tmp/''' | |||
::identities_level | |||
:::'''one identity with possibility to edit all params''' | |||
:b. Logging & Debugging | |||
::log_driver | |||
:::'''syslog''' | |||
::log_dir | |||
:::/var/log/roundcube/ | |||
: c. Database setup | |||
::db_dsnw | |||
:::Database settings for read/write operations: | |||
:::'''PgSQL''' Database type | |||
:::'''localhost''' Database server | |||
:::'''roundcubemail''' Database name | |||
:::'''roundcube''' Database user name | |||
:::'''*********''' Database password | |||
:d. IMAP Settings | |||
::default_host | |||
::The IMAP host(s) chosen to perform the log-in | |||
:::'''your.exchange.ip.address''' | |||
::username_domain | |||
:::'''your.domain''' | |||
:e. SMTP Settings | |||
::smtp_server | |||
:::'''your.exchange.ip.address''' | |||
Now need to download and copy both files (main.inc.php and db.inc.php) to /etc/roundcube/ | |||
* Test config | |||
:: Test the SMTP config sending a mail and the IMAP config using a username and password. | |||
== Final Steps== | |||
* Remove or rename the /usr/share/webapps/roundcube/installer/ folder. | |||
* You should now be able to get to roundcube at: <nowiki>https://round.cube.mail.ipaddres/</nowiki> | |||
[[Category:Mail]] | |||
[[Category:PHP]] | |||
[[Category:SQL]] |
Latest revision as of 10:25, 17 November 2023
This material is obsolete ... This page needs to either be deleted (Alpine doesn't package Roundcube) or updated with directions for a current version of Alpine with Roundcube 1.6.2 (Discuss) |
Roundcube is a free and open source webmail software for the masses, written in PHP.
Installing PHP and Lighttpd
Basic Installation
For installing the additional packages first activate community packages and update the package index
Install the required packages:
# apk add lighttpd php82 fcgi php82-cgi
Configure Lighttpd
Edit lighttpd.conf (/etc/lighttpd/lighttpd.conf) and uncomment the line:
Contents of /etc/lighttpd/lighttpd.conf
Edit mod_fastcgi.conf (/etc/lighttpd/mod_fastcgi.conf), find and change /usr/bin/php-cgi to /usr/bin/php-cgi82.
Contents of /etc/lighttpd/mod_fastcgi.conf
Start lighttpd
service and add it to default runlevel
# rc-service lighttpd start # rc-update add lighttpd default
To add security, configure https access in Lighttpd.
Add additional packages
apk add php-openssl php-intl
vHost
vi /etc/lighttpd/lighttpd.conf
- Uncomment this line:
"mod_simple_vhost"
- Add this lines
simple-vhost.server-root = "/var/www/localhost/htdocs/" simple-vhost.default-host = "/" simple-vhost.document-root = "www/"
$SERVER["socket"] == "round.cube.mail.ipaddres:443" { ssl.engine = "enable" ssl.pemfile = "/etc/lighttpd/server-bundle.pem" }
- Restart the web service:
rc-service lighttpd restart
- Set the php timezone acording to: [1]
vi /etc/php/php.ini
- Uncomment and set the date.timezone = (e.g. 'America/Asuncion')
Download and Install Rouncube
- Create folder
mkdir -p /usr/share/webapps cd /usr/share/webapps
- Download
wget https://downloads.sourceforge.net/project/roundcubemail/roundcubemail/0.5.2/roundcubemail-0.5.2.tar.gz
- Unpack
tar zxvf roundcubemail-0.5.2.tar.gz
- Rename folder and change permissions
mv roundcubemail-0.5.2 roundcubemail chmod 775 -R roundcubemail
- Create the symlynk
mv /var/www/localhost/htdocs/ /var/www/localhost/htdocs.old ln -s /usr/share/webapps/roundcube/ /var/www/localhost/htdocs/
- Create logs folder
mkdir -p /var/log/roundcube/ chown -R lighttpd:lighttpd /var/log/roundcube/ chmod 775 /var/log/roundcube/ -R
Postgres installation
- Add postgresql, create and configure database
apk add postgresql postgresql-client rc-service postgresql setup rc-service postgresql start rc-update add postgresql
su postgres createuser roundcube
Answers: N,N,Y
- Shall the new role be a superuser? (y/n) n
- Shall the new role be allowed to create databases? (y/n) n
- Shall the new role be allowed to create more new roles? (y/n) y
createdb -O roundcube -E UNICODE -T template0 roundcubemail
Note: Set the same timzone you use in the php.ini (e.g. 'America/Asuncion')
psql roundcubemail ALTER USER roundcube WITH PASSWORD 'the_new_password'; ALTER DATABASE roundcubemail SET timezone TO 'America/Asuncion'; \c - roundcube \i /usr/share/webapps/roundcube/SQL/postgres.initial.sql roundcubemail=> \q exit
Roundcube Web Configuration
Start your browser and visit: https://round.cube.mail.ipaddres/installer/
Roundcube Webmail Installer have 3 steps:
- Check environment
- Check if all is ok, click NEXT
- Create config
Here you need to set:
- a. General configuration
- product_name
- Your Country Branch Webmail Access
- temp_dir
- /tmp/
- identities_level
- one identity with possibility to edit all params
- product_name
- b. Logging & Debugging
- log_driver
- syslog
- log_dir
- /var/log/roundcube/
- log_driver
- c. Database setup
- db_dsnw
- Database settings for read/write operations:
- PgSQL Database type
- localhost Database server
- roundcubemail Database name
- roundcube Database user name
- ********* Database password
- db_dsnw
- d. IMAP Settings
- default_host
- The IMAP host(s) chosen to perform the log-in
- your.exchange.ip.address
- username_domain
- your.domain
- e. SMTP Settings
- smtp_server
- your.exchange.ip.address
- smtp_server
Now need to download and copy both files (main.inc.php and db.inc.php) to /etc/roundcube/
- Test config
- Test the SMTP config sending a mail and the IMAP config using a username and password.
Final Steps
- Remove or rename the /usr/share/webapps/roundcube/installer/ folder.
- You should now be able to get to roundcube at: https://round.cube.mail.ipaddres/