HowTo - Snabbuppsättning av en enkel mailserver

Här kan du dela med dig av dina bästa tips och knep.
Kategoriregler
Här ligger de utförliga instruktionerna vi kan tänkas behöva. Leta här om du tex behöver installera nåt program eller sätta upp någon funktion. Starta inte trådar utan att ha ett svar.
Användarvisningsbild
northface
Inlägg: 501
Blev medlem: 15 dec 2007, 02:20
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av northface »

Nedan finns en handledning för att sätta upp en enkel mailserver (IMAP). När du fått GRUNDINSTALLATIONEN att fungera kan du lägga på SASL, TLS, SSL, ANTIVIRUS, ANTISPAM och WEBMAIL efter önskemål.

Jag har lagt in mailservern på en ren installation av Hardy Heron (serverversionen) och verifierat att allt fungerar som avsett.

Förutsättning:
- Maskinen står bakom en router/brandvägg och har ett fast internt ip, t.ex. 192.168.19.27
- Ett konto för dynamisk DNS finns med aktiverat MX record, t.ex. hos no-ip.com med domänen nisse.no-ip.net
- Du kör smtp genom din ISP:s mailservrar (inget krav).


GRUNDINSTALLATION

Installera postfix. Vid installationen välj t.ex. smarthost.

Kod: Markera allt

sudo apt-get install postfix
Ta en kopia på main.cf

Kod: Markera allt

sudo cp /etc/postfix/main.cf /etc/postfix/main.cf.orginal
Öppna main.cf

Kod: Markera allt

sudo nano /etc/postfix/main.cf
ersätt innehållet med nedan, ändra rödmarkerat och spara:

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
myhostname = localhost
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = maskinnamnet.nisse.no-ip.net, nisse.no-ip.net, localhost.nisse.no-ip.net, localhost.localdomain, localhost
relayhost = din ISP:s relay server (typ smtp.bredband.net)
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128, 192.168.19.0/24
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
home_mailbox = Maildir/

Installera Dovecot

Kod: Markera allt

sudo apt-get install dovecot-imapd
Öppna dovecot.conf

Kod: Markera allt

sudo nano /etc/dovecot/dovecot.conf
Leta upp följande två stycken och justera så att de ser ut så här och spara:

# Protocols we want to be serving: imap imaps pop3 pop3s
# If you only want to use dovecot-auth, you can set this to "none".
protocols = imap

mail_location = maildir:~/Maildir
# mail_location = mbox:~/mail:INBOX=/var/mail/%u
# mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n

Starta om Postfix och Dovecot

Kod: Markera allt

sudo /etc/init.d/postfix restart

Kod: Markera allt

sudo /etc/init.d/dovecot restart
Klart!

I det fall Dovecot inte skapar Maidir får vi själva göra detta. Vi börjar med att fixa till så att Maildir skapas automatiskt för varje nytillkommande användare;

Kod: Markera allt

sudo maildirmake.dovecot /etc/skel/Maildir
sudo maildirmake.dovecot /etc/skel/Maildir/.Drafts
sudo maildirmake.dovecot /etc/skel/Maildir/.Sent
sudo maildirmake.dovecot /etc/skel/Maildir/.Trash
sudo maildirmake.dovecot /etc/skel/Maildir/.Templates

För redan existerande användare får vi göra det manuellt;

Kod: Markera allt

sudo cp -r /etc/skel/Maildir /home/nisse/
sudo chown -R nisse:nisse /home/nisse/Maildir
sudo chmod -R 700 /home/nisse/Maildir
Din mailklient:
Servernamn för IMAP och SMTP: maskinnamnet.nisse.no-ip.net
IMAP Port:143
IMAP säkerhet anslutning: Never
SMTP Port:25
SMTP säkerhet anslutning: No

Om klientmaskinen finns på det lokala nätverket öppna dess hostsfil:

Kod: Markera allt

sudo nano /etc/hosts
Lägg till och spara:
192.168.19.27 maskinnamnet.nisse.no-ip.net

Öppna port 25 (och port143) i din router/brandvägg för inkommande trafik till mailservern och provkör.

När du fått allt att fungera kontrollera att mailservern inte blivit felkonfigurerad och kan användas för relay-trafik.
http://www.antispam-ufrj.pads.ufrj.br/test-relay.html


SASL (Simple Authentication and Security Layer)

