FreeBSD handboek
Terug | Hoofdstuk 29. Elektronische mail | Volgende

# 29.7. SMTP met UUCP

De instellingen van sendmail die met FreeBSD 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 sendmail te installeren.

Het handmatig bijstellen van `/etc/mail/sendmail.cf` is een geavanceerd onderwerp. Versie 8 van sendmail genereert instellingenbestanden via m4(1) preprocessing, waarbij het eigenlijke instellen op een hoger abstractieniveau plaatsvindt. De instellingenbestanden voor m4(1) kunnen onder `/usr/share/sendmail/cf` gevonden worden. Het bestand `README` in de map `cf` kan dienen als een basisintroductie tot het instellen van m4(1).

De beste manier om UUCP te ondersteunen is het gebruiken van de eigenschap `mailertable`. Dit maakt een database aan die sendmail kan gebruiken om beslissingen over routes te nemen.

Als eerste dient het `.mc`-bestand aangemaakt te worden. De map `/usr/share/sendmail/cf/cf` bevat enkele voorbeelden. Indien het bestand `foo.mc` heet, hoeft slechts het volgende gedaan te worden om het in een geldig `sendmail.cf` om te zetten:

    # cd /etc/mail
    # make foo.cf
    # cp foo.cf /etc/mail/sendmail.cf

Een typisch `.mc`-bestand kan er als volgt uitzien:

    VERSIONID(`Uw versienummer') OSTYPE(bsd4.4)

    FEATURE(accept_unresolvable_domains)
    FEATURE(nocanonify)
    FEATURE(mailertable, `hash -o /etc/mail/mailertable')

    define(`UUCP_RELAY', uw.uucp.relay)
    define(`UUCP_MAX_SIZE', 200000)
    define(`confDONT_PROBE_INTERFACES')

    MAILER(local)
    MAILER(smtp)
    MAILER(uucp)

    Cw	uw.alias.host.naam
    Cw	uwuucpnodenaam.UUCP

De regels die de eigenschappen `accept_unresolvable_domains`, `nocanonify`, en `confDONT_PROBE_INTERFACES` bevatten zorgen ervoor dat er geen gebruik wordt gemaakt van het DNS tijdens het afleveren van mail. De clausule `UUCP_REPLAY` 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.

Nadat dit gedaan is, is er een bestand `/etc/mail/mailertable` nodig. Indien er slechts één verbinding naar buiten is die voor alle mails gebruikt wordt, zal het volgende bestand volstaan:

    #
    # makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable
    .				uucp-dom:uw.uucp.relay

Een complexer voorbeeld kan er als volgt uitzien:

    #
    # 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:

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 af te snijden. 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 ``uucp-buur`!`ontvanger`` -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 `uucp-dom:` dienen geldige UUCP-buren te zijn, dat met het commando `uuname` gecontroleerd kan worden.

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 `mailertable` gezet worden. Deze opdracht dient telkens wanneer het bestand `mailertable` wordt gewijzigd uitgevoerd te worden.

Laatste tip: indien de werking van een zekere mailroute niet zeker is, kan de optie `-bt` van sendmail gebruikt worden. Het start sendmail in adrestestmodus op; voer `3,0` 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 Ctrl+D verlaten worden.

    % sendmail -bt
    ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
    Enter <ruleset> <address>
    > 3,0 foo@example.com
    canonify           input: foo @ example . com
    ...
    parse            returns: $# uucp-dom $@ uw.uucp.relay $: foo < @ example . com . >
    > ^D

Terug | Begin | Volgende
Geavanceerde onderwerpen | Omhoog | Instellen om alleen te versturen