Elektronisk post på Lysatorvis: Skillnad mellan sidversioner

Från Lysators datorhandbok, den ultimata referensen.
Hoppa till navigering Hoppa till sök
(Tog bort informationen om rmail. Även om r-mail fortfarande finns finns inte qmail's stödprogram, vilket gör vår dokumentation hopplös.)
(Byte ut all text om att läsa epost.)
Rad 37: Rad 37:
Om du redan hade gått över till Maildir med förra mailservern så har din existerande mailbox flyttats över. Om du inte hade gjort det så har din existerande mailbox konverterats till Maildir i samband med mailserverbytet. Om du har mailboxar i mbox-format liggandes på vanliga <tt>/home</tt> och vill konvertera till Maildir så att de blir åtkomliga från mailservern och via IMAP och Webmail, så använder du <tt>mbox2maildir</tt>. Se sidan om mbox2maildir. Exempelvis så ska du för att konvertera en mbox-box du har i <tt>~/Mail/sent-mail</tt> köra <tt>mbox2maildir ~/Mail/sent-mail /var/mail/&lt;username&gt;/Maildir/.sent-mail</tt>
Om du redan hade gått över till Maildir med förra mailservern så har din existerande mailbox flyttats över. Om du inte hade gjort det så har din existerande mailbox konverterats till Maildir i samband med mailserverbytet. Om du har mailboxar i mbox-format liggandes på vanliga <tt>/home</tt> och vill konvertera till Maildir så att de blir åtkomliga från mailservern och via IMAP och Webmail, så använder du <tt>mbox2maildir</tt>. Se sidan om mbox2maildir. Exempelvis så ska du för att konvertera en mbox-box du har i <tt>~/Mail/sent-mail</tt> köra <tt>mbox2maildir ~/Mail/sent-mail /var/mail/&lt;username&gt;/Maildir/.sent-mail</tt>


==Läsa Epost==
==Att läsa Maildir med diverse mailklienter==
===Via Webmail===
Lysators medlemmar använder varenda mailklient som någonsin uppfunnits på denna jord, och så några till. Här är lite tips om hur man kommer åt Maildir från de olika programmen.
E-post kan både läsas och skickas via webmail, där Lysator kör
Roundcube. https://webmail.lysator.liu.se.


===Mutt===
===Via IMAP eller POP===
Se [[IMAP och POP]]


===Lokalt===
Sätt följande i din <tt>~/.muttrc</tt>:
Eftersom alla Lysators maskiner monterar in ens e-postkatalog lokalt
kan vissa klienter konfigureras till att titta på den direkt.


====Mutt====
set spoolfile = /var/mail/eric/Maildir
set mbox_type = Maildir
set folder = /var/mail/eric/Maildir
set mbox = /var/mail/eric/Maildir


I <code>~/.muttrc</code> eller <code>~/.mutt/muttrc</code> lägg till
Andra tips är att sätta:
följande:


set spoolfile = /var/mail/''användarnamn''/Maildir
set sort=reverse-date
set mbox_type = Maildir

set folder = /var/mail/''användarnamn''/Maildir
..för en sorteringsordning som en del tycker är bättre, samt:
set mbox = /var/mail/''användarnamn''/Maildir

set editor=emacsclient

..så kan man editera brev med Emacs i stället för med vi (som är standard). Gillar man editorn i Pine, så sätter man editor till pico. Tack till Eric Svensson, Johannes Markström och Emil Styrke för de här tipsen.


==Sortering via procmail==
==Sortering via procmail==

Versionen från 25 november 2022 kl. 22.54

https://webmail.lysator.liu.se/

Hårdvaruinformation om mailservern finns här: mail.

Mailservern använder enbart fri programvara:

  • Postfix som MTA
  • Dovecot som IMAP- och POP-server
  • Mailman för maillinglistor
  • Roundcube för Webmail
  • MariaDB för att lagra diverse användarspecifik information.


Katalogstruktur

Alla filer relaterade till din epost finns på "alla" Lysators maskiner tillgängligt under /var/mail/användarnamn. Där kan följande filer finnas:

Maildir/
Faktisk e-post lagras här. Katalogen är på maildir-struktur, och
används som INBOX. Underkataloger för e-post kommer här
skapas, med en punkt framför.
.forward
Konfiguration av vart e-post ska skickas vidare, alternativt om den ska skickas till procmail.
.procmailrc
Konfiguration av procmail, inkluderinade sortering av e-post.
.procmail/
Övrigt relaterat till procmail.

Som kuriosa är katalogen /var/mail/ inmonterade från mailserverns /home/.


Konvertering

Om du redan hade gått över till Maildir med förra mailservern så har din existerande mailbox flyttats över. Om du inte hade gjort det så har din existerande mailbox konverterats till Maildir i samband med mailserverbytet. Om du har mailboxar i mbox-format liggandes på vanliga /home och vill konvertera till Maildir så att de blir åtkomliga från mailservern och via IMAP och Webmail, så använder du mbox2maildir. Se sidan om mbox2maildir. Exempelvis så ska du för att konvertera en mbox-box du har i ~/Mail/sent-mail köra mbox2maildir ~/Mail/sent-mail /var/mail/<username>/Maildir/.sent-mail

Läsa Epost

Via Webmail

E-post kan både läsas och skickas via webmail, där Lysator kör Roundcube. https://webmail.lysator.liu.se.

Via IMAP eller POP

Se IMAP och POP

Lokalt

Eftersom alla Lysators maskiner monterar in ens e-postkatalog lokalt kan vissa klienter konfigureras till att titta på den direkt.

Mutt

I ~/.muttrc eller ~/.mutt/muttrc lägg till följande:

   set spoolfile = /var/mail/användarnamn/Maildir
   set mbox_type = Maildir
   set folder = /var/mail/användarnamn/Maildir
   set mbox = /var/mail/användarnamn/Maildir

Sortering via procmail

Det är tillåtet att via .forward köra procmail för att sortera post till subfolder under /var/mail/<username>/Maildir.

INGA EGNA KOMMANDON, PERL-HACK, EGENINSTALLERAD PROGRAMVARA ELLER LIKNANDE FÅR KÖRAS PÅ MAILSERVERN.

DET ÄR INTE TILLÅTET ATT LÅTA PROCMAIL ELLER MAILDROP EXEKEVERA ANDRA KOMMANDON. ENBART INBYGGD FILTERFUNKTIONALITET FÅR ANVÄNDAS!

Anledningen till ovanstående regler är att det har varit en hel del problem med script som uppfört sig dumt och käkat resurser.

Om man vill köra mer advancerade skript är ett bra sätt att låta mailservern lagra den i maildir och sedan behandla den med cronjobb på någon av Lysators övriga servrar. Det stör inte mailservern över huvud taget.

Här är fullständig path till de program som finns på mailservern, och som det är tillåtet att använda i din .forward:

 /usr/bin/procmail

Sidan procmail innehåller mer information om hur man använder procmail. (Just nu är den sidan inte riktigt uppdaterad, men den är nog användbar ändå. Kom bara ihåg att den här sidan stämmer bättre med verkligheten än den sidan!)

Inloggning på mailservern

Vanliga användare kan inte logga in på mailservern. Det ska normalt inte behövas.

Övrigt om .forward-filer

Med hjälp av en fil som heter .forward i /var/mail/<username> kan du vidarebefordra mail till andra adresser än den på Lysator. Postfixs officiella dokumentation beskriver formatet.

Notera att man kan göra många saker med .forward. Skicka mail till flera adresser exempelvis genom att skriva flera adresser i den (en per rad) och exekvera kommandon. Om man också vill ha lokal leverans tillsammans med en forward så bör man lägga till /home/<username>/Maildir/ i sin .forward. Mer info hittas om man glor på länkarna ovan.

Postfix ser allvarligt på filrättigheter. Eller, för att uttrycka sig så att kidzen förstår: Ey, len, Postfix ger fett me' credz till filrightsen.

.forward-filer får exempelvis inte ha generösare rättigheter än 644 (rw-r--r--). Dvs, om din .forward funkade förut, men inte funkar nu så kan det vara en chmod 644 .forward som behövs.

Av intresse kan också vara att Postfix kör filer som inkluderas från alias (ex.vis mailinglistor) som ägaren och gruppen för denna fil. Om ägaren skulle råka vara root, så körs filen som nobody.

De flesta include-filer innehåller dock bara mail-adresser, så där är det inga problem. Problem kan uppstå först då leverans ska ske till fil, eller till kommando.

Om du använder mailadresser på formen <användarnamn>+<någonting>@lysator.liu.se så är det bra att känna till att det går att skapa egna forwards för dessa. Om du har en /var/mail/<username>/.forward+någonting så är det den som används när mail skickas till <användarnamn>+någonting@lysator.liu.se.

Gamla ~/.forward flyttades ej över i samband med mailserverbytet. Förhoppningsvis tar även du tillfället i akt att se över dina mailinställningar.

Ta bort all sin Mail

Om man vill ta bort all mail man har lagrad på lysators mailserver måste man vara aningen försiktig om man ska kunna fortsätta ta emot mail. Om man har så mycket mail att det inte är praktiskt att ta bort dem genom att använda klienten så är en lämplig metod:

 cd /var/mail/$USER
 mv Maildir Maildir.old && \
 mkdir -p Maildir/{cur,new,tmp} && \
 chmod -R 700 Maildir
 rm -rf Maildir.old

Har man väldigt mycket mail att ta bort är det lämpligt att be root om hjälp med det sista steget, eftersom det då kan göras lokalt på mailserver istället för över NFS.

SPAM och Virus

Lysators mailserver försöker bli av med lite skräp innan det levereras till dig. Filtreringen sker i flera steg.


Andra DNS-kollar

Det finns ett antal andra kollar, exempelvis kan man kolla om domänen för avsändande mailadress går att slå upp i DNS, och om avsändande mailservers IP går att slå upp i DNS. Den första av de här reglerna tenderar att kapa bort en hel del SPAM.


Greylisting

Greylisting är en teknik där man tittar på tripleten (IP på avsändande mailserver, avsändaradress, mottagaradress). Första gången en unik triplet dyker upp så ger man en temporär felkod. En normal mailserver försöker då att leverera mailet igen efter en liten stund (fem minuter eller så), medan den speciella programvara spamavsändare använder helt enkelt struntar i att skicka iväg mailet.

Var gång du får mail från en ny mottagare tar det alltså en liten stund innan mailet kommer fram, men stora mängder spam kommer inte fram över huvud taget.

Lysators mailserver kör per default greylisting, men du kan slå av det för just din adress med hjälp av LysAdm.

Mer information om greylisting finner du på exempelvis http://greylisting.org.

ClamAV

När mailet väl tagit sig in på mailservern körs det genom ClamAV som kör virusscanning för att detektera virus. Klassas mailet som virus slängs det utan att vare sig avsändare eller mottagare får något meddelande. Avsändaren får inget, för virus har ändå oftast falsk avsändare. Mottagare får inget, eftersom ett meddelande om ett virus inte gör någon glad.

Spamassassin

Mailet körs sedan igenom Spamassassin, som med hjälp av regler, DNS-listor, analys på ingående URLer, autolearn mm försöker detektera spam. Påfallande ofta lyckas det, och då märks mailet upp med headern X-Spam-Flag: Yes.

Engångsadresser

Det absolut effektivaste sättet att slippa spam är att aldrig någonsin ge ut sin emailadress till någon. Fast då försvinner lite av idén med email.

En annan variant är att använda engångsadresser när man exempelvis anmäler sig på diverse webtjänster och för adresser man har på sina websidor. Lysators system erbjuder två sätt att generera sådana adresser.

Plus-syntaxen

Adresser av typen <username>+<extension>@lysator.liu.se ger ett sätt att skapa engångsadresser. Mail som skickas till exempelvis gazonk+lysmail@lysator.liu.se hamnar i brevlådan för användaren 'gazonk'.

Som en extra feature går det att använda särskilda .forward-filer för sådana här adresser. Om du skapar en .forward+lysmail i /var/mail/<username> så kan du styra vad som ska hända med mail som skickas till <dittanvändarnamn>+lysmail@lysator.liu.se. Om du märker att en adress du skapat på det här sättet används för spam kan du alltså skapa en .forward-fil för den adressen som innehåller raden /dev/null. Då kommer all mail till den adressen att kastas i bithinken, dvs tas bort innan det når dig.

Ett problem med den här typen av adresser är att inte alla webtjänster och liknande anser att den är korrekt, så de kan vägra ta emot den. Då kan man använda en adress från User-domänen i stället.

Plus-syntaxen kan naturligtvis användas till andra saker också, exempelvis för att snabbt implementera mailinglistor. Se hur man startar och driver en elektronisk postlista för mer information.

User-domänen

Alla användare på lysator har möjlighet att använda adresser på mönstret <någonting>@<username>.user.lysator.liu.se. Dvs, om du har användarnamnet 'gazonk' så kan du använda adresser där delen efter '@' är gazonk.user.lysator.liu.se. Vad du skriver före '@' spelar ingen roll, det hamnar i din mailbox ändå.

Det här betyder att om du anmäler dig till webtjänsten "foo" så kan du använda (exempelvis) adressen foo@<username>.user.lysator.liu.se och ändå få mail från tjänsten.

För att det ska vara någon nytta med det här måste det finnas ett säkert sätt att filtrera ut mail från den här domänen. Det gör det. Det är nämligen så att Postfix (mailservern) skriver en header när ett sådant här brev levereras. Headern heter Delivered-To och sätts till <username>+user_<localpart>@lysator.liu.se där <localpart> är vad som stod före '@' i adressen. Det här betyder också att man kan använda särskilda .forward-filer precis som för Plus-syntaxen beskriven ovan. Dvs, om du vill låta brev som skickas till foo@gazonk.user.lysator.liu.se hamna i sopkorgen så skapar du en fil som heter .forward+user_foo i /var/mail/gazonk och låter den innehålla /dev/null.

Pga diverse omskrivningar så behålls inte hela To-raden när du gör såhär, utan när du får brevet har ditt användarnamn kapats bort. Det här är en stor bugg, men ingen har lyckats fixa den, så tig och lid. Eller ge oss rötter tips om hur man kan fixa till det.

Mailinglistor

Allt om hur du driver mailinglistor på Lysator finns att läsa på en särskild sida om E-postlistor.

Hostnamn

Hostname du skall använda för att skicka och ta emot post finns beskrivna i ett särskilt dokument om IMAP och POP. Om du gör forward från Lysator och har en paranoid brandvägg kan det vara bra att veta att alla utgående uppkopplingar från Lysators mailserver kommer från adressen mail.lysator.liu.se 130.236.254.3.

Authsmtp

Det går att köra autenticerad SMTP mot Lysators mailserver. Mer om detta i manulen om AUTHSMTP.

En sammanfattning

Vad du alltså behöver göra efter flytten är att:

  • Se över eventuell .forward, och anpassa eventuella sökvägar så att de stämmer med sökvägarna på bernadotte.
  • Se över eventuella procmailhack, och se till att de överensstämmer med reglerna för mailsortering på bernadotte.
  • Flytta .forward till rätt ställe. Det sker från övriga datorer på Lysator genom att flytta filen till /var/mail/<username>
  • Se till att rättigheterna på /var/mail/<username>/.forward är max 644 (chmod 644 /var/mail/<username>/.forward)
  • Eventuellt ersätta .forward-hack med en forward till <username>@mailexec.lysator.liu.se