I Postfix main.cf finns raden;
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128, 192.168.19.0/24
Den säger att vi måste sitta på nätet 192.168.19.0/24 för att kunna skicka epost med vår klient. Försöker vi skicka från någon annan plats, t.ex. från ett externt nätverk erhålls "relay access denied". Vi löser detta genom att autenticera oss i samband med att vi skickar eposten med SMTP.

Installera:

Kod: Markera allt

sudo apt-get install sasl2-bin libsasl2 libsasl2-modules
Ändra i filen saslauthd

Kod: Markera allt

sudo nano /etc/default/saslauthd
START=yes
MECHANISMS="pam"
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r"

Ändra (ev.skapa) smtpd.conf och kontrollera att raderna nedan finns.

Kod: Markera allt

sudo nano /etc/postfix/sasl/smtpd.conf
pwcheck_method: saslauthd
mech_list: plain login
allow_plaintext: true

Lägg till följande rader i Postfix main.cf

Kod: Markera allt

sudo nano /etc/postfix/main.cf
smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes

Se oxå till att följande rader finns med i main.cf
smtpd_recipient_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination

Observera att varje rad under smtpd_recipient_restrictions = måste inledas med ett mellanslag!!!

Då Postfix normalt körs med chroot kan den inte kommunicera med saslauthd. Vi måste göra några anpassningar:

Kod: Markera allt

sudo mkdir -p /var/spool/postfix/var/run/saslauthd
sudo chgrp sasl /var/spool/postfix/var/run/saslauthd
sudo adduser postfix sasl
Klart! Starta om;

Kod: Markera allt

sudo /etc/init.d/postfix restart
sudo /etc/init.d/saslauthd restart
På epost klienten ändras inställningar för smtpserver så att "säkerhet och autenticering" sker med "namn och lösenord".


TLS (Transport Layer Security)

Det kan, som Lars säger, vara bra att sätta upp mailservern så att den kan köra krypterad trafik med anslutna klienter och förhandla med andra mailservrar om TLS anslutning,

Öppna main.cf i Postfix

Kod: Markera allt

sudo nano /etc/postfix/main.cf
Klistra in, under raden:readme_directory = none, nedanstående och spara.

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_loglevel = 1

Starta om Postfix

Kod: Markera allt

sudo /etc/int.d/postfix restart
Kontrollera TLS funktionen.
Öppna en terminal på maskinen med mailservern.
Du skriver det fetstilade och mailservern svarar.

# telnet nisse.no-ip.net 25
Trying 111.222.333.444...
Connected to nisse.no-ip.net.
Escape character is '^]'.
220 localhost ESMTP Postfix (Ubuntu)
EHLO nisse.no-ip.net
250-localhost
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit

Finns raden 250-STARTTLS ska TLS vara aktiverat.

Glöm sedan inte att ändra till TLS i SMTP inställningarna i mailklienten!


SSL med Dovecot

För att även kryptera mejlen när man hämtar dessa med Dovecot gör så här:

Lägg till imaps i dovecot.conf så att aktuellt stycke ser ut så här;
# Protocols we want to be serving: imap imaps pop3 pop3s
# If you only want to use dovecot-auth, you can set this to "none".
protocols = imap imaps

Aktivera även ssl lite längre ned på sidan
# PEM encoded X.509 SSL/TLS certificate and private key. They're opened before
# dropping root privileges, so keep the key file unreadable by anyone but
# root.
ssl_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
ssl_key_file = /etc/ssl/private/ssl-cert-snakeoil.key

Spara och starta om Dovecot.

I email klienten ändra IMAP serverns säkerhetsinställningar till SSL port 993.


ANTIVIRUS

Till vår mailserver använder vi ClamSMTP. Det är en SMTP proxy daemon, som kollar virus m.h.a ClamAV.

Installera

Kod: Markera allt

sudo apt-get install clamsmtp clamav-freshclam
Öppna konfigurationsfilen för clamsmtp

Kod: Markera allt

sudo nano /etc/clamsmtpd.conf
Ändra följande rader så att de ser ut så här;
OutAddress: 10026
Listen: 127.0.0.1:10025

Öppna main.cf i Postfix.

Kod: Markera allt

sudo nano /etc/postfix/main.cf
Klistra in följande 3 rader och spara:

#clamsmtp
content_filter = scan:[127.0.0.1]:10025
receive_override_options = no_address_mappings

Öppna master.cf i Postfix.

Kod: Markera allt

