Installera Roundcube och PostgreSQL i FreeBSD: Difference between revisions
mNo edit summary |
mNo edit summary |
||
Line 11: | Line 11: | ||
}} | }} | ||
FreeBSD kör default med UTF-8 för PostgreSQL databaser, så man kan direkt initiera servern: | FreeBSD kör default med UTF-8 för PostgreSQL databaser, så man kan direkt initiera servern: | ||
{{RootCmd|/usr/local/etc/rc.d/postgresql initdb|output= | {{RootCmd|/usr/local/etc/rc.d/postgresql initdb|output=The files belonging to this database system will be owned by user "pgsql".<br> | ||
This user must also own the server process.<br> | This user must also own the server process.<br> | ||
<br> | <br> | ||
Line 17: | Line 17: | ||
...<br> | ...<br> | ||
Success. You can now start the database server using:<br> | Success. You can now start the database server using:<br> | ||
/usr/local/bin/postgres -D /usr/local/pgsql/data<br> | |||
or<br> | or<br> | ||
/usr/local/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start | |||
}} | }} | ||
Revision as of 10:29, 7 January 2012
Denna guide visar hur man installerar Roundcube webmail och PostgreSQL i FreeBSD 8.0. Guiden förutsätter att det redan finns en fungerande SMTP resp. IMAP server samt en webserver med PHP5 stöd. Guiden kommer inte att visa hur man skapar en adressbok i LDAP, utan efter denna installation kan man lagra sin adressbok i databasen.
Guiden använder portmaster för installation och konfigrurering av ports. Det går dock bra att köra vanliga make install etc. om man hellre vill det.
Installera PostgreSQL
Installera PostgreSQL servern:
Även PostgreSQL klienten kommer att installeras. Välj default konfiguration. Editera /etc/rc.conf så att servern startas vid boot:
postgresql_enable="YES"
FreeBSD kör default med UTF-8 för PostgreSQL databaser, så man kan direkt initiera servern:
När initieringen är klar, är det dax att starta servern:
Skapa en databas-användare och databas
För att kunna köra PostgreSQL kommandona createuser & createdb, måste man ha rättighet att göra det. Direkt efter installationen är det bara användaren pgsql som har rättighet. Så byt till denna användare:
Skapa en PostgreSQL-användare som inte kan skapa databaser (-D) eller andra roller (-R) och som inte är superuser (-S) och sätt ett lösenord (-P):
Skapa sedan en database som heter roundcube och som ägs av <username>, character encoding sätter vi försäkerhetsskull till UTF-8:
Logga nu ut som pgsql användaren:
Installera Roundcube
Roundcube kan installeras från ports, men webapplikationer kan lika gärna installeras för hand. Man får bättre kontroll då och kan enkelt följa deras installationsanvisningar. Vi väljer att installera manuellt. Ladda ner det kompletta roundcube-0.3.1 paketet ifrån http://roundcube.net/download.
Gå till din webroot, t.ex. /usr/local/www/apache22/data och packa upp roundcube-0.3.1 här. Då får då en mapp som heter roundcubemail-0.3.1. Jag tycker namnet är lite lång så jag brukar döpa om mappen till roundcube-0.3.1. Filerna kan ibland ha lite konstiga ägare så börja med att försäkra dig att root äger alla filer:
För i framtiden kunna enklare uppgradera till en annan version, skapa en länk:
och använd sökvägen roundcube vid installatationen.
Byt till roundcube katalogen och fixa så att webservern kan skriva till katalogerna temp och logs:
Om du har en default PHP5 installation så behöver några extensions installeras. Kör:
och installera:
- FILEINFO
- GD
- MBSTRING
- MCRYPT
- OPENSSL
- PGSQL
Komihåg att apache behöver omstartas när nya PHP extensions har installerats. Öppna en webläsare och gå till adressen: http://server-ip/roundcube/installer/
När du startar installationen kommer roundcube kolla nödvändigt PHP stöd på servern. Du bör se något som har OK på dett mesta:
Får du NOK på date.timezone, editera /usr/local/etc/php.ini och lägg till:
date.timezone = Europe/Stockholm
Roundcube har en .htaccess fil med bl.a. suhosin inställningar. Se till att apache är inställd så att denna fil får köra sina direktiv. Klicka på Next när du har fått OK på allt som enligt bilden (SQLite behövs inte).
Fyll uppgifterna på nästa sida enligt önskemål och server. Under databas inställningarna så väljer du PgSQL som databas och fyller i IP adressen eller localhost under databas server, anger användarnamnet och lösenordet på PostgreSQL användaren du skapade i steg 1. Har du IMAP resp SMTP server på samma maskin som roundcube, så anger du bara localhost under dessa fält. Kör du IMAP väljer du lämpligen bort valet att cache:a mail i databasen.
Gå vidare till nästa sida. Där kommer du kunna kopiera eller ladda ner dina konfigfiler för roundcube:
Välj att ladda ner db.inc.php och main.inc.php. Ladda upp dessa filer till servern och lägg dem under config katalogen. Eftersom db.inc.php innehåller användarnamn och lösenord till databasen, så bör den skyddas. Ändra ägare och rättighet till följande:
-rw-r----- 1 root www 2334 Dec 27 01:36 db.inc.php
Nu kan bara root editera den och gruppen www läsa den. När filerna är på plats, klicka på Continue knappen. Du kommer då få ett meddelande att databasen inte är initierad:
Klicka på Intialize database för att göra det. Sedan kan du testa dina IMAP resp SMTP inställningar om du vill.
Installationen är klar och innan du provar att logga in, så ska installer katalogen under roundcube raderas. Efter det är gjort, gå till sidan http://server-ip/roundcube/ och prova att logga in med ditt IMAP konto.