Η προεπιλεγμένη ρύθμιση του sendmail που έρχεται με το FreeBSD, προορίζεται για δικτυακές τοποθεσίες που είναι απευθείας συνδεδεμένες στο Internet. Σε περιπτώσεις που είναι επιθυμητή η ανταλλαγή email μέσω UUCP, θα πρέπει να χρησιμοποιηθεί διαφορετικό αρχείο ρυθμίσεων για το sendmail.
Η χειροκίνητη ρύθμιση του αρχείου
/etc/mail/sendmail.cf
ανήκει στα προχωρημένα
θέματα. Η έκδοση 8 του sendmail παράγει
αρχεία ρυθμίσεων μέσω του προεπεξεργαστή m4(1), όπου οι ρυθμίσεις
γίνονται σε ένα ανώτερο επίπεδο αφαίρεσης. Μπορείτε να βρείτε τα
αρχεία ρύθμισης τουm4(1) στον κατάλογο
/usr/share/sendmail/cf
. Διαβάστε το
README
στον κατάλογο cf
για μια βασική εισαγωγή στις ρυθμίσεις του m4(1).
Ο καλύτερος τρόπος για την παράδοση mail μέσω του UUCP, είναι με
την χρήση της δυνατότητας mailertable
. Παράγεται με
αυτό τον τρόπο μια βάση δεδομένων που μπορεί να χρησιμοποιήσει το
sendmail για να πάρει αποφάσεις σχετικά
με την δρομολόγηση.
Θα πρέπει αρχικά να δημιουργήσετε το αρχείο
.mc
. Θα βρείτε μερικά παραδείγματα στον κατάλογο
/usr/share/sendmail/cf/cf
.
Υποθέτοντας ότι έχετε ονομάσει το αρχείο σας
foo.mc
, το μόνο που χρειάζεται να κάνετε για να
το μετατρέψετε σε ένα έγκυρο αρχείο sendmail.cf
είναι:
#
cd /etc/mail
#
make foo.cf
#
cp foo.cf /etc/mail/sendmail.cf
Ένα τυπικό αρχείο .mc
θα δείχνει όπως το
παρακάτω:
Your version number
') OSTYPE(bsd4.4)
FEATURE(accept_unresolvable_domains)
FEATURE(nocanonify)
FEATURE(mailertable, `hash -o /etc/mail/mailertable')
define(`UUCP_RELAY', your.uucp.relay
)
define(`UUCP_MAX_SIZE', 200000)
define(`confDONT_PROBE_INTERFACES')
MAILER(local)
MAILER(smtp)
MAILER(uucp)
Cw your.alias.host.name
Cw youruucpnodename.UUCP
Οι γραμμές που περιέχουν τις δυνατότητες
accept_unresolvable_domains
,
nocanonify
, and
confDONT_PROBE_INTERFACES
θα αποτρέψουν τη χρήση
του DNS κατά την παράδοση του mail. Η οδηγία
UUCP_RELAY
απαιτείται για την υποστήριξη παράδοσης
μέσω του UUCP. Απλώς τοποθετήστε εκεί ένα όνομα μηχανήματος στο
Internet που να μπορεί να χειριστεί διευθύνσεις ψευδο-τομέων .UUCP.
Το πιο πιθανό είναι να βάλετε εκεί τον αναμεταδότη (relay) για mail
που παρέχει ο ISP σας.
Έχοντας κάνει το παραπάνω, θα χρειαστείτε ένα αρχείο
/etc/mail/mailertable
. Αν έχετε μόνο μια σύνδεση
με τον έξω κόσμο που χρησιμοποιείται για όλα σας τα mail, το παρακάτω
αρχείο είναι επαρκές:
your.uucp.relay
Ένα πιο πολύπλοκο παράδειγμα θα μοιάζει με το παρακάτω:
Οι τρεις πρώτες γραμμές χειρίζονται ειδικές περιπτώσεις, όπου το
mail που απευθύνεται σε κάποιο τομέα δεν θα πρέπει να σταλθεί στην
προεπιλεγμένη διαδρομή, αλλά αντίθετα σε κάποιο γειτονικό UUCP
προκειμένου να “συντομευθεί” το μονοπάτι παράδοσης.
Η επόμενη γραμμή χειρίζεται το mail προς τον τοπικό τομέα Ethernet,
όπου είναι δυνατή η παράδοση μέσω SMTP. Τέλος, οι γειτονικοί UUCP
αναφέρονται με γραφή ψευδο-τομέων UUCP ώστε να επιτρέπεται σε κάποιον
να παρακάμψει τους προεπιλεγμένους κανόνες. Η τελευταία γραμμή είναι
πάντα μια μοναδική τελεία, η οποία ταιριάζει με οτιδήποτε άλλο, με
παράδοση UUCP σε ένα γειτονικό UUCP ο οποίος ενεργεί ως γενική πύλη
mail προς τον υπόλοιπο κόσμο. Όλα τα ονόματα υπολογιστών που
βρίσκονται μετά το uucp-neighbor
!recipient
uucp-dom:
θα πρέπει να είναι
έγκυροι UUCP γείτονες, όπως μπορείτε να βεβαιώσετε χρησιμοποιώντας
το uuname
.
Σας υπενθυμίζουμε ότι αυτό το αρχείο πρέπει να μετατραπεί σε μια
βάση δεδομένων DBM πριν χρησιμοποιηθεί. Μπορείτε να βάλετε τη γραμμή
εντολών που απαιτείται για να επιτευχθεί αυτό ως σχόλιο στην αρχή
του αρχείου mailertable
. Πρέπει πάντοτε να
εκτελείτε αυτή την εντολή κάθε φορά που αλλάζετε το αρχείο
mailertable
.
Μια τελευταία υπόδειξη: αν δεν είστε βέβαιοι για το αν θα
λειτουργήσει κάποια συγκεκριμένη δρομολόγηση mail, θυμηθείτε την επιλογή
-bt
του sendmail. Αυτή
ξεκινάει το sendmail σε
κατάσταση δοκιμής διευθύνσεων. Γράψτε
3,0
, ακολουθούμενο από τη διεύθυνση που θέλετε να
ελέγξετε για δρομολόγηση mail. Η τελευταία γραμμή θα σας πει τον
εσωτερικό αντιπρόσωπο mail που χρησιμοποιήθηκε, τη διεύθυνση προορισμού
με την οποία κλήθηκε, καθώς και την (πιθανώς μεταφρασμένη) διεύθυνση.
Μπορείτε να βγείτε από αυτή την κατάσταση, πληκτρολογώντας
Ctrl+D.
%
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 $@ your.uucp.relay
$: foo < @ example . com . >
>
^D
Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την
τεκμηρίωση πριν να επικοινωνήσετε με την
<questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην
<doc@FreeBSD.org>.