sudo nano /etc/postfix/master.cf
Klistra in följande 13 rader och spara:

# AV scan filter (used by content_filter)
scan unix - - n - 16 smtp
-o smtp_send_xforward_command=yes
# For injecting mail back into postfix from the filter
127.0.0.1:10026 inet n - n - 16 smtpd
-o content_filter=
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_helo_restrictions=
-o smtpd_client_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks_style=host
-o smtpd_authorized_xforward_hosts=127.0.0.0/8

Starta om maskinen.

KLART - Nu virus-scannas alla utgående och inkommande mail till servern!

Testa att skicka ett mail till mailservern. Titta i mailets header (visa allt). Här ska nu finnas en rad liknande:
X-Virus-Scanned: ClamAV using ClamSMTP
om allt fungerar som det ska. Ta även en titt i mailloggen.

Uppdateringsfrekvensen av virusdefinitioner är per default satt till varje timma. Frekvensen kan ändras i /etc/clamav/freshclam.conf

Logg över uppdateringarna finns i /var/log/clamav/freshclam.log


ANTISPAM

Vi väljer att använda Postgrey (greylisting) och DNSBL/RBL i stället för de tyngre spamdödarna ASSP och Spamassassin. Vad Postgrey och DNSBL/RBL gör för att förhindra spam finner du här http://en.wikipedia.org/wiki/Greylisting respektive http://en.wikipedia.org/wiki/DNSBL

DNSBL/RBL

Öppna main.cf i Postfix

Kod: Markera allt

sudo nano /etc/postfix/main.cf
Klistra in följande och spara

smtpd_helo_required = yes
disable_vrfy_command = yes

smtpd_recipient_restrictions = permit_sasl_authenticated,
permit_mynetworks,
reject_invalid_hostname,
reject_non_fqdn_hostname,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_sender_domain,
reject_unknown_recipient_domain,
reject_unauth_destination,
reject_rbl_client dnsbl.njabl.org,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client dnsbl.sorbs.net,
reject_rbl_client zen.spamhaus.org,
permit

smtpd_data_restrictions = reject_unauth_pipelining,
permit

Observera att varje rad under smtpd_recipient_restrictions = måste inledas med ett mellanslag!!!

Postgrey

Installera Postgrey

Kod: Markera allt

sudo apt-get install postgrey
Öppna filen

Kod: Markera allt

sudo nano /etc/default/postgrey
Ändra raden till:
POSTGREY_OPTS="--inet=127.0.0.1:60000 --whitelist-clients=/etc/postgrey/whitelist_clients"

Öppna main.cf i Postfix

Kod: Markera allt

sudo nano /etc/postfix/main.cf
Klistra in följande under raden reject_unauth_destination,
check_policy_service inet:127.0.0.1:60000,

KLART - Starta om maskinen!

Postgrey. Observera att första gången en avsändare skickar ett mail till din mailserver tar det ca 5-30 min innan din mailserver accepterar mailet. Vill man undvika detta för önskade/kända domäner kan man lägga in dessa i /etc/postgrey/whitelist_clients. Då behandlas de inte av Postgrey.


WEBMAIL

RoundCubeMail
http://roundcube.net/

RoundCubeMail har varit nämnt i tidigare trådar så jag valde det som ett första exempel.

Förutsättning:
Mysql och apache2 är installerade

Hämta RoundCubeMail

Kod: Markera allt

wget http://kent.dl.sourceforge.net/sourceforge/roundcubemail/roundcubemail-0.2-beta.tar.gz
Packa upp

Kod: Markera allt

tar xvfz roundcubemail-0.2-beta.tar.gz
Skapa en ny folder webmail och kopiera filerna dit

Kod: Markera allt

