Installera qmail och courier-imap i FreeBSD: Difference between revisions
mNo edit summary |
|||
Line 145: | Line 145: | ||
a1 logout | a1 logout | ||
[[Category: | [[Category:Guide]] |
Revision as of 11:56, 21 April 2013
Denna guide är obsolete. Rekommenderar att man installerar Postfix och Dovecot istället, se Postfix och Dovecot installationsguide.
Här kommer en kort guide hur man kan installera qmail och courier-imap i FreeBSD. Vi kommer låta daemontools ta hand om att starta och stoppa qmail daemonerna.
Installation av qmail
- Installera qmail:
> cd /usr/ports/mail/qmail > make install clean
Välj att lägga tillföljande patchar vid konfigureringen av qmail:
- SMTP_AUTH_PATCH - QMAILQUEUE_PATCH - BIG_TODO_PATCH - BIG_CONCURRENCY_PATH - OUTGOINGIP_PATCH
Välj bort:
- RCDLINK
- Installera daemontools:
> cd /usr/ports/sysutils/daemontools > make install clean
- Installera ucspi-tcp:
> cd /usr/ports/sysutils/ucspi-tcp > make install clean
- Installera qmail-conf:
> cd /usr/ports/mail/qmail-conf > make install clean
Konfigurering av qmail
- Stoppa sendmail och se till att vi inte startar den i fortsättningen:
> /etc/rc.d/sendmail stop > echo 'sendmail_enable="NONE"' >> /etc/rc.conf
Eftersom vi inte kommer använda sendmail något mer, så kan vi utelämna sendmail vid nästa bygge av systemet:
> echo 'NO_SENDMAIL="YES"' >> /etc/make.conf
- Se till att vi kan starta svscan:
> echo 'svscan_enable="YES"' >> /etc/rc.conf
- Gå till katalogen /var/qmail/control och skapa följande filer med resp. innehåll:
> cd /var/qmail/control > cat defaultdelivery # Uncomment the next line for .forward support #|dot-forward .forward ./.maildir/
> cat defaultdomain <foo.example.com>
> cat locals localhost <foo.example.com>
> cat me <foo.example.com>
> cat plusdomain <foo.example.com>
> cat rcpthosts localhost 192.168.0.0/255.255.255.0 <foo.example.com>
> cat smtproutes :smtp.bredband.net
Du ska ersätta <foo.example.com> med ditt fullständiga hostname. Även IP adresserna i rcpthosts kanske måste justeras. Du måste även ändra SMTP servern i smtproutes så den matchar din ISP:s SMTP server för utgående mail.
- Konfigurera qmail-smtpd så att bara localhost samt klienter i ditt LAN kan använda tjänsten:
> /var/qmail/bin/qmail-smtpd-conf qmaild qmaill /var/qmail/service/smtpd > cd /var/qmail/service/smtpd/ > echo "200" > env/CONCURRENCY > echo '127.0.0.1:allow,RELAYCLIENT=""' > tcp > echo '192.168.0.:allow,RELAYCLIENT=""' > tcp > make
Ändra IP adressen 192.168.0. så att den matchar ditt LAN och nätmask. Gör skriptet exekverbart:
> chmod +x run
- Skapa /var/qmail/rc skriptet:
> echo '#!/bin/sh' > /var/qmail/rc > echo 'exec env - PATH="/var/qmail/bin:$PATH" \' >> /var/qmail/rc > echo 'qmail-start ./.maildir/ /usr/local/bin/multilog t /var/log/qmail qmaill' >> /var/qmail/rc > chmod 755 /var/qmail/rc
- Konfigurera qmail:
> /var/qmail/bin/qmail-delivery-conf qmaill /var/qmail/service/qmail
- Skapa qmail log katalog:
> mkdir /var/log/qmail > chmod 750 /var/log/qmail > chown qmaill /var/log/qmail
- Skapa länkar till de tjänster vi vill att daemontools ska starta:
> mkdir /var/service > ln -s /var/qmail/service/smtpd /var/service/smtpd > ln -s /var/qmail/service/qmail /var/service/qmail
- Starta igång qmail och smtpd:
> /usr/local/etc/rc.d/svscan.sh start
Skapa inkorg för användare
De användare som vill / ska kunna ta emot mail, måste skapa en ~/.maildir katalog m.h.a. kommandot:
> /var/qmail/bin/maildirmake ~/.maildir
Notera: De måste själva, inte root, skapa inkorgen så att rättigheterna blir korrekta.
Test av qmail
Kolla att lokala mail kommer fram genom att skicka ett mail till en användare (som redan har skapat en inkorg):
> echo "to: foo" | /var/qmail/bin/qmail-inject
Om allt fungerar som det ska, bör det finnas en fil i ~foo/.maildir/new. Om detta fungerar så kan du prova att skicka ett mail utifrån till någon användare och kolla att de kommer fram.
Installation av courier-imap
Installera courier-imap:
> cd /usr/ports/mail/courier-imap > make install clean
Du kan välja bort IPV6 stöd om du inte använder det.
Konfigurering av courier-imap
- Ändra namnet på inkorgen. Editera filen /usr/local//etc/courier-imap/imapd och ändra:
MAILDIRPATH=Maildir
till
MAILDIRPATH=.maildir
Vi kommer bara att låta användarna logga in till IMAP servern via deras vanliga UNIX konto, editera därför filen /usr/local/etc/authlib/authdaemonrc och ändra:
authmodulelist="authuserdb authvchkpw authpam authldap authmysql authpgsql"
till
authmodulelist="authpam"
- Starta courier-imap daemonerna:
echo 'courier_authdaemond_enable="YES"' >> /etc/rc.conf echo 'courier_imap_imapd_enable="YES"' >> /etc/rc.conf /usr/local/etc/rc.d/courier-authdaemond.sh start /usr/local/etc/rc.d/courier-imap-imapd.sh start
Test av courier-imap
- Du kan testa att IMAP servern är igång genom att köra följande:
> telnet 127.0.0.1 143
Du ska då se:
Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc. See COPYING for distribution information.
Pröva att logga in:
a1 login <user> <passwd>
Om allt fungerar som det ska, visas:
a1 OK LOGIN Ok.
Logga ut:
a1 logout