Jak skonfigurować sendmail przez UUCP.
Jak skonfigurować sendmail przez UUCP.
Autor: Jamal Hadi Salim,
jamal@glcom.com
v1.2, 15 Marca 1997
Wersja polska: Bartosz Maruszewski
B.Maruszewski@jtz.org.pl
v1.3, 13 Listopada 1997
Historia:
--------
Pierwsza wersja tego dokumentu: Lipiec/96: tylko dla sendmail-a bez
bind-a
Aktualizacja: 1 Paźdz./96: dla binariów dostarczanych z RedHat-em
Aktualizacja: 7 Paźdz./96: dodane wskazówki jak skompilować sendmail-a bez
bind-a
Aktualizacja: 25 Paźdz./96: dodana wskazówka jak uszczęśliwić funkcję
sendmail-a getHostbyAddr() poprzez nieprawdziwy /etc/hosts
Aktualizacja: 15 Marca/97: Jestem zdumiony ilością komentarzy, którą
dostaję więc postanowiłem kontynuować moje dzieło. Poprawiłem kilka
małych błędów: dodałem diagram + referencje.
Po ustatkowaniu się i dokładnym przeczytaniu TFM (dokładnie mówiąc "the Bat
Book") odkryłem tajemnicę Caramilki ! :) Kroki opisane poniżej będą działać
z binariami dostarczanymi wraz z dystrybucją RedHat. Może powinienem też
wysłać informację o tym dokumencie do opiekuna Sendmail-FAQ, bo nie ma tam
ani słowa o nim.
1. Wprowadzenie.
1.1 Co ten dokument stara się wyjaśnić?
Jak ustawić pojedynczy komputer zwany tutaj ja.pl bez
bezpośredniego dostępu do Internetu, aby przesyłał pocztę przy
pomocy sendmail-a do "sprytniejszego hosta" np. twojego dostawcy
Internetu. Opcjonalnie możesz skonfigurować swój komputer, aby
obsługiwał pocztę dla innych, czyli ty będziesz "sprytnijeszym hostem"
czy gateway-em".
1.2 Czego ten dokument nie wyjaśnia.
Dostawałem niewiarygodną ilość pytań dotyczących następujących
tematów. Celem tego dokumentu nie jest ich opis, więc postarajcie
się proszę nie przsyłać mi takich pytań:
jak ustawić UUCP. Zajrzyj do wielu doskonałych dokumentów na
ten temat np:
UUCP HOWTO [po polsku] (Vince Skahan,
vince@halcyon.com)
"Using and managing UUCP" (Ed Ravin -- wydawnictow
O'Reilly - TO JEST NAJLEPSZE
Linux Network Administrator Guide (Olaf Kirch)
jak ustawić DNS. Zajrzyj do wielu doskonałych dokumentów na
ten temat np:
Caching named mini howto (Nicolai Langfeldt)
"The bat book" (Sendmail;Costalles, Allman, Rickert;wydawnictwo O'Reilly)
"DNS and BIND" (Wydawnictwo O'Reilly)
"TCP/IP Network Administration" (Hunt, Craig;
Wydawnictwo O'Reilly) [jest także po polsku:
Administracja siecią TCP/IP lub jakoś tak.]
Linux Network Administrator Guide (Olaf Kirch)
"sendmail Theory and Practice" (Avolio and Vixie; Wydawnictwo Digital press)
jak ustawić bazy (inne niż mailertable) tak, żeby działały z
sendmail-em. Zajrzyj do wielu doskonałych dokumentów na
ten temat np:
"The bat book" (Sendmail;Costalles, Allman, Rickert;wydawnictwo O'Reilly)
"TCP/IP Network Administration" (Hunt, Craig;
Wydawnictwo O'Reilly) [jest także po polsku:
Administracja siecią TCP/IP lub jakoś tak.]
"sendmail Theory and Practice" (Avolio and Vixie; Wydawnictwo Digital press)
dokumentacja dołączona do sendmail-a.
jak pisać czy modyfikować zasady i mailery. Zobacz wszystkie
referencje z c).
Możesz także znaleźć pomoc na tych grupach dyskusyjnych:
comp.mail.sendmail
comp.mail.uucp
comp.os.linux.networking
pl.comp.os.linux [po polsku]
Na IRC-u też. Kanały: #linux, #unix, #plug [po polsku].
1.3 Ustawienia.
Dokument ten dotyczy systemów, które przesyłają pocztę poprzez
UUCP. "mysmarthost" jest nazwą hosta ISP, tak jak jest to
ustawione w pliku konfiguracyjnym (sys file) uucp a "ja.pl" to
nazwa hosta, którego używamy. "mysmarthost" ma dostęp do
Internet-u. Tak naprawdę nie obchodzi nas jak - po prostu wiemy,
że ma i już.
ja.pl, którego ustawienia opiszemy w przykładzie, obsługuje pocztę
dla down.pl i system1.org.pl i ich poddomen.
ja.pl łączy się z down.pl poprzez TCP/IP a z system1.org.pl
czystym UUCP poprzez linię telefoniczną.
Sytuacja pokazana jest na poniższym obrazku:
-----------------------
| |
| Internet |
| |
-----------------------
|
| Linia dedykowana/PPP z protokołem TCP/IP
|
-------------
| |
| mysmarthost | Autorytatywny nameserver dla
| | *.ja.pl, *.down.pl, *.system1.org.pl
-------------
|
| UUCP otrzymuje pocztę przez linię telefoniczną dla
| system1.org.pl, *.system1.org.pl,*.down.pl, down.pl
| jak również dla ja.pl and *.ja.pl
------------
| * ***** * |
------------ | * ja.pl * | ------
| | * ***** * | |
| ------------ |
|UUCP poprzez linię tel. | UUCP poprzez TCP/IP
| |
-------------- -------------
| | | |
|system1.org.pl| | down.pl |-----
| | | | |
------------- --------- |
| |
| |
| | LAN: smtp dla poszczególnych odbiorców
| Linia tel UUCP |
| |
---------------- -----------
| LAN | | LAN |
| system1.org.pl | | down.pl |
| | -----------
----------------
2. Wymagania.
Jeśli masz system używający uucp dla poczty, to właściwie nie musisz
wkompilowywać bind-a/resolvera do sendmail-a.
Upewnij się, że masz makemap-a, i że obsługuje on "hash" i bardziej
popularne formaty "dbm" czy nawet format "btree" (Wersja na RedHat-a
nie obsługuje dbm). Makemap jest normalnie dystrybuowany z
sendmail-em.
2.1 Jak przeżyć kanonizację nazw na samotnie stojącej maszynie bez DNS-u?
Część I:
Jeśli dostaniesz pre-kompilowanego sendmail-a z dołączonym bind-em, to
możesz z nim dalej żyć (Tak jak to jest w RedHat-cie).
Odnośnie konfiguracji opartej na pliku m4 zobacz moje rozwiązanie
(moje ulubione). Próbuj użyć tej opcji o ile naprawde nie zajdzie
konieczność b) czy c)
Jeśli ze mną porozmawiasz, mógłbym wspomóc cię wersją skompilowaną
(8.8.5) bez bind-a. Może RedHat powinien rozważyć możliwość dostarczania
dwóch wersji binarnych senmail-a (tak jak jest to w Slackware). Jedna z
bind-em a jedna bez.
Najszybszym rozwiązaniem, aby otrzymać działający sendmail bez bind-a
jest edycja pliku src/conf.htak, żeby wyglądał tak:
conf.h:# ifndef NAMED_BIND
conf.h:# define NAMED_BIND 0 /* use Berkeley Internet Domain Server */
Część II:
Normalnie sendmail będzie koniecznie chciał sprawdzić nazwę, aby
rozwinąć część dotyczącą host-u przy pomocy gethostbyaddr() dla
każdego listu, który wysyła (nawet jeśli go poinformujesz żeby nie
kanonifikował nazw).
Użyj adresu IP według RFC1597 (10.0.0.0 - 10.255.255.255,
172.16.0.0 - 172.31.255.255, 192.168.0.0 - 192.168.255.255).
Zmodyfikuj plik /etc/hosts i dodaj następującą linię,
jako przykład dla "myhost"
10.0.0.1 myhost.ja.pl myhost
Jeśli używasz bazy NIS (i NIS jest wkompilowane w sendmail-a
tak jak to chyba jest z RedHat-em. RedHat ma także wbudowanego
NIS-a) upewnij się, że plik /etc/nsswitch.conf zawiera:
hosts: files dns
i w pliku /etc/hosts i dodaj poniższą linię jak przykład dla
host-a myhost: [cały czas używając schematu z RFC1597]
10.0.0.1 myhost.ja.pl myhost
UWAGA:
W obu przypadkach ważne jes, aby podać pełny adres w pliku /etc/hosts.
Czyli linia powinna wyglądać tak:
10.0.0.1 myhost.ja.pl myhost
a nie tak
10.0.0.1 myhost
Będziesz musiał także zdefiniować makro sendmail-a - $w, aby
zawierało myhost.ja.pl. Dodaj następującą linijkę do swojego
pliku /etc/sendmail.cf jak już zostanie wygenerowany:
Dwmyhost.ja.pl
(albo możesz użyć użyć MASQUAREADE_AS(myhost.me.com) w poniższym
pliku .mc)
UWAGA !!! myhost jako nazwa domeny jest podane tylko
przykładowo; nie musisz używać takiej samej nazwy. Wybierz sobie
jakąś swoją nazwę host-a jeśli jej jeszcze nie masz.
3. Ustawianie.
Stwórz swój plik .mc używając ulubionego edytora; nazwę ten
plik my.mc
============== plik my.mc =======================
include(`../m4/cf.m4')
VERSIONID(`me.com's setup with uucp created by xxxx')dnl
OSTYPE(linux)
FEATURE(nodns)dnl
FEATURE(nocanonify)dnl
FEATURE(always_add_domain)dnl
FEATURE(mailertable, hash /etc/mailertable)dnl
MAILER(local)dnl
MAILER(smtp)dnl
MAILER(uucp)
define(`SMART_HOST', uucp-dom:mysmarthost)
===============================================
Rozgryźmy to:
include(`../m4/cf.m4')
Dołącza macro m4 znajdujące się w ../m4/cf.m4, aby zrobiło za nas
parę rzeczy.
VERSIONID(`me.com's setup with uucp created by xxxx')dnl
Używane jest to, aby odróżnić od siebie różne wersje plików
konfiguracyjnych, które możesz z biegem czasu potworzyć.
OSTYPE(linux)
Tutaj definiuje się różne specyficzne dla Linux-a ustawienia.
Bezpieczniej jest zawrzeć to polecenie.
FEATURE(nodns)dnl
Polecenie to informuje, że nie mamy serwer-a DNS (więc w efekcie używamy
tylko uucp dla poczty. Sendmail musi zostać tak skompilowany, aby nie używał
bind-a.)
Teraz jest to już przestarzałe, ale zostawię to tutaj na wypadek
gdybyś używał jakiejś starszej wersji sendmail-a.
FEATURE(nocanonify)dnl
Polecenie to informuje, żeby nie przekazywać adresów do $[ ... $] do
kanonizacji. Normalnie, jeśli masz wkompilowanego bind-a, to sendmail próbowałby i
rozwiązałby alias/adres IP na nazwę kanoniczną używając DNS-a.
Niechcesz tego robić jeśli wszystko co masz, to linie łaczące cię poprzez
uucp tj. jesteś dla siebie i dla nikogo innego.
FEATURE(always_add_domain)dnl
Dodaje to nazwę hosta dla domeny lokalnej nawet jeśli poczta jest
dostarczana lokalnie.
Nie jest to konieczne - po prostu lubię to.
FEATURE(mailertable, hash /etc/mailertable)dnl
Plik /etc/mailertable będzie bazą danych typu "hash", gdzie
będziemy zapisywać informacje dotyczące routingu pewnych adresów. Jeśli nie
masz nikogo, do kogo masz podłączone linie uucp, to nie potrzebujesz tego.
Więcej informacji będzie później.
Jeśli chciałeś użyć formatu "dbm", to miałbyś
FEATURE(mailertable, dbm /etc/mailertable)dnl
Jeśli chciałeś użyć formatu "btree", to miałbyś
FEATURE(mailertable, btree /etc/mailertable)dnl
MAILER(local)dnl
MAILER(smtp)dnl
MAILER(uucp)
To są "mailery", których używamy.
define(`SMART_HOST', uucp-dom:mysmarthost)
Nasz "smart host" jest naszym ISP, który jest zdefiniowany w pliku
konfiguracyjnym uucp (uucp sys file), jako "system mysmarthost". Wszystkie
wiadomości, których nie umiemy obsłużyć (czyli dla domeny, czy "mailery",
których nie rozumiemy) będą przekazane do niego, aby je odpowiednio
dostarczyć.
Zauważ, że używamy uucp-dom jako "mailer" uucp. Ten konkretny "mailer" używa
zasad przepisywania "smtp".
Stwórz swój plik sendmail.cf
skopiuj stary plik /etc/sendmail.cf
zapisz nowy plik na miejsce starego:
m4 my.mc > /etc/sendmail.cf
zweryfikuj czy plik sendmail.cf został poprawnie stworzony
odnośnie twoich ustawień. Niektóre błędy na jakie się natknąłem to:
- brak "mailera" uucp-dom
Działo się tak, ponieważ nie miałem pozycji dla "smtp". Właściwie rozumiem,
że jest ważne, aby zdefiniować to przed uucp.
Stwórz swój /etc/mailertable
Jeśli nie masz adresów, które cię podłączają poprzez uucp, to przeskocz ten
krok.
stwórz/zmodyfikuj plik /etc/mailertable
--------- przykładowy plik /etc/mailertable ----------
system1.org uucp-dom:system1
.system1.org uucp-dom:system1
ja.pl uucp-dom:ja
up.down.pl error: Host nie jest znany w ja.pl
.down.pl uucp-dom:down
.ja.pl error: Host nie jest znany w ja.pl
------
Plik ten informuje, że wszystko co jest adresowane do system1.org
zostanie przesłane do system1 używając "mailer-a" uucp-dom
(zdefiniowanego w pliku konfiguracyjnym uucp [uucp sys file]).
Innymi słowy przekazujemy pocztę dla *.system1.org podobnie dla
down.pl i jej poddomen za wyjątkiem dodoatkowego filtrowania;
odrzucamy każdą pocztę dla poddomeny up.down.pl używając
wbudowanego "mailer-a" sendmail-a do obsługi błędów z komunikatem
"Host nie jest znany w ja.pl"; Jest tak ponimeważ zostaliśmy
poproszeni o to przez adminstratora down.pl. Aby odrzucić wszystkie
nieznane dla nas poddomeny używamy ostatniej linii w "mailertable".
stwórz bazę danych programem "makemap"
Jeśli używasz formatu "hash":
makemap hash /etc/mailertable </etc/mailertable
Jeśli używasz formatu "dbm":
makemap dbm /etc/mailertable </etc/mailertable
Jeśli używasz formatu "btree":
makemap btree /etc/mailertable </etc/mailertable
Rób to za każdym razem kiedy zmieniasz plik.
zrestartuj sendmail-a
przetestuj sendmail-a
sendmail -bv uzytkownik@gdzies.tam
użyj sendmail -bt i wpisuj różne adresy używając zasady 3,0,
aby zobaczyć gdzie one skończą i różnych zasad i podjętych tras.
To wszystko.
4. Do zrobienia.
Zhtml-izować ?
Dodać informacje na temat ustawiania systemu down.pl (żeby
pokazać jak się zająć tymi "poszczególnymi odbiorcami").
Dodać informacje na temat dostarczania news-ów poprzez UUCP
(preferowany będzie INN). To może wymagać zmiany tytułu tego
dokumentu.
5. Od tłumacza.
Tłumaczenie to jest chronione prawami autorskimi © Bartosza
Maruszewskiego.
Dozwolone jest rozprowadzanie i dystrybucja na prawach takich
samych jak dokument oryginalny.
Jeśli znalazłeś jakieś rażące błędy ortograficzne, gramatyczne,
składniowe, techniczne to pisz do mnie:
B.Maruszewski@jtz.org.plNapewno znajdziesz tu jakieś niejasne i niepolskie konstrukcje.
Jeśli wpadniesz na lepszy pomysł daj mi znać.
Oficjalną stroną tłumaczeń HOWTO jest
http://www.jtz.org.pl/Aktualne wersje przetłumaczonych dokumentów znajdują się na
tejże stronie. Dostępne są także poprzez anonimowe ftp pod adresem
ftp.jtz.org.pl w katalogu /HOWTO/.
Przetłumaczone przeze mnie dokumenty znajdują się także na
mojej stronie WWW. Są tam też odwołania do Polskiej Strony
Tłumaczeniowej.
Kontakt z naszą grupą, grupą tłumaczy możesz uzyskać poprzez listę
dyskusyjną jtz@ippt.gov.pl. Jeśli chcesz sie na nią zapisać, to
wyślij list o treści subscribe jtz Imię Nazwisko na adres
majordomo@ippt.gov.pl
Wyszukiwarka
Podobne podstrony:
Sendmail UUCP plsendmail uucp plsendmail uucp pl 4sendmail uucp pl 1sendmail uucp pl 5sendmail uucp pl 3sendmail uucp pl 2UUCP HOWTO pl 1 (2)UUCP HOWTO pl (2)UUCP HOWTO pl 6 (2)UUCP HOWTO pl 4 (2)UUCP HOWTO pl 3 (2)UUCP HOWTO pl 2 (2)UUCP HOWTO pl (3)UUCP HOWTO pl 5 (2)TI 99 08 19 B M pl(1)bootdisk howto pl 8BORODO STRESZCZENIE antastic plwięcej podobnych podstron