mkdir ~/webmail && cp -r ~/roundcubemail-0.2-beta/* ~/webmail
Flytta folder webmail

Kod: Markera allt

sudo mv ~/webmail /var/www/webmail
Ändra ägare till 2 foldrar med dess filer. Apache ska kunna skriva till dom.

Kod: Markera allt

sudo chown -R www-data /var/www/webmail/temp

Kod: Markera allt

sudo chown -R www-data /var/www/webmail/logs
Skapa nu en databas

Kod: Markera allt

sudo mysql -u root -p

Kod: Markera allt

CREATE DATABASE roundcubemail;

Kod: Markera allt

GRANT ALL PRIVILEGES ON roundcubemail.* TO username@localhost IDENTIFIED BY 'password';
Ersätt databasnamn, usernamn och password enligt eget önskemål. Skriv upp dessa - behövs senare!

Kod: Markera allt

FLUSH PRIVILEGES;

Kod: Markera allt

QUIT
Surfa till:
http://nisse.no-ip.net/webmail/installer/

START INSTALLATION knapp

Det är möjligt att följande "NOT OK" erhålls:
magic_quotes_gpc: NOT OK(is '1', should be '0')
I såfall - öppna php.ini

Kod: Markera allt

sudo nano /etc/php5/apache2/php.ini
Sök upp raden magic_quotes_gpc och sätt den till OFF och spara.

Starta om Apache

Kod: Markera allt

sudo /etc/init.d/apache2 reload
Gör om - nu ska det förhoppningsvis vara ok.
http://nisse.no-ip.net/webmail/installer/
NEXT knapp

Det enda som behöver ändras är:
Database setup
Ändra name, user name och password enligt ditt tidigare önskemål.
Skapa konfigurationsfiler - CREATE CONFIG knappen.

Två konfigfiler skapas - main.inc.php och db.inc.php. Ladda ned dessa. Placera dem sedan i folder /var/www/webmail/config/

Fortsätt nu med CONTINUE knapp

Klicka på knapp Initialize database

Klart!

Dax att logga in:
http://nisse.no-ip.net/webmail/
nils
hemlis
maskinnamn.nisse.no-ip.net

Viktigt. Gå direkt till Personal Settings / Identities och ändra din avsändaradress till nils@nisse.no-ip.net (det vill säga inget maskinnamn)

Viktigt. Slutligen ta bort konfigationsfoldern /var/www/webmail/installer/

SSL-HTTPS

Nu är det inte så lämpligt att köra webmailen i http-trafik. Lokal användare och lösen skickas i klartext. Säkrare är att använda SSL, dvs. https-trafik. Hur man fixar detta finns här http://www.ubuntu-se.org/phpBB3/viewtop ... 54&t=24777

MEN ... för tillfället vi kan gå runt detta och använda det medföljande snakeoil certifikatet istället.

Kontrollera först att Apache2 även lyssnar på port 443

Kod: Markera allt

sudo nano /etc/apache2/ports.conf
Skapa en ssl site

Kod: Markera allt

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ssl
Öppna den

Kod: Markera allt

sudo nano /etc/apache2/sites-available/ssl
Ersätt och spara allt över raden DocumentRoot /var/www/ med:

NameVirtualHost *:443
<VirtualHost *:443>
ServerAdmin webmaster@localhost
Servername maskinnamn.nisse.no-ip.net
SSLEngine On
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

Ladda den

Kod: Markera allt

sudo a2ensite ssl
Starta om Apache2

Kod: Markera allt

sudo /etc/init.d/apache2 reload
Surfa till https://nisse.no-ip.net/webmail

Nu kommer Firefox att klaga, men gå vidare och importera certifikatet i webbläsaren. När det är gjort blir det inget felmeddelande fortsättningsvis.

Squirrelmail
http://www.squirrelmail.org/

Ett alternativ till RoundCube är Squirrelmail. Den kräver inte Mysql.

Installera:

Kod: Markera allt

sudo apt-get install squirrelmail
Grundkonfigurera:

Kod: Markera allt

sudo squirrelmail-configure
Det enda som behöver konfigureras initialt är:
Command >> 2. --> 1. --> nisse.no-ip.net --> S --> R
Command >> 4. --> 11. --> y --> S --> Q
Som synes kan man göra många inställningar. Notera speciellt alla plugins. Du kan återkomma hit senare med kommandot ovan!

Skapa squirrelmail

Kod: Markera allt

sudo cp /etc/squirrelmail/apache.conf /etc/apache2/sites-available/squirrelmail
Ladda den

Kod: Markera allt

sudo a2ensite squirrelmail
Starta om Apache2

Kod: Markera allt

sudo /etc/init.d/apache2 reload
Surfa till http://nisse.no-ip.net/squirrelmail

Logga in
Name:Nils
Password:hemlis

Snygga till (T.ex. Option --> Display Preferences; Theme:BluesNews, Custom Stylesheet:sans-10). Gå sedan tillbaka och kolla in plugins (Command >> 8.).

Överväg krypterad trafik. Automatisk omstyrning från http till https görs enkelt för squirrelmail.
Öppna

Kod: Markera allt

sudo nano /etc/apache2/sites-enabled/squirrelmail
Ta bort # i de 9 understa raderna på sidan. Spara.

Starta om Apache2

Kod: Markera allt

sudo /etc/init.d/apache2 reload
Senast redigerad av 52 northface, redigerad totalt 19 gång.
Användarvisningsbild
Erikw
Inlägg: 158
Blev medlem: 15 jul 2007, 02:57
OS: Open Suse
Utgåva: 22.10 Kinetic Kudu
Ort: Lund, Sverige
Kontakt:

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av Erikw »

Tack för guiden! Om jag får tid ska jag testa.
2r.se
"There are people who don't like capitalism, and people who don't like PCs. But there's no one who likes the PC who doesn't like Microsoft." - Bill Gates
KiviE
Inlägg: 2157
Blev medlem: 25 okt 2007, 14:00
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Luleå

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av KiviE »

Ser fint ut!

En liten sidnot bara relayhost = din ISP:s relay server (typ smtp.bredband.net) är ju endast nödvändigt om man ISPn blockar smtp på port 25 väl? :) Nu gör ju väldigt många det men dock inte alla.
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av andol »

KiviE skrev:En liten sidnot bara relayhost = din ISP:s relay server (typ smtp.bredband.net) är ju endast nödvändigt om man ISPn blockar smtp på port 25 väl? :) Nu gör ju väldigt många det men dock inte alla.
Japp
Användarvisningsbild
northface
Inlägg: 501
Blev medlem: 15 dec 2007, 02:20
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av northface »

Enligt förutsättningen
- Du är tvingad att köra smtp genom din ISP:s mailservrar.
KiviE
Inlägg: 2157
Blev medlem: 25 okt 2007, 14:00
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Luleå

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av KiviE »

northface skrev:Enligt förutsättningen
- Du är tvingad att köra smtp genom din ISP:s mailservrar.
Sorry! Borde ha läst bättre :)
Användarvisningsbild
maths57
Inlägg: 2911
Blev medlem: 22 jun 2007, 15:10
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Ort: Stockholm

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av maths57 »

Tack, northface, för ännu en bra howto! :)
Lars
Inlägg: 6191
Blev medlem: 14 jan 2007, 19:31
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Ort: Stockholm

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av Lars »

I dessa FRA-tider vill man ju gärna köra TLS till relayhost, så lägg till det här i main.cf:

Kod: Markera allt

smtp_tls_security_level=encrypt
smtp_tls_CAfile=etc/ssl/certs/ca-certificates.crt
Eftersom delar av Postfix körs i chroot så är sökvägen ovan relativ och inte absolut, det tog mig några timmar att komma på det...
Användarvisningsbild
northface
Inlägg: 501
Blev medlem: 15 dec 2007, 02:20
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av northface »

Tack för responsen!
Jag har nu lagt till webmail.
Användarvisningsbild
northface
Inlägg: 501
Blev medlem: 15 dec 2007, 02:20
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av northface »

HowTo "enkel mailserver" är nu färdigställd - lycka till med mailen!
Användarvisningsbild
Hund
Inlägg: 16492
Blev medlem: 25 jan 2007, 04:15
OS: Gentoo
Ort: Norrland
Kontakt:

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av Hund »

Ser intressant ut. :) Lägg gärna till den i våran Wiki med.
Linuxkompis - En vänlig Linux-gemenskap för alla!
Användarvisningsbild
micke_nordin
Inlägg: 1539
Blev medlem: 21 aug 2008, 17:03
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Kontakt:

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av micke_nordin »

Jag har installerat webmaildelen + dovecot från den här guiden (hade postfix sedan tidigare, men har dock gjort lämpliga modifieringar av olika postfix .conf-filer i smaband med webmail och dovecot installation).

Det funkar bra att skicka mejl (vilket det även gjorde tidigare med postfix) både från en mejlklient på en annan dator och via webmailen. Problemet jag har är dock att jag inte kan ta emot mejl... Detta måste väl vara relaterat till dovecot? Var skall jag börja felsöka?

Jag har även öppnat port 25 och 143 i routern btw.

/Micke
KiviE
Inlägg: 2157
Blev medlem: 25 okt 2007, 14:00
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Luleå

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av KiviE »

/var/log/maillog är ett bra ställe att börja på (är inte helt säker på att logfilen heter så i ubuntu dock). Där bör det stå precis vad som händer när du försöker ta emot ett mail.
Användarvisningsbild
northface
Inlägg: 501
Blev medlem: 15 dec 2007, 02:20
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av northface »

Syns det något i mail loggen när du skickat till maskinen?
Edit: kivIE var snabbare
Användarvisningsbild
micke_nordin
Inlägg: 1539
Blev medlem: 21 aug 2008, 17:03
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Kontakt:

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av micke_nordin »

Det verkar som om dovecot inte kan skapa en mejlkatalog, men jag trodde att jag ställt in så att mejlen skulle hamna i ~/Maildir enligt guiden???

Kod: Markera allt

Nov 18 18:55:05 maskinnamn dovecot: Dovecot v1.0.10 starting up
Nov 18 18:56:10 maskinnamn dovecot: imap-login: Disconnected: rip=xxx.xxx.xxx.xxx, lip=192.168.1.xx, TLS handshake
Nov 18 19:07:46 maskinnamn dovecot: imap-login: Disconnected: Inactivity: rip=xxx.xxx.xxx.xxx, lip=192.168.1.xx, TLS handshake
Nov 18 19:13:34 maskinnamn dovecot: imap-login: Disconnected: rip=xxx.xxx.xxx.xxx, lip=192.168.1.xx, TLS handshake
Nov 18 19:14:19 maskinnamn dovecot: IMAP(micke): Effective uid=1000, gid=1000, home=/home/micke
Nov 18 19:14:19 maskinnamn dovecot: IMAP(micke): mbox: data=/var/mail//m/micke:INDEX=/var/indexes//m/micke
Nov 18 19:14:19 maskinnamn dovecot: IMAP(micke): mkdir_parents(/var/mail//m/micke) failed: Permission denied
Nov 18 19:14:19 maskinnamn dovecot: IMAP(micke): Mail storage creation failed with mail_location: mbox:/var/mail//m/micke:INDEX=/var/indexes//m/micke
Nov 18 19:14:19 maskinnamn dovecot: child 8778 (imap) returned error 89
Nov 18 19:14:19 maskinnamn dovecot: imap-login: Login: user=<micke>, method=PLAIN, rip=xxx.xxx.xxx.xxx, lip=192.168.1.xx, TLS
Nov 18 19:19:03 maskinnamn dovecot: Dovecot v1.0.10 starting up
Nov 18 19:26:42 maskinnamn dovecot: imap-login: Disconnected: Inactivity: rip=xxx.xxx.xxx.xxx, lip=192.168.1.xx, TLS handshake
I dovecot.conf står:

Kod: Markera allt

   mail_location = maildir:~/Maildir 
#   mail_location = mbox:~/mail:INBOX=/var/mail/%u
#   mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n
Jag har även testat med att avkomentera de två nedre mail_location-raderna

/Micke
PS: Jag har gömt ip-nummer och sånt. Mail loggen heter föresten /var/log/mail.log
Användarvisningsbild
northface
Inlägg: 501
Blev medlem: 15 dec 2007, 02:20
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av northface »

Ja mailen ska hamna i Maildir. Du kanske glömde starta om dovecot efter ändring.

Starta om maskinen. Skicka ett mail till den igen och kolla i loggen.

Du kan skapa Maildir för användare:

sudo maildirmake.dovecot /etc/skel/Maildir
sudo maildirmake.dovecot /etc/skel/Maildir/.Drafts
sudo maildirmake.dovecot /etc/skel/Maildir/.Sent
sudo maildirmake.dovecot /etc/skel/Maildir/.Trash
sudo maildirmake.dovecot /etc/skel/Maildir/.Templates

Men för en användare som redan finns gör du så här:

sudo cp -r /etc/skel/Maildir /home/myuser/
sudo chown -R myuser:usergroup /home/myuser/Maildir
sudo chmod -R 700 /home/myuser/Maildir

Vad ger detta kört i terminalen?
telnet localhost imap
Användarvisningsbild
micke_nordin
Inlägg: 1539
Blev medlem: 21 aug 2008, 17:03
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Kontakt:

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av micke_nordin »

Nu har jag startat om dovecot (vilket jag gjort många gånger tidigare också :-), samt skapat ett nytt Maildir och flyttat det över det gamla som fanns. Nu ser det ut så här i mitt maildir:

Kod: Markera allt

micke@maskinnamn:~/Maildir$ ls -l /home/micke/Maildir
totalt 36
drwx------ 2 micke micke  4096 2008-11-18 15:47 cur
-rwx------ 1 micke micke   144 2008-11-18 15:47 dovecot.index
-rwx------ 1 micke micke 10272 2008-11-18 15:47 dovecot.index.cache
-rwx------ 1 micke micke   124 2008-11-18 15:47 dovecot.index.log
drwx------ 2 micke micke  4096 2008-11-18 15:47 new
-rwx------ 1 micke micke     6 2008-11-18 17:27 subscriptions
drwx------ 2 micke micke  4096 2008-11-18 15:47 tmp
Och loggen säger nu mera en massa sånt här om jag loggar in via webmailen:

Kod: Markera allt

Nov 18 22:04:50 viki dovecot: imap-login: Login: user=<micke>, method=PLAIN, rip=127.0.1.1, lip=127.0.1.1, secured
Nov 18 22:04:50 maskinnamn dovecot: IMAP(micke): Disconnected: Logged out
Nov 18 22:05:50 maskinnamn dovecot: IMAP(micke): Effective uid=1000, gid=1000, home=/home/micke
Nov 18 22:05:50 maskinnamn dovecot: IMAP(micke): maildir: data=/home/micke/Maildir
Nov 18 22:05:50 maskinnamn dovecot: IMAP(micke): maildir: root=/home/micke/Maildir, index=/home/micke/Maildir, control=, inbox=
Nov 18 22:05:50 maskinnamn dovecot: imap-login: Login: user=<micke>, method=PLAIN, rip=127.0.1.1, lip=127.0.1.1, secured
Nov 18 22:05:50 maskinnamn dovecot: IMAP(micke): Disconnected: Logged out
eller om jag försöker hämta från en annan maskin:

Kod: Markera allt

Nov 18 22:03:41 maskinnamn dovecot: imap-login: Login: user=<micke>, method=PLAIN, rip=xxxx.xxx.xxx.xxx, lip=192.168.1.xx, TLS
Nov 18 22:03:49 maskinnamn dovecot: IMAP(micke): Effective uid=1000, gid=1000, home=/home/micke
Nov 18 22:03:49 maskinnamn dovecot: IMAP(micke): maildir: data=/home/micke/Maildir
Nov 18 22:03:49 maskinnamn dovecot: IMAP(micke): maildir: root=/home/micke/Maildir, index=/home/micke/Maildir, control=, inbox=
/Micke
Användarvisningsbild
northface
Inlägg: 501
Blev medlem: 15 dec 2007, 02:20
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av northface »

Finns det några inkomna mail i /home/micke/Maildir/cur ?
Kan du kolla direkt på servern.
Vad ger
telnet localhost imap
i terminalen?
Användarvisningsbild
micke_nordin
Inlägg: 1539
Blev medlem: 21 aug 2008, 17:03
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Kontakt:

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av micke_nordin »

northface skrev:Finns det några inkomna mail i /home/micke/Maildir/cur ?
Kan du kolla direkt på servern.

Kod: Markera allt

micke@maskinnamn:~/Maildir/cur$ ls -a
.  ..
micke@maskinnamn:~/Maildir/cur$ 
Tyvärr...
northface skrev: Vad ger
telnet localhost imap
i terminalen?

Kod: Markera allt

micke@maskinnamn:~/Maildir/new$ telnet localhost imap
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK Dovecot ready.
Verkar funka bra, även om jag telnetar in utifrån via domännamnet (ska man kunna det utan inloggning?).

Servern står förövrigt i mitt vardagsrum, men jag har ingen skärm eller tangentbord på den, så jag ssh:ar in när det behövs.

/Micke
Användarvisningsbild
northface
Inlägg: 501
Blev medlem: 15 dec 2007, 02:20
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: HowTo - Snabbuppsättning av en enkel mailserver

Inlägg av northface »

Ja, det verkar som om Dovecot är ok.

Testa för säkerhets skull följande i terminalen
ls ~/Maildir/cur

Det verkar nästan som om det inte kommer in några mail.
Har du lagt till raden
home_mailbox = Maildir/
i /etc/postfix/main.cf ??

Kan du skicka ett mail till servern från typ hotmail.com och sedan gå in kolla i mailloggen utan att starta klient och webmail. Där ska finnas träffar som hör till det inkomna mailet (om det kommer fram till servern överhuvudtaget)

Har du någon MX-record till din domän?
Skriv svar

Återgå till "Guider"