diff options
author | Remko Lodder <remko@FreeBSD.org> | 2008-07-13 16:09:56 +0000 |
---|---|---|
committer | Remko Lodder <remko@FreeBSD.org> | 2008-07-13 16:09:56 +0000 |
commit | 1eef88a4d017839e936fdc38faab4a7033751dbc (patch) | |
tree | 032714786f18053fc9ed9885bb010ba180b6e475 /nl_NL.ISO8859-1 | |
parent | a38313ad0bd9b751dce263f735c372c79645721a (diff) |
Notes
Diffstat (limited to 'nl_NL.ISO8859-1')
-rw-r--r-- | nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml | 2231 |
1 files changed, 2119 insertions, 112 deletions
diff --git a/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml index c1675f7978..0876e660b5 100644 --- a/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml +++ b/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml @@ -2,6 +2,8 @@ The FreeBSD Dutch Documentation Project $FreeBSD$ + $FreeBSDnl: doc/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml,v 1.12 2006/01/01 13:09:23 siebrand Exp $ + Gebaseerd op: 1.138 --> <chapter id="mail"> @@ -10,7 +12,7 @@ <author> <firstname>Bill</firstname> <surname>Lloyd</surname> - <contrib>Origineel werk door </contrib> + <contrib>Origineel werk van </contrib> </author> </authorgroup> <authorgroup> @@ -21,57 +23,390 @@ <!-- 2 Dec 1999 --> </author> </authorgroup> + <authorgroup> + <author> + <firstname>Tom</firstname> + <surname>Leeters</surname> + <contrib>Vertaald door </contrib> + <!-- 17 Sep 2004 --> + </author> + </authorgroup> + <authorgroup> + <author> + <firstname>Frederic</firstname> + <surname>Van Assche</surname> + <contrib>Vertaling voortgezet door </contrib> + <!-- 29 Oct 2005 --> + </author> + </authorgroup> + <authorgroup> + <author> + <firstname>René</firstname> + <surname>Ladan</surname> + <contrib>Vertaling voortgezet door </contrib> + <!-- 9 Jan 2008 --> + </author> + </authorgroup> </chapterinfo> - <title>* Electronische mail</title> - <sect1 id="mail-synopsis"> - <title>* Samenvatting</title> + <title>Elektronische mail</title> - <para></para> + <sect1 id="mail-synopsis"> + <title>Overzicht</title> + + <indexterm><primary>email</primary></indexterm> + + <para><quote>Elektronische Mail</quote>, beter bekend als email, is + tegenwoordig een van de meest gebruikte vormen van communicatie. + Dit hoofdstuk geeft een algemene inleiding in het opzetten van een + mailserver op &os;, alsmede een introductie in het verzenden en + ontvangen van email op &os;; het is echter geen complete + referentie en veel belangrijke overwegingen zullen buiten + beschouwing worden gelaten. Voor een completere behandeling + wordt de lezer gewezen op de vele uitstekende boeken welke + worden vermeld in <xref linkend="bibliography">.</para> + + <para>In dit hoofdstuk wordt behandeld:</para> + + <itemizedlist> + <listitem> + <para>Welke software (componenten) gebruikt wordt(en) bij het + verzenden en ontvangen van email.</para> + </listitem> + + <listitem> + <para>Waar algemene <application>sendmail</application> + instellingsbestanden worden opgeslagen in &os;.</para> + </listitem> + + <listitem> + <para>Het verschil tussen lokale en postbussen op-afstand. + </para> + </listitem> + + <listitem> + <para>Hoe spammers te verhinderen dat ze de mailserver illegaal + gebruiken als "relay".</para> + </listitem> + + <listitem> + <para>Hoe een andere MTA (Mail Transfer Agent) te installeren en + configureren op het systeem, ter vervanging van <application> + sendmail</application>.</para> + </listitem> + + <listitem> + <para>Hoe veel voorkomende problemen met mail servers worden + opgelost.</para> + </listitem> + + <listitem> + <para>Hoe SMTP met UUCP te gebruiken.</para> + </listitem> + + <listitem> + <para>Hoe een systeem in te stellen om alleen mail te verzenden. + </para> + </listitem> + + <listitem> + <para>Hoe email te gebruiken met een inbelverbinding.</para> + </listitem> + + <listitem> + <para>Hoe SMTP Authenticatie in te stellen voor verhoogde + beveiliging.</para> + </listitem> + + <listitem> + <para>Hoe een Mail User Agent zoals <application>mutt + </application> te installeren om email te verzenden en te + ontvangen.</para> + </listitem> + + <listitem> + <para>Hoe mail te downloaden van een <acronym>POP</acronym> of + <acronym>IMAP</acronym> server op afstand.</para> + </listitem> + + <listitem> + <para>Hoe automatisch filters en sorteerregels op inkomende + email toe te passen.</para> + </listitem> + </itemizedlist> + + <para>Voordat dit hoofdstuk gelezen wordt, dienen:</para> + + <itemizedlist> + <listitem> + <para>De netwerkverbindingen correct ingesteld te zijn (<xref + linkend="advanced-networking">).</para> + </listitem> + + <listitem> + <para>De juiste DNS-informatie ingesteld te zijn voor de + mailserver (<xref linkend="network-servers">).</para> + </listitem> + + <listitem> + <para>Bekend te zijn hoe software van derde partijen te + installeren (<xref linkend="ports">).</para></listitem> + </itemizedlist> </sect1> <sect1 id="mail-using"> - <title>* Electronische mail gebruiken</title> + <title>Gebruik maken van elektronische mail</title> + <indexterm><primary>POP</primary></indexterm> + <indexterm><primary>IMAP</primary></indexterm> + <indexterm><primary>DNS</primary></indexterm> + + <para>Er zijn vijf belangrijke componenten betrokken bij het + uitwisselen van email. Dit zijn: <link linkend="mail-mua">het + gebruikersprogramma</link>, <link linkend="mail-mta">de + serverdaemon</link>, <link linkend="mail-dns">DNS</link>, + <link linkend="mail-receive">een postbus, lokaal of op afstand + </link>, en natuurlijk <link linkend="mail-host">de mailhost zelf + </link>. + </para> <sect2 id="mail-mua"> - <title>* Het gebruikers programma</title> - - <para></para> + <title>Het gebruikersprogramma</title> + + <para>Dit omvat opdrachtregelprogramma's zoals <application>mutt + </application>, <application>pine</application>, <application> + elm</application>, en <command>mail</command>, en <acronym>GUI + </acronym> programma's zoals <application>balsa</application>, + <application>xfmail</application>, en iets <quote>geavanceerders + </quote> zoals een webbrowser. Deze programma's doen niets + anders dan de mail bezorgen bij de lokale <link + linkend="mail-host"><quote>mailhost</quote></link>, door deze + af te leveren of bij een van de beschikbare <link + linkend="mail-mta">serverdiensten</link>, of via + <acronym>TCP</acronym>.</para> </sect2> <sect2 id="mail-mta"> - <title>* Mailhost server daemon</title> - - <para></para> + <title>Mailhost Server Daemon</title> + <indexterm> + <primary>mailserver daemons</primary> + <secondary><application>sendmail</application></secondary> + </indexterm> + <indexterm> + <primary>mailserver daemons</primary> + <secondary><application>postfix</application></secondary> + </indexterm> + <indexterm> + <primary>mailserver daemons</primary> + <secondary><application>qmail</application></secondary> + </indexterm> + <indexterm> + <primary>mailserver daemons</primary> + <secondary><application>exim</application></secondary> + </indexterm> + + <para>&os; wordt standaard geleverd met de <application>sendmail + </application>, maar ondersteund meerdere andere mailserver + daemons, zoals:</para> + + <itemizedlist> + <listitem> + <para><application>exim</application>;</para> + </listitem> + + <listitem> + <para><application>postfix</application>;</para> + </listitem> + + <listitem> + <para><application>qmail</application>.</para> + </listitem> + </itemizedlist> + + <para>De server daemon heeft meestal twee functies—het is + verantwoordelijk voor het ontvangen van inkomende mail en het + bezorgen van uitgaande mail. Het is <emphasis>niet</emphasis> + verantwoordelijk voor het verzamelen van mail door gebruik te + maken van protocollen zoals <acronym>POP</acronym> of + <acronym>IMAP</acronym> om mail te lezen, noch staat het toe om + een verbinding te maken met een lokale <filename>mbox</filename> + of Maildir postbus. Het is mogelijk dat daarvoor een extra + <link linkend="mail-receive">daemon</link> voor nodig is.</para> + + <warning> + <para>Oudere versies van <application>sendmail</application> + hebben serieuze beveiligingslekken welke kunnen leiden tot een + situatie waarbij een aanvaller lokale of toegang van afstand + tot de machine kan verkrijgen. Draai een actuele versie om + deze problemen te voorkomen. Optioneel kan een alternatieve + <acronym>MTA</acronym> van de <link linkend="ports">&os; + Portscollectie</link> geïnstalleerd worden.</para> + </warning> </sect2> <sect2 id="mail-dns"> <title>Email en DNS</title> - <para></para> + <para>Het Domein Naam Systeem (DNS) en de daemon <command>named + </command> spelen een grote rol in het bezorgen van email. Om + het mogelijk te maken email van de deze lokatie naar een andere + lokatie te bezorgen, zal de serverdaemon de andere lokatie + opzoeken in het DNS om zo de host te bepalen die de email voor + de bestemming in ontvangst zal nemen. Dit gebeurt ook als + email verzonden wordt vanaf een andere host naar de lokale + mailserver.</para> + + <indexterm> + <primary>MX record</primary> + </indexterm> + + <para><acronym>DNS</acronym> is verantwoordelijk voor het koppelen + van hostnamen aan IP-adressen, en voor het opslaan van + specifieke informatie voor het bezorgen van mail, bekend als + MX-regels. De MX-regel (Mail eXchanger) specificeert welke + host(s) mail zullen ontvangen voor een specifiek domein. Als er + geen MX-regel is voor deze hostnaam of dit domein, dan zal de + mail direct bij de host worden afgeleverd, mits er een A-regel + is die deze hostnaam aan dit IP-adres koppelt.</para> + + <para>De MX-regels van een willekeurig domein kunnen worden + bekeken door gebruik te maken van het commando &man.host.1;, + zoals te zien is in het onderstaande voorbeeld:</para> + + <screen>&prompt.user; <userinput>host -t mx FreeBSD.org</userinput> +FreeBSD.org mail is handled (pri=10) by mx1.FreeBSD.org</screen> </sect2> <sect2 id="mail-receive"> - <title>* Mail ontvangen</title> + <title>Mail ontvangen</title> + <indexterm> + <primary>email</primary> + <secondary>ontvangen</secondary> + </indexterm> + + <para>De mailhost verzorgt het ontvangen van mail voor het domein. + Deze zal alle mail verzonden aan het domein verzamelen en deze + afhankelijk van de configuratie opslaan in òf <filename> + mbox</filename> (de standaardmanier om mail op te slaan) + òf in Maildir-formaat. Wanneer de mail eenmaal is + opgeslagen, kan het òf lokaal gelezen worden door + toepassingen als &man.mail.1; of <application>mutt</application> + , of op afstand bekeken en verzameld worden middels protocollen + als <acronym>POP</acronym> of <acronym>IMAP</acronym>. + Dit betekent, dat als mail alleen lokaal wordt gelezen, er geen + <acronym>POP</acronym>- of <acronym>IMAP</acronym>-server + geïnstalleerd hoeft te worden.</para> <sect3 id="pop-and-imap"> - <title>* Externe mailboxen benaderen door - <acronym>POP</acronym> en <acronym>IMAP</acronym></title> - - <para></para> + <title>Op afstand toegang tot de postbus krijgen door gebruik te + maken van <acronym>POP</acronym> en <acronym>IMAP</acronym> + </title> + + <indexterm><primary>POP</primary></indexterm> + <indexterm><primary>IMAP</primary></indexterm> + + <para>Om op afstand toegang te krijgen tot postbussen is het nodig toegang + te hebben tot een <acronym>POP</acronym>- of <acronym>IMAP + </acronym>-server. Deze protocollen stellen gebruikers in + staat hun postbus gemakkelijk op afstand te benaderen. Hoewel + zowel <acronym>POP</acronym> als <acronym>IMAP</acronym> + gebruikers in staat stellen op afstand een postbus te bereiken + , biedt <acronym>IMAP</acronym> veel voordelen, waaronder: + </para> + + <itemizedlist> + <listitem> + <para><acronym>IMAP</acronym> kan berichten zowel op de + server op afstand opslaan als ze ophalen.</para> + </listitem> + + <listitem> + <para><acronym>IMAP</acronym> ondersteunt gelijktijdig + actualiseren.</para> + </listitem> + + <listitem> + <para><acronym>IMAP</acronym> kan uitstekend worden gebruikt + over langzame verbindingen omdat het gebruikers in staat + stelt de structuur van berichten te bekijken zonder deze + binnen te halen; het kan ook worden gebruikt om te zoeken + op de server om zo de gegevensoverdracht tussen client en + server te minimaliseren.</para> + </listitem> + </itemizedlist> + + <para>Om een <acronym>POP</acronym>- of <acronym>IMAP</acronym>- + server te installeren, zijn de volgende stappen nodig:</para> + + <procedure> + <step> + <para>Kies een <acronym>IMAP-</acronym> of <acronym>POP + </acronym>-server die het beste aan de eisen voldoet. + De volgende <acronym>POP</acronym>- en <acronym>IMAP + </acronym>-servers zijn zeer bekend en zijn goede + voorbeelden:</para> + + <itemizedlist> + <listitem> + <para><application>qpopper</application>;</para> + </listitem> + + <listitem> + <para><application>teapop</application>;</para> + </listitem> + + <listitem> + <para><application>imap-uw</application>;</para> + </listitem> + + <listitem> + <para><application>courier-imap</application>;</para> + </listitem> + </itemizedlist> + </step> + + <step> + <para>Installeer de gewenste <acronym>POP</acronym>- of + <acronym>IMAP</acronym>-daemon vanuit de Portscollectie. + </para> + </step> + + <step> + <para>Wijzig indien nodig <filename>/etc/inetd.conf + </filename> om de <acronym>POP</acronym>- of <acronym>IMAP + </acronym>- server te laden.</para> + </step> + </procedure> + + <warning> + <para>Let er wel op dat zowel <acronym>POP</acronym> en + <acronym>IMAP</acronym> informatie, waaronder gegevens over + gebruikersnaam en wachtwoord, onversleuteld versturen. Dit + betekent, dat wanneer het gewenst is dat de uitwisseling van + gegevens over deze protocollen versleuteld is, het + verstandig is om te overwegen de sessies over &man.ssh.1; + te tunnelen. Het tunnelen van sessies wordt beschreven in + <xref linkend="security-ssh-tunneling">.</para> + </warning> </sect3> <sect3 id="local"> - <title>* Lokale mailboxen benaderen</title> + <title>Toegang tot lokale postbussen</title> - <para></para> + <para>Postbussen kunnen lokaal benaderd worden door direct op de + server waarop de postbus wordt bewaard <acronym>MUA</acronym>s + te gebruiken. Dit kan gedaan worden door programma's zoals + <application>mutt</application> of &man.mail.1; te gebruiken. + </para> </sect3> </sect2> <sect2 id="mail-host"> - <title>* De mail host</title> + <title>De mailhost</title> + <indexterm><primary>mailhost</primary></indexterm> - <para></para> + <para>De mailhost is de naam van de server welke verantwoordelijk + is voor het afleveren en ontvangen van mail voor de server en + mogelijk voor het netwerk.</para> </sect2> </sect1> @@ -85,36 +420,257 @@ </author> </authorgroup> </sect1info> - <title>* <application>sendmail</application> configuratie</title> - - <sect2> - <title>* <filename>/etc/mail/access</filename></title> - - <para></para> + <title><application>sendmail</application> instellen</title> + + <indexterm><primary><application>sendmail</application></primary> + + <para>&man.sendmail.8; is de standaard Mail Transfer Agent (MTA) in + &os;. <application>sendmail</application>'s taak is het + accepteren van mail van gebruikersprogramma's (<acronym>MUA + </acronym>) en deze te bezorgen bij de juiste mailer zoals + gedefinieerd in het betreffende configuratiebestand. + <application>sendmail</application> kan ook netwerkverbindingen + accepteren en mail in lokale postbussen afleveren of bezorgen + bij een ander programma.</para> + + <para><application>sendmail</application> gebruikt de volgende + configuratiebestanden:</para> + + <indexterm><primary><filename>/etc/mail/access</filename></primary></indexterm> + <indexterm><primary><filename>/etc/mail/aliases</filename></primary></indexterm> + <indexterm><primary><filename>/etc/mail/local-host-names</filename></primary></indexterm> + <indexterm><primary><filename>/etc/mail/mailer.conf</filename></primary></indexterm> + <indexterm><primary><filename>/etc/mail/mailertable</filename></primary></indexterm> + <indexterm><primary><filename>/etc/mail/sendmail.cf</filename></primary></indexterm> + <indexterm><primary><filename>/etc/mail/virtusertable</filename></primary></indexterm> + + <informaltable frame="none" pgwide="1"> + <tgroup cols="2"> + <thead> + <row> + <entry>Bestandsnaam</entry> + <entry>Functie</entry> + </row> + </thead> + <tbody> + <row> + <entry> + <filename>/etc/mail/access</filename> + </entry> + <entry>bestand met de toegangsdatabase van <application> + sendmail</application></entry> + </row> + <row> + <entry> + <filename>/etc/mail/aliases</filename> + </entry> + <entry>Aliases voor postbussen</entry> + </row> + <row> + <entry> + <filename>/etc/mail/local-host-names</filename> + </entry> + <entry>Lijst van servers waarvoor <application>sendmail + </application> mail accepteert</entry> + </row> + <row> + <entry> + <filename>/etc/mail/mailer.conf</filename> + </entry> + <entry>Configuratie voor het mailerprogramma</entry> + </row> + <row> + <entry> + <filename>/etc/mail/mailertable</filename> + </entry> + <entry>Aflevertabel voor de mailer</entry> + </row> + <row> + <entry> + <filename>/etc/mail/sendmail.cf</filename> + </entry> + <entry>Hoofdconfiguratiebestand van <application>sendmail + </application></entry> + </row> + <row> + <entry> + <filename>/etc/mail/virtusertable</filename> + </entry> + <entry>Tabellen voor virtuele gebruikers en domeinen</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <sect2> + <title><filename>/etc/mail/access</filename></title> + + <para>De toegangsdatabase definieert welke host(s) of IP-adressen + toegang hebben tot de lokale mailserver en wat voor soort toegang + ze hebben. Hosts kunnen in de lijst als <option>OK</option>, + <option>REJECT</option>, of <option>RELAY</option> staan, of + worden doorgevoerd naar de foutafhandelingsprocedure van + <application>sendmail</application> met een bepaalde mailerfout. + Hosts welke vermeld staan als <option>OK</option>, wat de + standaard is, kunnen mail versturen naar deze host zolang de + eindbestemming van de mail de lokale machine is. Hosts welke + vermeld staan als <option>REJECT</option> worden voor alle + verbindingen geweigerd. Hosts met een <option>RELAY</option> + vermelding wordt toegestaan om via deze server mail naar elke + bestemming te sturen.</para> + + <example> + <title>Configureren van de <application>sendmail</application> + toegangsdatabase</title> + + <programlisting>cyberspammer.com 550 We accepteren geen mail van spammers +FREE.STEALTH.MAILER@ 550 We accepteren geen mail van spammers +another.source.of.spam REJECT +okay.cyberspammer.com OK +128.32 RELAY</programlisting> + </example> + + <para>In dit voorbeeld staan vijf vermeldingen. Mailafzenders die + overeenkomen met de linkerzijde van de tabel worden beïnvloed + door de actie die vermeld staan aan de rechterzijde van de tabel. + De eerste twee voorbeelden geven een foutcode af aan de + foutafhandelingsroutine van <application>sendmail</application>. + Het bericht wordt bij de externe host bekend gemaakt wanneer een + mail voldoet aan de linkerzijde van de tabel. De volgende regel + weigert mail van een specifieke host op het Internet, <hostid> + another.source.of.spam</hostid>. De volgende regel accepteert + mailverbindingen van een host <hostid role="fqdn"> + okay.cyberspammer.com</hostid>, welke nauwkeuriger is dan de + regel met <hostid role="domainname">cyberspammer.com</hostid> + erboven. Specifiekere regels vervangen minder specifieke. De + laatste regel staat het doorsturen van elektronische mail toe + vanaf hosts waarvan de IP-adressen beginnen met <hostid>128.32 + </hostid>. Deze hosts zijn dan in staat om via deze mailserver + naar een andere bestemming mail te versturen.</para> + + <para>Wanneer dit bestand is bijgewerkt, dient <command>make + </command> in <filename>/etc/mail/</filename> te gedraaid te + worden om de database bij te werken.</para> </sect2> <sect2> - <title>* <filename>/etc/mail/aliases</filename></title> - - <para></para> + <title><filename>/etc/mail/aliases</filename></title> + + <para>De aliasdatabase bevat een lijst met virtuele postbussen die + verwijzen naar andere gebruiker(s), bestand(en), programma('s) of + andere aliassen. Hier zijn een paar voorbeelden die gebruikt + kunnen worden in <filename>/etc/mail/aliases</filename>:</para> + + <example> + <title>Mailaliassen</title> + + <programlisting>root: localuser +ftp-bugs: joe,eric,paul +bit.bucket: /dev/null +procmail: "|/usr/local/bin/procmail"</programlisting> + </example> + + <para>Het bestandsformaat is simpel; de postbusnaam aan de + linkerzijde van de dubbele punt wordt verder uitgewerkt naar de + doel(en) aan de rechterzijde. Het eerste voorbeeld breidt de + postbus van <username>root</username> uit naar de postbus + <username>localuser</username>, welke dan vervolgens weer wordt + opgezocht in de aliasdatabase. Als er geen verdere overeenkomst + wordt gevonden, dan wordt het bericht afgeleverd bij de lokale + gebruiker <username>localuser</username>. Het volgende + voorbeeld toont een mailinglijst. Mail voor de postbus + <username>ftp-bugs</username> wordt doorverwezen naar de drie + lokale postbussen <username>joe</username>, <username>eric + </username> en <username>paul</username>. Merk op dat een + externe postbus gespecificeerd kan worden als <email> + user@example.com</email>. Het volgende voorbeeld toont het + schrijven van mail naar een bestand, in dit geval <filename> + /dev/null</filename>. Het laatste voorbeeld toont het sturen + van mail naar een programma, in dit geval wordt het mailbericht + doorgestuurd naar de standaard invoer van <filename> + /usr/local/bin/procmail</filename> via een &unix; pijp.</para> + + <para>Wanneer dit bestand is bijgewerkt, dient <command>make + </command> in <filename>/etc/mail/</filename> gedraaid te worden + om de database bij te werken.</para> </sect2> <sect2> - <title>* <filename>/etc/mail/local-host-names</filename></title> - - <para></para> + <title><filename>/etc/mail/local-host-names</filename></title> + + <para>Dit is een lijst van hostnamen die &man.sendmail.8; moet + accepteren als de lokale hostnaam. Hierin dienen alle hostnamen + geplaatst te worden waarvoor <application>sendmail</application> + mail moet ontvangen. Als deze mailserver mail moet ontvangen + voor het domein <hostid role="domainname">example.com</hostid> + en de hostnaam is <hostid role="fqdn">mail.example.com</hostid>, + dan ziet <filename>local-host-names</filename> er ongeveer zo + uit:</para> + + <programlisting>example.com +mail.example.com</programlisting> + + <para>Wanneer dit bestand is bijgewerkt, dient &man.sendmail.8; + opnieuw gestart te worden zodat het de veranderingen kan lezen. + </para> </sect2> <sect2> - <title>* <filename>/etc/mail/sendmail.cf</filename></title> - - <para></para> + <title><filename>/etc/mail/sendmail.cf</filename></title> + + <para>Het hoofdinstellingenbestand van <application>sendmail + </application>, <filename>sendmail.cf</filename> controleert het + algemene gedrag van <application>sendmail</application>, + inclusief alles van het herschrijven van emailadressen tot het + sturen van weigeringsberichten naar externe mailservers. Met + zo'n diverse rol is dit instellingenbestand redelijk complex en + vallen de details buiten het bereik van dit hoofdstuk. Gelukkig + hoeft dit bestand maar zelden aangepast te worden voor standaard + mailservers.</para> + + <para>Het hoofdinstellingenbestand van <application>sendmail + </application> kan gebouwd worden met &man.m4.1; macro's die het + gedrag en de mogelijkheden van <application>sendmail + </application> specificeren. Lees <filename> + /usr/src/contrib/sendmail/cf/README</filename> voor meer + details.</para> + + <para>Wanneer dit bestand is bijgewerkt, dient &man.sendmail.8; + opnieuw gestart te worden om de wijzigingen door te voeren. + </para> </sect2> <sect2> - <title>* <filename>/etc/mail/virtusertable</filename></title> - - <para></para> + <title><filename>/etc/mail/virtusertable</filename></title> + + <para>De <filename>virtusertable</filename> verbindt mailadressen + voor virtuele domeinen en postbussen met echte postbussen. Deze + postbussen kunnen lokaal, op afstand, aliassen gedefinieerd in + <filename>/etc/mail/aliases</filename>, of bestanden zijn. + </para> + + <example> + <title>Voorbeeld van een mailtabel voor een virtueel domein</title> + + <programlisting>root@example.com root +postmaster@example.com postmaster@noc.example.net +@example.com joe</programlisting> + </example> + + <para>In het voorbeeld hierboven staat een tabel voor een domein + <hostid role="domainname">example.com</hostid>. Dit bestand + wordt van boven naar beneden verwerkt, en de eerste + overeenkomende regel wordt gebruikt. De eerste regel verbindt + <email>root@example.com</email> met de lokale postbus <username> + root</username>. De volgende regel verbindt <email> + postmaster@example.com</email> met de postbus <username> + postmaster</username> op de host <hostid role="fqdn"> + noc.example.net</hostid>. Als geen van de vorige regels van + <hostid role="domainname">example.com</hostid> overeenkomen, zal + de laatste regel gebruikt worden, die alle andere post + geadresseerd aan iemand bij <hostid role="domainname"> + example.com</hostid> opvangt en naar de lokale postbus + <username>joe</username> stuurt.</para> </sect2> </sect1> @@ -131,95 +687,761 @@ <author> <firstname>Gregory</firstname> <surname>Neil Shapiro</surname> - <contrib>Informatie uit emails gehaald geschreven door </contrib> + <contrib>Informatie genomen uit emails geschreven door </contrib> </author> </authorgroup> </sect1info> - <title>* Je mail transfer agent veranderen</title> - <sect2> - <title>* Een nieuwe MTA installeren</title> - - <para></para> - </sect2> + <title>De Mail Transfer Agent vervangen</title> - <sect2> - <title>* <application>sendmail</application> uitschakelen</title> + <indexterm> + <primary>email</primary> + <secondary>mta veranderen</secondary> + </indexterm> - <sect3> - <title>* &os; 4.5-STABLE voor 2002/4/4 en eerder - (inclusief 4.5-RELEASE en eerder)</title> + <para>Zoals eerder vermeld wordt &os; geleverd met <application> + sendmail</application> voorgeïnstalleerd als MTA (Mail + Transfer Agent). Daarom regelt het standaard uitgaande en + binnenkomende mail.</para> - <para></para> - </sect3> + <para>In sommige gevallen willen systeembeheerders wegens + uiteenlopende redenen hun MTA vervangen. Deze redenen + variëren van het uitproberen van een andere MTA tot het + installeren van een bepaalde functionaliteit of pakket dat + afhankelijk is van een andere MTA.</para> - <sect3> - <title>&os; 4.5-STABLE na 2002/4/4 - (inclusief 4.6-RELEASE en later)</title> + <sect2> + <title>Een nieuwe MTA installeren</title> + + <para>Er is een waaier van MTA's beschikbaar. Een goed startpunt + is de <link linkend="ports">&os; Ports Collectie</link> waar er + veel gevonden kunnen worden. Het is natuurlijk mogelijk iedere + MTA te gebruiken vanaf iedere locatie, zolang het draait op &os; + .</para> + + <para>Begin met het installeren van de nieuwe MTA. Als de MTA + eenmaal geïnstalleerd is wordt er de kans gegeven te + beslissen of de nieuwe MTA echt voldoet aan de eisen, en is het + mogelijk de nieuwe software te configureren voordat het het werk + van <application>sendmail</application> overneemt. Bevestig + voordat de MTA geïnstalleerd wordt dat de nieuwe software + geen poging onderneemt systeemtoepassingen zoals <filename> + /usr/bin/sendmail</filename> te overschrijven, anders wordt + de nieuwe software onmiddellijk in gebruik genomen voordat het + is geconfigureerd.</para> + + <para>Neem de documentatie van de gekozen MTA door voor meer + informatie over het configureren van de software.</para> + </sect2> - <para></para> - </sect3> + <sect2 id="mail-disable-sendmail"> + <title><application>sendmail</application> uitschakelen</title> + + <warning> + <para>Als <application>sendmail</application>'s uitgaande + emaildienst uitgeschakeld wordt, is het belangrijk dat het + vervangen wordt door een alternatief systeem. Als ervoor + gekozen wordt dit niet te doen, zullen + systeemfunctionaliteiten zoals &man.periodic.8; niet in staat + zijn hun resultaten te bezorgen per email, zoals ze normaliter + verwachten te kunnen doen. Vele delen van het systeem zullen + verwachten een werkend systeem aan te treffen dat compatibel + is met <application>sendmail</application>. Als toepassingen + binaries van <application>sendmail </application> blijven + gebruiken om mail te versturen nadat deze uitgeschakeld werden + , kan de mail in een inactieve <application>sendmail + </application> wachtrij geplaatst worden, en nooit bezorgd + worden.</para> + </warning> + + <para>Om <application>sendmail</application> volledig uit te + schakelen, inclusief de uitgaande emaildienst, dient</para> + + <programlisting>sendmail_enable="NO" +sendmail_submit_enable="NO" +sendmail_outbound_enable="NO" +sendmail_msp_queue_enable="NO"</programlisting> + + <para>toegevoegd te worden aan <filename>/etc/rc.conf</filename>. + </para> + + <para>Als enkel <application>sendmail</application>'s ingaande + emaildienst uitgeschakeld dient te worden, dient</para> + + <programlisting>sendmail_enable="NO"</programlisting> + + <para>toegevoegd te worden aan <filename>/etc/rc.conf</filename>. + Meer informatie over de opstartopties van <application> + sendmail</application> is beschikbaar in de hulppagina + &man.rc.sendmail.8;.</para> </sect2> <sect2> - <title>* Je nieuwe MTA starten tijdens het opstarten</title> - - <sect3> - <title>&os; 4.5-STABLE voor 2002/4/11 - (inclusief 4.5-RELEASE en eerder)</title> + <title>De nieuwe MTA starten tijdens het opstarten</title> - <para></para> - </sect3> - - <sect3> - <title>&os; 4.5-STABLE na 2002/4/11 - (inclusief 4.6-RELEASE en later)</title> + <para>De nieuwe MTA kan gestart worden door deze instellingsregel + toe te voegen aan <filename>/etc/rc.conf</filename>, zoals het + volgende voorbeeld voor postfix:</para> - <para></para> - </sect3> + <screen>&prompt.root; echo '<replaceable>postfix</replaceable>_enable=<quote>YES</quote>' >> /etc/rc.conf</screen> + <para>De MTA zal nu automatisch tijdens het opstarten worden + gestart.</para> </sect2> <sect2> - <title>* <application>sendmail</application> vervangen als - de standaard mailer</title> + <title><application>sendmail</application> vervangen als de + standaard systeemmailer</title> + + <para>Het programma <application>sendmail</application> is zo + vanzelfsprekend als standaard software op &unix; systemen dat + sommige softwarepakketten ervan uitgaan dat <application> + sendmail</application> reeds geïnstalleerd en + geconfigureerd is. Daarom voorzien vele alternatieve MTA's in + compatibele implementaties van de opdrachtregelinterface van + <application>sendmail</application>; dit vergemakkelijkt het + gebruik van alternatieve MTA's als vervanging voor <application> + sendmail</application>.</para> + + <para>Bij het gebruiken van een alternatieve MTA moet men er zeker + van zijn dat software die probeert de standaardtoepassingen van + <application>sendmail</application> zoals <filename> + /usr/bin/sendmail</filename> te gebruiken, ook daadwerkelijk + de gekozen alternatieve mailer gebruikt. Gelukkig heeft &os; + hiervoor een systeem, &man.mailwrapper.8;, dat deze taak van de + systeembeheerder overneemt.</para> + + <para>Als <application>sendmail</application> werkt zoals + origineel geïnstalleerd, bevat <filename> + /etc/mail/mailer.conf</filename> bij benadering het volgende: + </para> + +<programlisting>sendmail /usr/libexec/sendmail/sendmail +send-mail /usr/libexec/sendmail/sendmail +mailq /usr/libexec/sendmail/sendmail +newaliases /usr/libexec/sendmail/sendmail +hoststat /usr/libexec/sendmail/sendmail +purgestat /usr/libexec/sendmail/sendmail</programlisting> + + <para>Dit wil zeggen dat wanneer een van deze algemene opdrachten + (zoals <filename>sendmail</filename> zelf) uitgevoerd wordt, het + systeem in werkelijkheid een kopie van de mailwrapper genaamd + <filename>sendmail</filename> uitvoert, dat <filename> + mailer.conf</filename> controleert en <filename> + /usr/libexec/sendmail/sendmail</filename> uitvoert. Dit + systeem maakt het eenvoudiger te specificeren welke toepassingen + daadwerkelijk uitgevoerd worden wanneer deze standaard + <filename>sendmail</filename> functies aangeroepen worden. + </para> + + <para>Als men bijvoorbeeld wil dat <filename> + /usr/local/supermailer/bin/sendmail-compat</filename> uitgevoerd + wordt in plaats van <application>sendmail</application>, kan + men <filename>/etc/mail/mailer.conf</filename> als volgt + aanpassen:</para> + +<programlisting>sendmail /usr/local/supermailer/bin/sendmail-compat +send-mail /usr/local/supermailer/bin/sendmail-compat +mailq /usr/local/supermailer/bin/mailq-compat +newaliases /usr/local/supermailer/bin/newaliases-compat +hoststat /usr/local/supermailer/bin/hoststat-compat +purgestat /usr/local/supermailer/bin/purgestat-compat</programlisting> - <para></para> </sect2> <sect2> - <title>* Afronden</title> - - <para></para> + <title>Afwerking</title> + + <para>Wanneer alles correct geconfigureerd is, dienen ofwel alle + ongebruikte <application>sendmail</application> processen + gestopt te worden en de processen behorend aan de nieuwe + software gestart te worden, ofwel dient het systeem opnieuw + gestart te worden. Herstarten geeft ook de mogelijkheid te + controleren of de nieuwe MTA correct geconfigureerd is om + tijdens het opstartproces gestart te worden.</para> </sect2> </sect1> <sect1 id="mail-trouble"> - <title>* Problemen oplossen</title> - - <para></para> + <title>Problemen oplossen</title> + + <indexterm> + <primary>email</primary> + <secondary>problemen oplossen</secondary> + </indexterm> + + <qandaset> + <qandaentry> + <question> + <para>Waarom is het nodig om de FQDN te gebruiken voor hosts + op de site?</para> + </question> + + <answer> + <para>Het is waarschijnlijk dat de host zich in een ander + domein bevindt; bijvoorbeeld als het gewenst is om host + <hostid>mompel </hostid> in het domein <hostid + role="domainname">bar.edu</hostid> vanuit domein <hostid + role="fqdn">foo.bar.edu</hostid> te bereiken, is het nodig + om er met de volledig gekwalificeerde domeinnaam naar te + verwijzen, <hostid role="fqdn">mompel.bar.edu</hostid>, in + plaats van slechts <hostid>mompel</hostid>.</para> + + <indexterm><primary>BIND</primary></indexterm> + + <para>Traditioneel werd dit door BSD BIND resolvers toegestaan + . De huidige versie van <application>BIND</application> die + met &os; wordt geleverd levert niet langer standaard + afkortingen voor onvolledig gekwalificeerde domeinnamen + anders dan het huidige domein. Dus moet een + ongekwalificeerde host <hostid>mompel</hostid> òf als + <hostid role="fqdn">mompel.foo.bar.edu</hostid> gevonden + worden, òf wordt er naar gezocht in het root domein. + </para> + + <para>Dit verschilt van het vorige gedrag, waar de zoektocht + doorging over <hostid role="domainname">mompel.bar.edu + </hostid>, en <hostid role="domainname">bar.edu</hostid>. + Zie RFC 1535 voor de redenen waarom dit als een slechte + gewoonte en zelfs als beveiligingslek werd beschouwd.</para> + + <para>Als een goede tussenoplossing kan deze regel: + <programlisting>search foo.bar.edu bar.edu</programlisting> + in plaats van het voorgaande: + <programlisting>domain foo.bar.edu</programlisting> + in <filename>/etc/resolv.conf</filename> geplaatst worden. + Ben er echter zeker van dat de zoekvolgorde niet verder gaat + dan de <quote>grens tussen lokale en publieke regelgeving + </quote>, zoals RFC 1535 het noemt.</para> + </answer> + </qandaentry> + + <indexterm><primary>MX-regel</primary></indexterm> + + <qandaentry> + <question> + <para><application>sendmail</application> zegt <errorname>mail + loops back to myself</errorname> + </question> + + <answer> + <para>Dit wordt in de FAQ van <application>sendmail + </application> als volgt beantwoord:</para> + + <programlisting>Deze foutmeldingen verschijnen: + +553 MX list for domain.net points back to relay.domain.net +554 <user@domain.net>... Local configuration error + +Hoe kan dit probleem worden opgelost? + +Er is gevraagd om mail van het domein (bijvoorbeeld domain.net) naar een +specifieke host door te sturen (in dit geval relay.domain.net) door +gebruik te maken van een MX-regel, maar de machine die het door moet +sturen herkent zichzelf niet als domain.net. Voeg domain.net toe aan +/etc/mail/local-host-names [bekend als /etc/sendmail.cw voor versies +eerder dan 8.10] (als FEATURE(use_cw_file) gebruikt wordt) of voeg +<quote>Cw domain.net</quote> toe aan /etc/mail/sendmail.cf. + </programlisting> + + <para>De FAQ van <application>sendmail</application> is te + vinden op <ulink url="http://www.sendmail.org/faq/"></ulink> + en wordt aangeraden om te lezen indien enig <quote>tweaken + </quote> van de mailinstallatie gewenst is.</para> + </answer> + </qandaentry> + + <indexterm><primary>PPP</primary></indexterm> + + <qandaentry> + <question> + <para>Hoe kan een mailserver op een inbel-PPP-host gedraaid + worden?</para> + </question> + + <answer> + <para>Het is gewenst om een &os;-computer in een LAN met het + Internet te verbinden. De &os;-computer zal en mail-gateway + voor het LAN zijn. De PPP-verbinding is niet toegewijd. + </para> + + <indexterm><primary>UUCP</primary></indexterm> + + <indexterm><primary>MX-regel</primary></indexterm> + + <para>Er zijn minstens twee manieren om dit te doen. + Eén manier is om UUCP te gebruiken.</para> + + <para>Een andere manier is ervoor te zorgen dat een server die + altijd met het Internet verbonden is secundaire MX-diensten + voor het domein biedt. Als het domein bijvoorbeeld <hostid + role="domainname">example.com</hostid> is en de + internetprovider <hostid role="domainname">example.net + </hostid> heeft ingesteld om secundaire MX-diensten voor het + domein te bieden:</para> + + <programlisting>example.com. MX 10 example.com. + MX 20 example.net.</programlisting> + + <para>Er dient slechts één host als de + uiteindelijke ontvanger gespecificeerd te worden (voeg + <literal>CW example.com</literal> toe aan <filename> + /etc/mail/sendmail.cf</filename> op <hostid + role="domainname">example.com></hostid>).</para> + + <para>Wanneer de verzendende <command>sendmail</command> + probeert om mail af te leveren zal het proberen met <hostid + role="domainname">example.com</hostid> te verbinden via de + modemverbinding. Waarschijnlijk zal dit een time-out geven + omdat de computer niet online is. Het programma + <application>sendmail</application> zal het automatisch aan + de secundaire MX-site, de internetprovider (<hostid + role="domainname">example.net</hostid>) afleveren. De + secundaire MX zal dan periodiek proberen om een verbinding te + maken met de computer en de mail aan de primaire MX-host + leveren (<hostid role="domainname">example.com</hostid>). + </para> + + <para>Het kan wenselijk zijn om iets als het onderstaande als + inlogscript te gebruiken:</para> + + <programlisting>#!/bin/sh +# Zet mij in /usr/local/bin/pppmyisp +( sleep 60 ; /usr/sbin/sendmail -q ) & +/usr/sbin/ppp -direct pppmyisp</programlisting> + + <para>Indien er een apart inlogscript voor een gebruiker wordt + aangemaakt, kan <command>sendmail -qRexample.com</command> + gebruikt worden in plaats van het bovenstaande script. Dit + zorgt ervoor dat alle mail in de mailrij voor <hostid + role="domainname">example.com</hostid> onmiddellijk + verwerkt wordt.</para> + + <para>Een verdere verfijning van de situatie is deze:</para> + + <para>Bericht gestolen van de &a.isp;.</para> + + <programlisting>> we bieden de secundaire MX voor een klant. +> De klant maakt automatisch verschillende keren per dag een verbinding +> met onze diensten om de mailberichten naar zijn primaire MX te +> sturen (we bellen zijn site niet indien er een mail voor zijn +> domein arriveert). Onze sendmail verstuurt de mailrij om de 30 +> minuten. Op het moment moet de klant 30 minuten online blijven om +> er zeker van te zijn dat alle mail naar de primaire MX is gegaan. +> +> Is er een commando dat sendmail er toe aanzet om alle mailberichten +> nu te versturen? De gebruiker heeft uiteraard geen root-rechten op +> onze machine. + +In de sectie <quote>privacy flags</quote> van sendmail.cf staat een +definitie Opgoaway,restrictqrun + +Verwijder restrictqrun om niet-root-gebruikers toe te staan te beginnen +de rij te verwerken. Het kan ook wenselijk zijn om de MXs opnieuw te +rangschikken. Wij zijn zo de eerste MX voor onze klanten, en we hebben +dit gedefinieerd: + +# Als we de beste MX voor een host zijn, probeer direct in plaats van +# een lokale configuratiefout te genereren. +OwTrue + +Op deze manier zal een site op afstand rechtstreeks hier afleveren, +zonder de verbinding van de klant te proberen. Vervolgens wordt er naar +de klant verstuurd. Dit werkt alleen voor <quote>hosts</quote>, dus +dient de klant hun mailcomputer <quote>customer.com</quote> te noemen en +<quote>hostname.customer.com</quote> in de DNS de plaatsen. Plaats een +A-regel in de DNS voor <quote>customer.com</quote>.</programlisting> + </answer> + </qandaentry> + + <qandaentry> + <question> + <para>Waarom blijven er fouten als <errorname>Relaying Denied + </errorname> verchijnen wanneer er mail van andere hosts + wordt verstuurd?</para> + </question> + + <answer> + <para>In standaard &os;-installaties is <application>sendmail + </application> geconfigureerd om alleen mail te versturen + van de host waarop het draait. Als bijvoorbeeld een + <acronym>POP</acronym>-server beschikbaar is, kunnen + gebruikers mail controleren vanuit school, werk, of andere + lokaties op afstand, maar zullen ze nog steeds niet in staat + zijn om uitgaande emails van lokaties van buitenaf te + versturen. Gewoonlijk zal er na enkele ogenblikken na de + poging een email van <application>MAILER-DEAMON + </application> worden verzonden met een foutbericht + <errorname>5.7 Relaying Denied</errorname>.</para> + + <para>Er zijn verschillende manieren om dit te omzeilen. De + oplossing die het meest voor de hand ligt, is om het adres + van de internetprovider in een bestand relay-domains op + <filename>/etc/mail/relay-domains</filename> te zetten. + Een snelle manier om dit te doen is:</para> + + <screen>&prompt.root; <userinput>echo "your.isp.example.com" > /etc/mail/relay-domains</userinput></screen> + + <para>Nadat dit bestand is aangemaakt of bewerkt dient + <application>sendmail</application> opnieuw gestart te + worden. Dit werkt prima indien u een serverbeheerder bent + en het niet wenselijk is om mail lokaal te verzenden, of + indien het gewenst is om een point-en-click client/systeem + op een andere machine of zelfs bij een andere + internetprovider te gebruiken. Het is ook erg bruikbaar + indien er slechts enkele email-accounts zijn aangemaakt. + Als er een groot aantal adressen dient te worden toegevoegd, + kan dit bestand in worden geopend en de domeinen worden + toegevoegd, één per regel:</para> + + <programlisting>your.isp.example.com +other.isp.example.net +users-isp.example.org +www.example.org</programlisting> + + <para>Nu zal het verzenden van elke mail door dit systeem, + verstuurd door elke host in deze lijst, lukken (aangenomen + dat de gebruiker een account op het systeem heeft). Dit is + een aardige manier om gebruikers toe te staan op afstand mail + vanaf het systeem te verzenden zonder dat mensen wordt + toegestaan om spam vanaf het systeem te verzenden.</para> + </answer> + </qandaentry> + </qandaset> </sect1> <sect1 id="mail-advanced"> - <title>* Geavanceerde onderwerpen</title> + <title>Geavanceerde onderwerpen</title> - <sect2 id="mail-config"> - <title>* Basis configuraties</title> + <para>De volgende sectie behandelt meer ervaren onderwerpen zoals + mailinstellingen en het instellen van mail voor het gehele domein. + </para> - <para></para> + <sect2 id="mail-config"> + <title>Basisinstellingen</title> + + <indexterm> + <primary>email</primary> + <secondary>instellingen</secondary> + </indexterm> + + <para>Het verzenden van email naar externe hosts zou onmiddellijk + moeten werken, zolang <filename>/etc/resolv.conf</filename> is + aangemaakt of zolang er een nameserver wordt gedraaid. Indien + het gewenst is dat mail voor de host aan de MTA (bijvoorbeeld + <application>sendmail</application>) geleverd dient te worden op + de &os;-host, zijn er twee methoden:</para> + + <itemizedlist> + <listitem> + <para>Draai een eigen nameserver op een eigen domein, + bijvoorbeeld <hostid role="domainname">FreeBSD.org</hostid> + </para> + </listitem> + + <listitem> + <para>Zorg ervoor dat mail direct aan de host geleverd wordt. + Dit wordt gedaan door mail direct aan de huidige DNS-naam + voor de machine, bijvoorbeeld <hostid role="fqdn"> + example.FreeBSD.org</hostid>, te leveren.</para> + </listitem> + </itemizedlist> + + <indexterm><primary>SMTP</primary></indexterm> + + <para>Onafhankelijk van de hierboven gekozen methode, dient de + host, om er direct mail aan geleverd te krijgen, een permanent + statisch IP-adres te hebben (niet een dynamisch adres, zoals dat + bij de meeste PPP-inbelverbindingen het geval is). Indien er + een firewall actief is, dient het SMTP-verkeer naar de host door + te geven. Indien het gewenst is dat de host direct mail + ontvangt, dient één van de twee onderstaande + dingen geregeld te zijn:</para> + + <itemizedlist> + <indexterm><primary>MX-regel</primary></indexterm> + + <listitem> + <para>Zorg ervoor dat de (laagstgenummerde) MX-regel in het + DNS naar het IP-adres van de host wijst.</para> + </listitem> + + <listitem> + <para>Zorg ervoor dat er geen MX-regel in het DNS is voor de + host.</para> + </listitem> + </itemizedlist> + + <para>Met elk van de bovenstaanden kan mail direct op de host + ontvangen worden.</para> + + <para>Probeer dit:</para> + + <screen>&prompt.root; <userinput>hostname</userinput> +example.FreeBSD.org +&prompt.root; <userinput>host example.FreeBSD.org</userinput> +example.FreeBSD.org has address 204.216.27.XX</screen> + + <para>Indien dit verschijnt, zal mail die direct naar <email + role="nolink">yourlogin@example.FreeBSD.org</email> zonder + problemen moeten werken (aangenomen dat <application>sendmail + </application> correct werkt op <hostid role="fqdn"> + example.FreeBSD.org</hostid>).</para> + + <para>Indien in plaats daarvan zoiets als dit verschijnt:</para> + + <screen>&prompt.root; <userinput>host example.FreeBSD.org</userinput> +example.FreeBSD.org has address 204.216.27.XX +example.FreeBSD.org mail is handled (pri=10) by hub.FreeBSD.org</screen> + + <para>zal alle mail die naar de host (<hostid role="fqdn"> + example.FreeBSD.org</hostid>) verzameld worden op <hostid>hub + </hostid> onder dezelfde gebruikersnaam in plaats van direct + naar de host verstuurd te worden.</para> + + <para>Bovenstaande informatie wordt door de DNS-server afgehandeld + . De DNS-regel die informatie over het routen van mail bevat is + de <emphasis>M</emphasis>ail e<emphasis>X</emphasis>change regel + . Indien er geen MX-regel is, zal mail direct aan de host + worden afgeleverd door middel van het IP-adres.</para> + + <para>De MX-regel voor <hostid role="fqdn">freefall.FreeBSD.org + </hostid> zag er eens als volgt uit:</para> + + <programlisting>freefall MX 30 mail.crl.net +freefall MX 40 agora.rdrop.com +freefall MX 10 freefall.FreeBSD.org +freefall MX 20 who.cdrom.com</programlisting> + + <para>Te zien is dat <hostid>freefall</hostid> vele MX-regels had. + Het laagste MX-getal hoort bij de host die de mail direct + ontvangt indien beschikbaar; indien het om een of andere reden + niet beschikbaar is, accepteren de anderen (soms <quote> + reserve-MXs</quote> genoemd) tijdelijk berichten en geven ze + die door wanneer een lager-genummerde host beschikbaar is, om + uiteindelijk aan de laagstgenummerde host af te leveren.</para> + + <para>Alternatieve MX-sites zouden andere Internetverbindingen dan + die van de host moeten hebben om het nuttigst te zijn. De + internetprovider of een andere vriendelijke site zouden geen + problemen moeten hebben met het leveren van deze dienst.</para> </sect2> <sect2 id="mail-domain"> - <title>* Mail voor je domain</title> - - <para></para> + <title>Mail voor het domein</title> + + <para>Om een <quote>mailhost</quote> (ook bekend als een + mailserver) te installeren, is het nodig om mail die verzonden + wordt naar de verschillende werkstations ernaar toe te leiden. +<!--(rene) EPARSE in vorige zin--> + In principe dient alle mail voor elke hostnaam in het domein (in + dit geval <hostid role="fqdn">*.FreeBSD.org</hostid>) geclaimd + te worden en naar de mailserver omgeleid te worden zodat + gebruikers hun mail op de hoofdmailserver kunnen ontvangen. + </para> + + <indexterm><primary>DNS</primary></indexterm> + + <para>Het gemakkelijkste is het indien er een gebruikersaccount + met dezelfde <emphasis>gebruikersnaam</emphasis> op beide + machines bestaat. Hiervoor dient &man.adduser.8; gebruikt te + worden.</para> + + <para>De mailhost die het meest gebruikt zal worden is de + toegewezen mailuitwisselaar voor elk werkstation in het netwerk. + Dit wordt in de DNS-instellingen als volgt gedaan:</para> + + <programlisting>example.FreeBSD.org A 204.216.27.XX ; werkstation + MX 10 hub.FreeBSD.org ; mailhost</programlisting> + + <para>Dit zal mail voor het werkstation naar de mailhost leiden + onafhankelijk van waar de A-regel naar toe wijst. De mail wordt + naar de MX-host verzonden.</para> + + <para>Om dit te doen is het nodig om een eigen DNS-server te + draaien. Neem, indien dit niet het geval is of het niet + mogelijk is om een eigen DNS-server te draaien, contact op met + degene die de DNS levert.</para> + + <para>De volgende informatie is nuttig indien email virtueel gehost + wordt. In dit voorbeeld wordt aangenomen dat er een klant is + met een eigen domein, in dit geval <hostid role="domainname"> + customer1.org</hostid>, en dat alle mail voor <hostid + role="domainname">customer1.org</hostid> naar de mailhost + <hostid role="fqdn">mail.myhost.com</hostid> verzonden dient te + worden. De regel in het DNS dient er als volgt uit te zien: + </para> + + <programlisting>customer1.org MX 10 mail.myhost.com</programlisting> + + <para>Het is <emphasis>niet</emphasis> nodig om een A-regel voor + <hostid role="domainname">customer1.org</hostid> te hebben als + er voor dat domein alleen email afgehandeld dient te worden. + </para> + + <note> + <para>Let erop dat <hostid role="domainname">customer1.org + </hostid> pingen niet werkt tenzij er een A-regel voor bestaat + .</para> + </note> + + <para>Als laatste dient <application>sendmail</application> op de + mailhost te weten voor welke domeinen en/of hostnamen het mail + dient te accepteren. Er bestaan enkele verschillende manieren + om dit te doen. Elk van de volgende manieren zal werken:</para> + + <itemizedlist> + <listitem> + <para>Voeg de hosts toe aan het bestand <filename> + /etc/mail/local-host-names</filename> indien <literal> + FEATURE(use_cw_literal)</literal>. Indien er een versie + van <application>sendmail</application> wordt gebruikt die + ouder is dan 8.10, is het te gebruiken bestand <filename> + /etc/sendmail.cw</filename>.</para> + </listitem> + + <listitem> + <para>Voeg een regel met <literal>Cwyour.host.com</literal> + toe aan <filename>/etc/sendmail.cf</filename> of aan + <filename>/etc/mail/sendmail.cf</filename> indien versie + 8.10 of nieuwer van <application>sendmail</application> + wordt gebruikt.</para> + </listitem> + </itemizedlist> </sect2> </sect1> <sect1 id="SMTP-UUCP"> - <title>* SMTP met UUCP</title> - - <para></para> + <title>SMTP met UUCP</title> + + <para>De instellingen van <application>sendmail</application> die + met &os; worden geleverd zijn ontworpen voor sites die een directe + verbinding met het Internet hebben. Sites waarvoor de mail via + UUCP willen uitwisselen dienen een ander instellingenbestand voor + <application>sendmail</application> te installeren.</para> + + <para>Het handmatig bijstellen van <filename>/etc/mail/sendmail.cf + </filename> is een geavanceerd onderwerp. Versie 8 van + <application>sendmail</application> genereert + instellingenbestanden via &man.m4.1; preprocessing, waarbij het + eigenlijke instellen op een hoger abstractieniveau plaatsvindt. + De instellingenbestanden voor &man.m4.1; kunnen onder <filename> + /usr/share/sendmail/cf</filename> gevonden worden. Het bestand + <filename>README</filename> in de map <filename>cf</filename> kan + dienen als een basisintroductie tot het instellen van &man.m4.1;. + </para> + + <para>De beste manier om UUCP te ondersteunen is het gebruiken van + de eigenschap <literal>mailertable</literal>. Dit maakt een + database aan die <application>sendmail</application> kan gebruiken + om beslissingen over routes te nemen.</para> + + <para>Als eerste dient het <filename>.mc</filename>-bestand + aangemaakt te worden. De map + <filename>/usr/share/sendmail/cf/cf</filename> bevat enkele + voorbeelden. Indien het bestand <filename>foo.mc</filename> heet, + hoeft slechts het volgende gedaan te worden om het in een geldig + <filename>sendmail.cf</filename> om te zetten:</para> + + <screen>&prompt.root; <userinput>cd /etc/mail</userinput> +&prompt.root; <userinput>make foo.cf</userinput> +&prompt.root; <userinput>cp foo.cf /etc/mail/sendmail.cf</userinput></screen> + + <para>Een typisch <filename>.mc</filename>-bestand kan er als volgt + uitzien:</para> + + <programlisting>VERSIONID(`<replaceable>Uw versienummer</replaceable>') OSTYPE(bsd4.4) + +FEATURE(accept_unresolvable_domains) +FEATURE(nocanonify) +FEATURE(mailertable, `hash -o /etc/mail/mailertable') + +define(`UUCP_RELAY', <replaceable>uw.uucp.relay</replaceable>) +define(`UUCP_MAX_SIZE', 200000) +define(`confDONT_PROBE_INTERFACES') + +MAILER(local) +MAILER(smtp) +MAILER(uucp) + +Cw <replaceable>uw.alias.host.naam</replaceable> +Cw <replaceable>uwuucpnodenaam.UUCP</replaceable></programlisting> + + <para>De regels die de eigenschappen + <literal>accept_unresolvable_domains</literal>, + <literal>nocanonify</literal>, en + <literal>confDONT_PROBE_INTERFACES</literal> bevatten zorgen + ervoor dat er geen gebruik wordt gemaakt van het DNS tijdens het + afleveren van mail. De clausule <literal>UUCP_REPLAY</literal> is + nodig om UUCP-aflevering te ondersteunen. Hier dient een hostnaam + op het Internet ingevuld te worden die .UUCP pseudo-domeinadressen + kan afhandelen, waarschijnlijk zal dit de mailrelay van de + Internetprovider zijn.</para> + + <para>Nadat dit gedaan is, is er een bestand <filename> + /etc/mail/mailertable</filename> nodig. Indien er slechts + één verbinding naar buiten is die voor alle mails + gebruikt wordt, zal het volgende bestand volstaan:</para> + + <programlisting># +# makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable +. uucp-dom:<replaceable>uw.uucp.relay</replaceable></programlisting> + + <para>Een complexer voorbeeld kan er als volgt uitzien:</para> + + <programlisting># +# makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable +# +horus.interface-business.de uucp-dom:horus +.interface-business.de uucp-dom:if-bus +interface-business.de uucp-dom:if-bus +.heep.sax.de smtp8:%1 +horus.UUCP uucp-dom:horus +if-bus.UUCP uucp-dom:if-bus +. uucp-dom:</programlisting> + + <para>De eerste drie regels behandelen speciale gevallen waarbij + domein-geadresseerde mail niet naar de standaardroute verzonden + dient te worden, maar in plaats daarvan naar een UUCP-buur om het + afleverpad <quote>af te snijden</quote>. De volgende regel + handelt mail naar het lokale Ethernetdomein die met SMTP + afgeleverd kan worden af. Als laatste worden UUCP-buren in de + .UUCP-pseudodomeinnotatie genoemd, om een <literal><replaceable> + uucp-buur</replaceable>!<replaceable>ontvanger</replaceable> + </literal>-overname toe te staan. De laatste regel bestaat altijd + uit een enkele punt, dat met al het andere matcht, met + UUCP-aflevering naar een UUCP-buur die als universele mail-gateway + naar de wereld dient. Alle nodenamen achter het sleutelwoord + <literal>uucp-dom:</literal> dienen geldige UUCP-buren te zijn, + dat met het commando <literal>uuname</literal> gecontroleerd kan + worden.</para> + + <para>Dit bestand dient naar een DBM-database omgezet te worden voor + gebruik. De opdrachtregel om dit te doen kan het beste als + commentaar bovenaan het bestand <filename>mailertable</filename> + gezet worden. Deze opdracht dient telkens wanneer het bestand + <filename>mailertable</filename> wordt gewijzigd uitgevoerd te + worden.</para> + + <para>Laatste tip: indien de werking van een zekere mailroute niet + zeker is, kan de optie <option>-bt</option> van <application> + sendmail</application> gebruikt worden. Het start <application> + sendmail</application> in <emphasis>adrestestmodus</emphasis> op + ; voer <literal>3,0</literal> gevolgd door het adres dat voor de + mailrouting getest dient te worden in. De laatste regel bevat de + gebruikte interne mailagent, de bestemmingshost waarmee deze agent + aangeroepen wordt, en het (mogelijk vertaalde) adres. Deze modus + kan door het typen van <keycombo action="simul"><keycap>Ctrl + </keycap><keycap>D</keycap></keycombo> verlaten worden.</para> + + <screen>&prompt.user; <userinput>sendmail -bt</userinput> +ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) +Enter <ruleset> <address> +<prompt>></prompt> <userinput>3,0 foo@example.com</userinput> +canonify input: foo @ example . com +... +parse returns: $# uucp-dom $@ <replaceable>uw.uucp.relay</replaceable> $: foo < @ example . com . > +<prompt>></prompt> <userinput>^D</userinput></screen> </sect1> <sect1 id="outgoing-only"> @@ -232,15 +1454,166 @@ </author> </authorgroup> </sect1info> - <title>* Alleen voor verzenden instellen</title> - <para></para> + <title>Instellen om alleen te versturen</title> + + <para>Er zijn veel gevallen waarbij het gewenst is om enkel mail te + verzenden via een relay. Voorbeelden hiervan zijn:</para> + + <itemizedlist> + <listitem> + <para>De computer is een desktop, maar het is gewenst om + programma's als &man.send-pr.1; te gebruiken. Hiervoor dient + de mailrelay van de internetprovider gebruikt te worden. + </para> + </listitem> + + <listitem> + <para>De computer is een server welke mail niet lokaal verwerkt, + maar alle mail voor verwerking doorstuurt.</para> + </listitem> + </itemizedlist> + + <para>Zowat elke <acronym>MTA</acronym> kan deze specifieke taak + vervullen. Helaas kan het erg moeilijk zijn om een <acronym>MTA + </acronym> met alle mogelijkheden correct in te stellen om alleen + uitgaande mail te behandelen. Programma's als <application> + sendmail</application> en <application>postfix</application> + zijn hiervoor grotendeels overbodig.</para> + + <para>Ook kan het zijn dat de overeenkomst van een typisch + internetabonnement het draaien van een <quote>mail server</quote> + verbiedt.</para> + + <para>De gemakkelijkste manier om aan deze behoeften te voldoen is + door de port <filename role="package">mail/ssmtp</filename> te + installeren. Voer als <username>root</username> de volgende + opdrachten uit:</para> + + <screen>&prompt.root; <userinput>cd /usr/ports/mail/ssmtp</userinput> +&prompt.root; <userinput>make install replace clean</userinput></screen> + + <para>Eenmaal geïnstalleerd kan + <filename role="package">mail/ssmtp</filename> door middel van het + vier-regelige bestand <filename>/usr/local/etc/ssmtp/ssmtp.conf + </filename> ingesteld worden:</para> + + <programlisting>root=uwechteemail@example.com +mailhub=mail.example.com +rewriteDomain=example.com +hostname=_HOSTNAME_</programlisting> + + <para>Let erop dat het echte emailadres voor <username>root + </username> gebruikt wordt. Vervang <hostid role="fqdn"> + mail.example.com</hostid> door de uitgaande mail relay van de + internetprovider (ook wel de <quote>uitgaande mailserver</quote> + of <quote>SMTP-server</quote> genoemd).</para> + + <para>Let erop dat <application>sendmail</application> uitgeschakeld + wordt, inclusief de uitgaande maildienst. Raadpleeg <xref + linkend="mail-disable-sendmail"> voor details.</para> + + <para><filename role="package">mail/ssmtp</filename> heeft nog meer + mogelijkheden. Raadpleeg het voorbeeldinstelbestand <filename> + /usr/local/etc/ssmtp</filename> of de hulppagina van + <application>ssmtp</application> voor enkele voorbeelden en meer + informatie.</para> + + <para>Door <application>ssmtp</application> op deze manier in te + stellen kan alle software op de computer welke mail dient te + versturen correct functioneren, zonder dat het beleid van de + internetprovider geschonden wordt of dat de computer gekaapt kan + worden om spam mee te versturen.</para> </sect1> <sect1 id="SMTP-dialup"> - <title>* Mail gebruiken met een inbel verbinding</title> - - <para></para> + <title>Mail gebruiken met een inbelverbinding</title> + + <para>Indien het IP-adres statisch is, is het niet nodig om de + standaardwaarden aan te passen. De toegewezen Internetnaam dient + als hostnaam gebruikt te worden waarna <application>sendmail + </application> de rest kan doen.</para> + + <para>Indien het IP-adres dynamisch is en er een inbelverbinding + naar het Internet gebruikt wordt, is de postbus waarschijnlijk op + de mailserver van de Internetprovider geplaatst. Stel dat het + domein van de Internetprovider <hostid role="domainname"> + example.net</hostid> is, dat de gebruikersnaam <username> + gebruiker</username> is, dat de machine <hostid role="fqdn"> + bsd.home</hostid> is, en dat volgens de Internetprovider <hostid + role="fqdn">relay.example.net</hostid> als mailrelay gebruikt + kan worden.</para> + + <para>Om mail van de postbus te ontvangen, dient er een + ontvangstagent geïnstalleerd te worden. Het gereedschap + <application>fetchmail</application> is een goede keuze omdat het + veel verschillende protocollen ondersteunt. Dit programma is als + pakket of vanuit de Portscollectie ( + <filename role="package">mail/fetchmail</filename>) beschikbaar. + Normaliter levert de Internetprovider <acronym>POP</acronym>. + Indien <acronym>gebruikers-PPP</acronym> gebruikt wordt, kan de + mail automatisch worden opgehaald wanneer er een verbinding met + Internet tot stand is gebracht door middel van de volgende regel + in <filename>/etc/ppp/ppp.linkup</filename>:</para> + + <programlisting>MYADDR: +!bg su gebruiker -c fetchmail</programlisting> + + <para>Indien <application>sendmail</application> gebruikt wordt ( + zoals hieronder te zien is) om mail aan niet-lokale accounts af te + leveren, is het waarschijnlijk gewenst dat <application>sendmail + </application> de mailrij verwerkt zodra er een Internetverbinding + tot stand is gebracht. Hiervoor dient de volgende opdracht na de + <command>fetchmail</command>-opdracht in <filename> + /etc/ppp/ppp.linkup</filename> geplaatst te worden:</para> + + <programlisting> !bg su gebruiker -c "sendmail -q"</programlisting> + + <para>Aangenomen wordt dat er een account voor <username>gebruiker + </username> op <hostid role="fqdn">bsd.home</hostid> aanwezig is. + In de thuismap van <username>gebruiker</username> op <hostid + role="fqdn">bsd.home</hostid> dient een bestand <filename> + .fetchmailrc</filename> aangemaakt te worden:</para> + + <programlisting>poll example.net protocol pop3 fetchall pass MijnGeheim</programlisting> + + <para>Dit bestand dient alleen voor <username>gebruiker</username> + leesbaar te zijn aangezien het het wachtwoord <literal>MijnGeheim + </literal> bevat.</para> + + <para>Om mail met de correcte <literal>from:</literal>-header te + versturen, dient <application>sendmail</application> <email> + gebruiker@example.net</email> in plaats van <email role="nolink"> + gebruiker@bsd.home</email> te gebruiken. Het kan ook wenselijk + zijn om <application>sendmail</application> alle mail via <hostid + role="fqdn">relay.example.net</hostid> te versturen, om sneller + mail te verzenden.</para> + + <para>Het volgende <filename>.mc</filename> zou voldoende moeten + zijn:</para> + + <programlisting>VERSIONID(`bsd.home.mc version 1.0') +OSTYPE(bsd4.4)dnl +FEATURE(nouucp)dnl +MAILER(local)dnl +MAILER(smtp)dnl +Cwlocalhost +Cwbsd.home +MASQUERADE_AS(`example.net')dnl +FEATURE(allmasquerade)dnl +FEATURE(masquerade_envelope)dnl +FEATURE(nocanonify)dnl +FEATURE(nodns)dnl +define(`SMART_HOST', `relay.example.net') +Dmbsd.home +define(`confDOMAIN_NAME', `bsd.home')dnl +define(`confDELIVERY_MODE', `deferred')dnl</programlisting> + + <para>In de vorige sectie staan de details over het omzetten van een + <filename>.mc</filename>-bestand in bestand <filename>sendmail.cf + </filename>. Ook dient <application>sendmail</application> + herstart te worden na het wijzigen van <filename>sendmail.cf + </filename>.</para> </sect1> <sect1 id="SMTP-Auth"> @@ -253,9 +1626,137 @@ </author> </authorgroup> </sect1info> - <title>* SMTP authenticatie</title> - <para></para> + <title>SMTP-authenticatie</title> + + <para>Het hebben van <acronym>SMTP</acronym>-authenticatie op een + mailserver heeft een aantal voordelen. <acronym>SMTP</acronym>- + authenticatie kan een extra beveiligingslaag toevoegen aan + <application>sendmail</application>, en het geeft mobiele + gebruikers die van hosts wisselen de mogelijkheid om dezelfde + mailserver te gebruiken zonder dat ze telkens de instellingen van + hun mailclient moeten veranderen.</para> + + <procedure> + <step> + <para>Installeer <filename role="package">security/cyrus-sasl2</filename> + vanuit de ports. Deze port is te vinden in + <filename role="package">security/cyrus-sasl2</filename>. De + port <filename role="package">security/cyrus-sasl2</filename> + ondersteund een aantal opties tijdens de compilatie. Voor de + SMTP-authenticatiemethode die hier gebruikt wordt, dient de + optie <option>LOGIN</option> te zijn uitgezet.</para> + </step> + + <step> + <para>Voeg nadat <filename role="package">security/cyrus-sasl2</filename> + is geïnstalleerd deze regel toe aan <filename> + /usr/local/lib/sasl2/Sendmail.conf</filename>: + </para> + + <programlisting>pwcheck_method: saslauthd</programlisting> + </step> + + <step> + <para>Installeer vervolgens + <filename role="package">security/cyrus-sasl2-saslauthd</filename> + , en voeg de volgende regel toe aan <filename>/etc/rc.conf + </filename>:</para> + + <programlisting>saslauthd_enable="YES"</programlisting> + + <para>en start vervolgens het saslauthd-daemon op:</para> + + <screen>&prompt.root; <userinput>/usr/local/etc/rc.d/saslauthd start</userinput></screen> + + <para>Deze daemon fungeert als een onderhandelaar voor + <application>sendmail</application> die zich tegen de &os; + <filename>passwd</filename>-database authenticeert. Dit + bespaart de moeite van het opnieuw creëren van een nieuwe + verzameling gebruikersnamen en wachtwoorden voor elke + gebruiker die <acronym>SMTP</acronym>-authenticatie nodig + heeft, en het houdt de wachtwoorden voor het inloggen en de + mail hetzelfde.</para> + </step> + + <step> + <para>Voeg de volgende regels toe aan <filename>/etc/rc.conf + </filename>:</para> + + <programlisting>SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL +SENDMAIL_LDFLAGS=-L/usr/local/lib +SENDMAIL_LDADD=-lsasl2</programlisting> + + <para>Deze regels geven <application>sendmail</application> de + juiste instelopties om tijdens het compileren met <filename + role="package">cyrus-sal2</filename> te linken. Zorg ervoor + dat <filename role="package">cyrus-sasl2</filename> is + geïnstalleerd voordat <application>sendmail</application> + wordt gehercompileerd.</para> + </step> + + <step> + <para>Hercompileer <application>sendmail</application> door de + volgende opdrachten uit te voeren:</para> + + <screen>&prompt.root; <userinput>cd /usr/src/lib/libsmutil</userinput> +&prompt.root; <userinput>make cleandir && make obj && make</userinput> +&prompt.root; <userinput>cd /usr/src/lib/libsm</userinput> +&prompt.root; <userinput>make cleandir && make obj && make</userinput> +&prompt.root; <userinput>cd /usr/src/usr.sbin/sendmail</userinput> +&prompt.root; <userinput>make cleandir && make obj && make && make install</userinput></screen> + + <para>Het compileren van <application>sendmail</application> zou + geen problemen moeten geven indien <filename>/usr/src + </filename> niet veel veranderd is en dat de benodigde + gedeelde bibliotheken aanwezig zijn.</para> + </step> + + <step> + <para>Nadat <application>sendmail</application> is gecompileerd + en opnieuw is gecompileerd, dient <filename> + /etc/mail/freebsd.mc</filename> (of het plaatselijke + <filename>.mc</filename>-bestand) gewijzigd te worden. Veel + beheerders kiezen ervoor om de uitvoer van &man.hostname.1; + als <filename>.mc</filename>-bestandsnaam te gebruiken vanwege + de uniciteit. Voeg deze regels toe:</para> + + <programlisting>dnl set SASL options +TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl +define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl</programlisting> + + <para>Deze opties stellen de verschillende beschikbare methoden + voor <application>sendmail</application> in om gebruikers te + authenticeren. Gebruik de bijgeleverde documentatie indien + een andere methode dan <application>pwcheck</application> + gewenst is.</para> + </step> + + <step> + <para>Voer als laatste &man.make.1; in <filename>/etc/mail + </filename> uit. Hierdoor wordt het nieuwe <filename>.mc + </filename>-bestand uitgevoerd en wordt een bestand <filename> + freebsd.cf</filename> (of de plaatselijke variant ervan) + aangemaakt. Voer hierna de opdracht <command>make install + restart</command> uit, wat het bestand naar <filename> + sendmail.cf</filename> kopieert en <application>sendmail + </application> op de juiste manier herstart. In <filename> + /etc/mail/Makefile</filename> staat meer informatie over dit + proces.</para> + </step> + </procedure> + + <para>Indien alles goed is gegaan, moet het mogelijk zijn om de + inloginformatie in de mailclient in te voeren en een testbericht + te versturen. Zet voor verdere onderzoekingen de <option>LogLevel + </option> van <application>sendmail</application> op 13 en houdt + <filename>/var/log/maillog</filename> in de gaten voor + foutmeldingen.</para> + + <para>Refereer naar de <application>sendmail</application>-pagina + betreffende <ulink url="http://www.sendmail.org/~ca/email/auth.html"> + <acronym>SMTP</acronym>-authenticatie</ulink> voor meer + informatie.</para> </sect1> <sect1 id="mail-agents"> @@ -268,24 +1769,370 @@ </author> </authorgroup> </sect1info> - <title>* Mail User Agents</title> - <sect2 id="mail-command"> - <title>* mail</title> + <title>Mail User Agents</title> + + <indexterm><primary>Mail User Agents</primary></indexterm> + + <para>Een mail user agent (<acronym>MUA</acronym>) is een toepassing + die wordt gebruikt om email te versturen en te ontvangen. + Bovendien, omdat email <quote>evolueert</quote> en steeds + complexer wordt, worden <acronym>MUA</acronym>s steeds krachtiger + in de manier waarop ze met email omgaan; dit biedt gebruikers + verhoogde functionaliteit en flexibiliteit. &os; ondersteunt + verschillende mail user agents die allemaal eenvoudig + geïnstalleerd kunnen worden door de <link linkend="ports"> + &os; Ports Collectie</link> te gebruiken. Gebruikers kunnen + kiezen tussen grafische emailclients zoals <application>evolution + </application> of <application>balsa</application>, op de console + gebaseerde clients zoals <application>mutt</application>, + <application>pine</application> of <command>mail</command>, of de + webinterface die door sommige grote organisaties wordt gebruikt. + </para> - <para></para> + <sect2 id="mail-command"> + <title>mail</title> + + <para>&man.mail.1; is de standaard mail user agent + (<acronym>MUA</acronym>) in &os;. Het is een consolegebaseerde + <acronym>MUA</acronym> die alle basisfunctionaliteit biedt die + nodig is om tekstgebaseerde email te verzenden en te ontvangen, + maar het is beperkt in de mogelijkheden om met bijlagen om te + gaan en het ondersteunt alleen plaatselijke postbussen.</para> + + <para>Hoewel <command>mail</command> van huis uit geen + ondersteuning voor <acronym>POP</acronym>- of <acronym>IMAP + </acronym>-servers biedt, kunnen deze postbussen gedownload + worden naar een lokaal <filename>mbox</filename>-bestand door + een toepassing als <application>fetchmail</application> te + gebruiken, welke later in dit hoofdstuk behandeld wordt (<xref + linkend="mail-fetchmail">).</para> + + <para>Om email te versturen en te ontvangen, is het voldoende om + de opdracht <command>mail</command> te geven zoals in het + volgende voorbeeld:</para> + + <screen>&prompt.user; <userinput>mail</userinput></screen> + + <para>De inhoud van de gebruikerspostbus in <filename + class="directory">/var/mail</filename> wordt automatisch gelezen + door het programma <command>mail</command>. Indien de postbus + leeg is, eindigt het programma het een melding dat er geen mail + gevonden kon worden. Wanneer de postbus is gelezen, wordt de + applicatie-interface gestart, en wordt er een berichtenlijst + weergegeven. Berichten worden automatisch genummerd, zoals in + het volgende voorbeeld te zien is:</para> + + <screen>Mail version 8.1 6/6/93. Type ? for help. +"/var/mail/marcs": 3 messages 3 new +>N 1 root@localhost Mon Mar 8 14:05 14/510 "test" + N 2 root@localhost Mon Mar 8 14:05 14/509 "user account" + N 3 root@localhost Mon Mar 8 14:05 14/509 "sample"</screen> + + <para>Berichten kunnen nu worden gelezen door middel van het + commando <keycap>t</keycap> van <command>mail</command>, gevolgd + door het gewenste berichtnummer. In dit voorbeeld wordt de + eerste email gelezen:</para> + + <screen>& <userinput>t 1</userinput> +Message 1: +From root@localhost Mon Mar 8 14:05:52 2004 +X-Original-To: marcs@localhost +Delivered-To: marcs@localhost +To: marcs@localhost +Subject: test +Date: Mon, 8 Mar 2004 14:05:52 +0200 (SAST) +From: root@localhost (Charlie Root) + +This is a test message, please reply if you receive it.</screen> + + <para>Zoals in bovenstaand voorbeeld te zien is, zorgt de toets + <keycap>t</keycap> ervoor dat het bericht met volledige headers + wordt getoond. Om de berichtenlijst nogmaals weer te geven, + dient de toets <keycap>h</keycap> gebruikt te worden.</para> + + <para>Er kan met <command>mail</command> op een email gereageerd + worden, door gebruik te maken één van de toetsen + <keycap>R</keycap> of <keycap>r</keycap>. De toets + <keycap>R</keycap> vertelt <command>mail</command> dat er alleen + aan de verzender van het bericht geantwoord dient te worden, + terwijl de toets <keycap>r</keycap> niet alleen aan de verzender + antwoordt, maar ook aan andere ontvangers van het bericht. Het + is ook mogelijk om achter deze commando's het berichtnummer te + plaatsen waarop gereageerd dient te worden. Nadat dit gedaan is + , dient het antwoord gegeven te worden, en dient het einde van + het bericht aangegeven te worden met een enkele + <keycap>.</keycap> op een nieuwe regel. Een voorbeeld staat + hieronder:</para> + + <screen>& <userinput>R 1</userinput> +To: root@localhost +Subject: Re: test + +<userinput>Thank you, I did get your email. +.</userinput> +EOT</screen> + + <para>Om een nieuwe email te verzenden, dient de toets + <keycap>m</keycap> gebruikt te worden, gevolgd door het adres + van de ontvanger. Er kunnen meerdere ontvangers gespecificeerd + worden door ze met een <keycap>,</keycap> te scheiden. Hierna + kan het onderwerp van het bericht worden gegeven, gevolgd door + de inhoud van het bericht. Het einde van het bericht dient te + worden aangegeven door een enkele <keycap>.</keycap> op een + nieuwe regel te plaatsen.</para> + + <screen>& <userinput>mail root@localhost</userinput> +Subject: <userinput>I mastered mail + +Now I can send and receive email using mail ... :) +.</userinput> +EOT</screen> + + <para>Binnen het programma <command>mail</command> kan op elk + moment de opdracht <keycap>?</keycap> gebruikt worden om hulp + weer te geven, hiervoor kan ook de hulppagina &man.mail.1; + worden geraadpleegd.</para> + + <note> + <para>Zoals eerder is aangegeven, is het programma &man.mail.1; + van origine niet ontworpen om met bijlagen om te gaan, dus + behandelt het deze slecht. Nieuwere <acronym>MUA</acronym>s + zoals <application>mutt</application> gaan veel intelligenter + met bijlagen om. Maar indien het programma <command>mail + </command> nog steeds geprefereerd wordt, kan de port + <filename role="package">converters/mpack</filename> van + aanzienlijk nut zijn.</para> + </note> </sect2> <sect2 id="mutt-command"> - <title>* mutt</title> - - <para></para> + <title>mutt</title> + + <para><application>mutt</application> is een kleine doch zeer + krachtige mail user agent, met uitstekende mogelijkheden, + waaronder:</para> + + <itemizedlist> + <listitem> + <para>De mogelijkheid om berichten te threaden;</para> + </listitem> + + <listitem> + <para>PGP-ondersteuning voor het digitaal ondertekenen en + versleutelen van email;</para> + </listitem> + + <listitem> + <para>MIME-ondersteuning;</para> + </listitem> + + <listitem> + <para>Maildir-ondersteuning;</para> + </listitem> + + <listitem> + <para>Erg goed aan te passen.</para> + </listitem> + </itemizedlist> + + <para>Al deze eigenschappen zorgen ervoor dat <application>mutt + </application> een van de meest geavanceerde beschikbare mail + user agents is. Op <ulink url="http://www.mutt.org"></ulink> + staat meer informatie.</para> + + <para>De stabiele versie van <application>mutt</application> kan + geïnstalleerd worden door de port <filename + role="package">mail/mutt</filename> te gebruiken, terwijl de + huidige ontwikkelaarsversie geïnstalleerd kan worden via de + port <filename role="package">mail/mutt-devel</filename>. Nadat + de port is geïnstalleerd, kan + <application>mutt</application> gestart worden met het volgende + commando:</para> + + <screen>&prompt.user; <userinput>mutt</userinput></screen> + + <para><application>mutt</application> zal automatisch de inhoud + van de gebruikerspostbus in <filename + class="directory">/var/mail</filename> lezen en de inhoud + weergeven indien van toepassing. Indien er geen mails gevonden + zijn in de gebruikerspostbus, zal <application>mutt + </application> wachten voor opdrachten van de gebruiker. Het + onderstaande voorbeeld laat zien hoe <application>mutt + </application> een lijst berichten weergeeft:</para> + + <mediaobject> + <imageobject> + <imagedata fileref="mail/mutt1" format="PNG"> + </imageobject> + </mediaobject> + + <para>Om een email te lezen is het voldoende om het met de + cursortoetsen te selecteren, en <keycap>Enter</keycap> aan te + slaan. Een voorbeeld waarbij <application>mutt</application> + email laat zien staat hieronder::</para> + + <mediaobject> + <imageobject> + <imagedata fileref="mail/mutt2" format="PNG"> + </imageobject> + </mediaobject> + + <para>Net zoals het commando &man.mail.1; staat <application>mutt + </application> gebruikers toe om alleen de afzender alsook alle + ontvangers te beantwoorden. Om alleen de afzender van de email + te antwoorden, wordt de toets <keycap>r</keycap> gebruikt. Om + aan een groep te antwoorden, welke aan zowel de originele + afzender als aan alle berichtontvangers wordt gestuurd, wordt de + toets <keycap>g</keycap> gebruikt.</para> + + <note> + <para><application>mutt</application> maakt gebruikt van het + programma &man.vi.1; als tekstverwerker voor het aanmaken en + beantwoorden van emails. De gebruiker kan dit aanpassen door + een eigen <filename>.muttrc</filename> aan te maken in hun + thuismap en de variabele <literal>editor</literal> of de + omgevingsvariabele <envar>EDITOR</envar> aan te passen. Zie + <ulink url="http://www.mutt.org/"></ulink> voor meer + informatie over het instellen van + <application>mutt</application>.</para> + </note> + + <para>Voor het opstellen van een nieuw mailbericht wordt de toets + <keycap>m</keycap> gebruikt. Nadat er een geldig bericht is + gegeven, start <application>mutt</application> &man.vi.1; op en + kan de mail geschreven worden. Nadat de inhoud van de mail is + geschreven, zal <application>mutt</application> nadat <command> + vi</command> verlaten is, zichzelf hervatten en een + overzichtsscherm van de te verzenden mail afbeelden. Om de mail + te versturen wordt de toets <keycap>y</keycap> gebruikt. Een + voorbeeld van het overzichtsscherm is hieronder te zien:</para> + + <mediaobject> + <imageobject> + <imagedata fileref="mail/mutt3" format="PNG"> + </imageobject> + </mediaobject> + + <para><application>mutt</application> bevat ook uitgebreide hulp, + welke in de meeste menu's geactiveerd kan worden door de toets + <keycap>?</keycap> aan te slaan. De bovenste regel geeft ook + de relevante toetsen aan.</para> </sect2> <sect2 id="pine-command"> - <title>* pine</title> - - <para></para> + <title>pine</title> + + <para><application>pine</application> richt zich op de beginnende + gebruiker, maar bevat ook geavanceerde mogelijkheden.</para> + + <warning> + <para>Er zijn in het verleden verschillende kwetsbaarheden voor + <application>pine</application> ontdekt, welke aanvallers op + afstand in staat stelden om willekeurige code als gebruikers + op het lokale systeem uit te voeren, door een speciaal + voorbereide email te versturen. Alle + <emphasis>bekende</emphasis> problemen van dit type zijn + gerepareerd, maar de code van <application>pine</application> + is op een zeer onveilige manier geschreven en de + beveiligingsofficier van &os; gelooft dat het waarschijnlijk + is dat er nog meer onontdekte kwetsbaarheden zijn. Installeer + <application>pine</application> op eigen risico.</para> + </warning> + + <para>De huidige versie van <application>pine</application> kan + door middel van de port + <filename role="package">mail/pine4</filename> + geïnstalleerd worden. Wanneer de port geïnstalleerd + is, kan <application>pine</application> met het volgende + commando gestart worden:</para> + + <screen>&prompt.user; <userinput>pine</userinput></screen> + + <para>De eerste keer dat <application>pine</application> wordt + gedraaid geeft het een welkomstpagina met een korte introductie + weer, alsmede een verzoek van het ontwikkelteam van + <application>pine</application> om een anoniem emailbericht te + versturen wat ze in staat stelt om te beoordelen hoeveel + gebruikers hun client gebruiken. Druk op <keycap>Enter</keycap> + om dit anonieme bericht te versturen, of druk op + <keycap>E</keycap> om het welkomstscherm te verlaten zonder een + anoniem bericht te versturen. Een voorbeeld van het + welkomstscherm is hieronder te zien:</para> + + <mediaobject> + <imageobject> + <imagedata fileref="mail/pine1" format="PNG"> + </imageobject> + </mediaobject> + + <para>Vervolgens wordt het hoofdmenu getoond, waarin gemakkelijk + met de cursortoetsen kan worden genavigeerd. Dit hoofdmenu + biedt afkortingen voor het schrijven van nieuwe mail, het + doorbladeren van mailmappen, en zelfs het beheren van het + adresboek. Onder het hoofdmenu worden relevante + toetscombinaties voor de huidige taak getoond.</para> + + <para>De standaardmap die door <application>pine</application> + wordt geopend is de <filename class="directory">inbox</filename> + . Gebruik de toets <keycap>I</keycap> om de berichtenindex te + zien, of selecteer de optie <guimenuitem>MESSAGE + INDEX</guimenuitem> zoals hieronder te zien is:</para> + + <mediaobject> + <imageobject> + <imagedata fileref="mail/pine2" format="PNG"> + </imageobject> + </mediaobject> + + <para>De berichtenindex geeft de berichten in de huidige map weer, + en kan met de cursortoetsen worden genavigeerd. Gemarkeerde + berichten kunnen worden gelezen door op <keycap>Enter</keycap> + te drukken.</para> + + <mediaobject> + <imageobject> + <imagedata fileref="mail/pine3" format="PNG"> + </imageobject> + </mediaobject> + + <para>In onderstaand screenshot wordt een voorbeeldbericht door + <application>pine</application> weergegeven. Toetsencombinaties + worden ter referentie aan de onderkant van het scherm + weergegeven. Een voorbeeld van een van deze combinaties is de + toets <keycap>r</keycap>, welke de <acronym>MUA</acronym> + vertelt op het huidige bericht te antwoorden.</para> + + <mediaobject> + <imageobject> + <imagedata fileref="mail/pine4" format="PNG"> + </imageobject> + </mediaobject> + + <para>Voor het beantwoorden van een bericht wordt in + <application>pine</application> gebruikt gemaakt van de + tekstverwerker <application>pico</application>, welke standaard + bij <application>pine</application> wordt geïnstalleerd. + Het programma <application>pico</application> maakt het + gemakkelijk om in het bericht te navigeren en is meer + vergevingsgezind voor nieuwe gebruikers dan &man.vi.1; of + &man.mail.1;. Wanneer het antwoord voltooid is, kan het bericht + worden verzonden door <keycombo action="simul"> + <keycap>Ctrl</keycap><keycap>X</keycap></keycombo> te + gebruiken. Het programma <application>pine</application> zal + om bevestiging vragen.</para> + + <mediaobject> + <imageobject> + <imagedata fileref="mail/pine5" format="PNG"> + </imageobject> + </mediaobject> + + <para>Het programma <application>pine</application> kan worden + aangepast door de optie <guimenuitem>SETUP</guimenuitem> van het + hoofdmenu te gebruiken. Raadpleeg <ulink + url="http://www.washington.edu/pine/"></ulink> voor meer + informatie.</para> </sect2> </sect1> @@ -299,9 +2146,97 @@ </author> </authorgroup> </sect1info> - <title>* fetchmail gebruiken</title> - <para></para> + <title>fetchmail gebruiken</title> + + <indexterm><primary>fetchmail</primary></indexterm> + + <para><application>fetchmail</application> is een volwaardige + client voor <acronym>IMAP</acronym> en <acronym>POP</acronym> + welke gebruikers in staat stelt om automatisch mail van <acronym> + IMAP</acronym>- en <acronym> POP</acronym>-servers op afstand + naar plaatselijke postbussen te downloaden; daar kan het + gemakkelijker worden benaderd. <application>fetchmail + </application> kan met de port <filename + role="package">mail/fetchmail</filename> worden + geïnstalleerd, en biedt verschillende mogelijkheden, + waaronder:</para> + + <itemizedlist> + <listitem> + <para>Ondersteuning voor <acronym>POP3</acronym>, + <acronym>APOP</acronym>, <acronym>KPOP</acronym>, + <acronym>IMAP</acronym>, <acronym>ETRN</acronym>, en + <acronym>ODMR</acronym> protocollen.</para> + </listitem> + + <listitem> + <para>De mogelijkheid om mail via <acronym>SMTP</acronym> door + te sturen, wat filteren, doorsturen, en aliassen toestaat om + normaal te functioneren.</para> + </listitem> + + <listitem> + <para>Kan in daemon-modus gedraaid worden om periodiek op + nieuwe berichten te controleren.</para> + </listitem> + + <listitem> + <para>Kan verschillende postbussen ophalen en ze afhankelijk + van de instellingen naar verschillende plaatselijke + gebruikers doorsturen.</para> + </listitem> + </itemizedlist> + + <para>Hoewel het niet de bedoeling van dit document is om alle + mogelijkheden van <application>fetchmail</application> uit te + leggen, zullen sommige basismogelijkheden worden uitgelegd. Het + gereedschap <application>fetchmail</application> heeft een + instellingenbestand <filename>.fetchmailrc</filename> nodig om + correct te kunnen werken. Dit bestand bevat zowel informatie + over de server als de inloggegevens. Vanwege de gevoelige aard + van de inhoud van dit bestand is het aan te raden om het met het + volgende commando alleen leesbaar te maken voor de eigenaar ervan + :</para> + + <screen>&prompt.user; <userinput>chmod 600 .fetchmailrc</userinput></screen> + + <para>Het volgende <filename>.fetchmailrc</filename> dient als een + voorbeeld voor het downloaden van een postbus van een enkele + gebruiker via <acronym>POP</acronym>. Het vertelt <application> + fetchmail</application> om met <hostid + role="fqdn">example.com</hostid> te verbinden als gebruiker + <username>joesoap</username> met wachtwoord <literal>XXX + </literal>. Dit voorbeeld gaat ervan uit dat de gebruiker + <username>joesoap</username> ook een gebruiker is op het + plaatselijke systeem.</para> + + <programlisting>poll example.com protocol pop3 username "joesoap" password "XXX"</programlisting> + + <para>Het volgende voorbeeld legt verbinding met meerdere <acronym> + POP</acronym>- en <acronym>IMAP</acronym>-servers en stuurt de + mail door naar verschillende plaatselijke gebruikers indien van + toepassing:</para> + + <programlisting>poll example.com proto pop3: +user "joesoap", with password "XXX", is "jsoap" here; +user "andrea", with password "XXXX"; +poll example2.net proto imap: +user "john", with password "XXXXX", is "myth" here;</programlisting> + + <para>Het gereedschap <application>fetchmail</application> kan in + daemon-modus worden gedraaid met de vlag <option>-d</option> + gevolgd door het interval (in seconden) waarmee <application> + fetchmail</application> de servers die in het bestand + <filename>.fetchmailrc</filename> vermeld staan dient te vragen. + Het volgende voorbeeld zorgt ervoor dat <application>fetchmail + </application> elke 600 seconden vraagt:</para> + + <screen>&prompt.user; <userinput>fetchmail -d 600</userinput></screen> + + <para>Meer informatie over <application>fetchmail</application> is + te vinden op <ulink url="http://fetchmail.berlios.de/"></ulink>. + </para> </sect1> <sect1 id="mail-procmail"> @@ -314,9 +2249,81 @@ </author> </authorgroup> </sect1info> - <title>* procmail gebruiken</title> - <para></para> + <title>procmail gebruiken</title> + + <indexterm><primary>procmail</primary></indexterm> + + <para>Het gereedschap <application>procmail</application> is een + zeer krachtig gereedschap voor het filteren van binnenkomende + mail. Het stelt gebruikers in staat om <quote>regels</quote> te + definiëren welke aan binnenkomende mail gekoppeld kunnen + worden om specifieke taken uit te voeren of om de mail naar + alternatieve postbussen en/of emailadressen door te sturen. + <application>procmail</application> kan met de port <filename + role="package">mail/procmail</filename> geïnstalleerd + worden. Eenmaal geïnstalleerd kan het direct met de meeste + <acronym>MTA</acronym>s geïntegreerd worden; raadpleeg de + documentatie van de <acronym>MTA</acronym> voor meer informatie. + Als alternatief kan <application>procmail</application> + geïntegreerd worden door de volgende regel aan het bestand + <filename>.forward</filename> in de thuismap van de gebruiker + die <application>procmail</application> gebruikt toe te voegen: + </para> + + <programlisting>"|exec /usr/local/bin/procmail || exit 75"</programlisting> + + <para>De volgende sectie geeft wat basisregels van <application> + procmail</application>met een korte beschrijving ervan. Deze, + en andere, regels dienen in het bestand + <filename>.procmailrc</filename> geplaatst te worden, welke zich + in de thuismap van de gebruiker dient te bevinden.</para> + + <para>De meerderheid van deze regels kan ook in de hulppagina + &man.procmailex.5; gevonden worden.</para> + + <para>Stuur alle mail van <email>user@example.com</email> door naar + het externe adres <email + role="nolink">goodmail@example2.com</email>:</para> + + <programlisting>:0 +* ^From.*user@example.com +! goodmail@example2.com</programlisting> + + <para>Stuur alle mails korten dan 1000 bytes door naar het externe + adres <email role="nolink">goodmail@example2.com</email>:</para> + + <programlisting>:0 +* < 1000 +! goodmail@example2.com</programlisting> + + <para>Stuur alle mail verzonden aan + <email>alternate@example.com</email> door naar een postbus + <filename>alternate</filename>:</para> + + <programlisting>:0 +* ^TOalternate@example.com +alternate</programlisting> + + <para>Stuur alle mail met het onderwerp <quote>Spam</quote> door + naar <filename>/dev/null</filename>:</para> + + <programlisting>:0 +^Subject:.*Spam +/dev/null</programlisting> + + <para>Een handig recept dat binnenkomende <hostid + role="domainname">&os;.org</hostid> mailinglijsten parseert en + elke lijst in en eigen postbus plaatst:</para> + + <programlisting>:0 +* ^Sender:.owner-freebsd-\/[^@]+@FreeBSD.ORG +{ + LISTNAME=${MATCH} + :0 + * LISTNAME??^\/[^@]+ + FreeBSD-${MATCH} +}</programlisting> </sect1> </chapter> |