H th ng Sendmail đ c c u hình ch y u thơng qua m t file nàm ệ ố ượ ấ ủ ế ộ ở
/etc/senmail.cf (m c dù m t vài h th ng đ t nĩ ặ ộ ệ ố ặ ở /usr/lib/sendmail.cf ho c n iặ ở ơ khác). Ngơn ng s d ng trong file c u hình senmail.cf thì hồn tồn khác so v i cácữ ử ụ ấ ớ file c u hình khác và r t ph c t p.ấ ấ ứ ạ
File Sendmail.cf đi u khi n các ch c n ng m c đ nh c a h th ng g i mail.ề ể ứ ă ặ ị ủ ệ ố ử Cĩ nhi u file khác c ng cĩ liên qua trong quá trình c u hình, đĩ là:ề ũ ấ
Decnetxtable: cĩ nhi m v đ i đ a ch thơng th ng sang đ a ch DEC.ệ ụ ổ ị ỉ ườ ị ỉ
Genericfrom: Cĩ nhi m v đ i đ a ch bên trong sang đ a ch thơng th ng.ệ ụ ổ ị ỉ ị ỉ ườ
Mailtertable: nh ngh a các x lý đ c bi t cho các máy ch t xa và các tênĐị ĩ ử ặ ệ ủ ừ mi n.ề
Pathtable: nh ngh a các đ ng d n UUCP đ n các máy t xa và các tên mi n.Đị ĩ ườ ẫ ế ừ ề
Uucprelays: Cho phép gián ti p đ n các máy ch t xa.ế ế ủ ừ
Xaliases: Đổ ịi đ a ch thơng th ng thành đ a ch bên trong.ỉ ườ ị ỉ
Sendmail + h th ng IDA s d ng m t b ti n x lý ch ng h n nh m4ệ ố ử ụ ộ ộ ề ử ẳ ạ ư ho c dbm đ t o ra các file c u hình sau khi ng i s d ng ch đ nh các giá tr choặ ể ạ ấ ườ ử ụ ỉ ị ị các thơng s . Sau khi s d ng b ti n x lý, h th ng s d ng m t b t o file đố ử ụ ộ ề ử ệ ố ử ụ ộ ộ ạ ể t o ra các file c u hình cu i cùng.ạ ấ ố
1. File sendmail.cf
Khi s d ng Sendmail + IDA, file sendmail.cf khơng đ c thi t l p các giáử ụ ượ ế ậ tr phù h p v i h th ng và cơng vi c c a ng i s d ng. Thay vì quá trình c uị ợ ớ ệ ố ệ ủ ườ ử ụ ấ hình x lý các thay đ i sinh ra, m t quá trình c u hình bình th ng đ c đi u khi nử ổ ộ ấ ườ ượ ề ể b i m t file g i là sendmail.m4, nĩ cung c p các thơng tin c b n v tên h th ng,ở ộ ọ ấ ơ ả ề ệ ố đ ng d n s d ng trên h th ng c a ng i s d ng và mailer m c đ nh đang sườ ẫ ử ụ ệ ố ủ ườ ử ụ ặ ị ử d ng. M c dù vi c thay đ i file sendmail.m4 cĩ th m t nhi u th i gian nh ng nĩụ ặ ệ ổ ể ấ ề ờ ư c n thi t đ i v i các thơng tin c b n cho vi c cài đ t Linux s d ng uucp vàầ ế ố ớ ơ ả ệ ặ ử ụ SMTOP cho vi c chuy n v n mail.ệ ể ậ
Ph n quan tr ng nh t trong file ầ ọ ấ sendmail.m4 là ph n khai báo các th m c.ầ ư ụ Ph n này th ng b t đ u v i m t dịng khai báo LIBDIR:ầ ườ ắ ầ ớ ộ
dnl #define(LIBDIR, /usr/local/lib/mail)
Th m c LIBDIR là n i Sendmail + h th ng IDA tìm ki m các file đ như ụ ơ ệ ố ế ị d ng và các b ng router, thơng th ng dịng này đ c b qua nh ng đ ng d n m cạ ả ườ ượ ỏ ư ườ ẫ ặ đ nh thì n m v trí thơng th ng cho t t c h th ng Linux mail. N u đ ngị ằ ở ị ườ ấ ả ệ ố ế ườ d n hi n th trong Sendmail là chính xác, khơng c n đi u ch l i file này. ẫ ể ị ầ ề ỉ ạ Đường d n này th ng ghi mã tr c ti p vào trong b nh phân Sendmail và khơng c n thi tẫ ườ ự ế ộ ị ầ ế đ ghi đè lên b i file ể ở sendmail.m4 (ho c ặ sendmail.cf). N u c n ph i thay đ i đ ngế ầ ả ổ ườ d n này, ph i g b giá tr dnl dịng b t đ u, thêm vào đ ng d n đúng và sau đĩ l uẫ ả ỡ ỏ ị ở ắ ầ ườ ẫ ư l i trong file ạ sendmail.cf
Mailer c c b đ c s d ng b i Sendmail đ c khai báo t i m t dịng cĩ giáụ ộ ượ ử ụ ở ượ ạ ộ tr LOCAL_MAILER_DEFị
Dịng này là c n thi t b i vì Sendmail khơng đi u khi n các mail g i đi. M tầ ế ở ề ể ử ộ ch ng trình khác s đ m nh n vi c này thay cho Sendmail. M c d nh, giá tr dùngươ ẽ ả ậ ệ ặ ị ị cho mailer c c b đ c ch a trong m t file g i là mailers.linux. File này đ cụ ộ ượ ứ ộ ọ ượ chuy n đ n m c nh p LOCAL_MAILER_DEF trong file sendmail.m4, đi u nàyể ế ụ ậ ề cĩ ngh a là ng i s d ng c n ph i ki m tra file mailer.linux trong th m c conĩ ườ ử ụ ầ ả ể ư ụ t ng t (th ng là ươ ự ườ /usr/local/lib/mailer.linux) đ ch c ch n ch ng trình chuy nể ắ ắ ươ ể (ho c m t ch ng trình b t k đã s d ng) đã đ c nh p các thu c tính.ặ ộ ươ ấ ỳ ử ụ ượ ậ ộ
N i dung m t file mailer.linux s bao g m nh sau:ộ ộ ẽ ồ ư # mailers.linux
Mlocal, P=/usr/bin/deliver, F=SlsmFDMP, S=10,R=25/10, A=deliver $u
Mprog, P=/bin/sh, F=lsDFMeuP, S=10, A=sh -c $u
M t agent phát th đi c ng đ c ch đ nh trong file ộ ư ũ ượ ỉ ị sendmail.mc, file này đ cượ dùng đ xây d ng file ể ự sendmail.cf. N u agent phát khơng chuy n th đi, ph i ki mế ể ư ả ể tra file sendmail.mc đ ch c r ng agent chuy n mail đã đ c thi t l p các thu cể ắ ằ ể ượ ế ậ ộ tính. Sendmail.mc là m t file quan tr ng và nĩ ph i đ c đ c khi ộ ọ ả ượ ọ sendmail.m4 đ cượ x lý. Th ng cĩ m t dịng khai báo trong file ử ườ ộ sendmail.m4 đ ch c r ng vi c nàyể ắ ằ ệ ph i x y ra. Dịng này th ng n m ph n đ u file ả ả ườ ằ ở ầ ầ sendmail.m4
include(Sendmail.mc)dnl
Ng i s d ng c n ph i ch đ nh m t vài m c nh p trong bi nườ ử ụ ầ ả ỉ ị ộ ụ ậ ế PSEUDOMAINS. Bi n này đ c dùng đ đi u khi n h th ng mà nĩ khơng th mế ượ ể ề ể ệ ố ể ở r ng vào trong các tên mi n m t cách chính xác, thơng th ng là h th ng UUCP. Cácộ ề ộ ườ ệ ố m c nh p trong tr ng PSEUDOMAINS ch ra r ng Sendmail + IDA khơng sụ ậ ườ ỉ ằ ử d ng DNS cho nh ng m ng đĩ. Bi n PSEUDOMAINS đ c khai báo nh sau:ụ ữ ạ ế ượ ư
define(PSEUDODOMAINS, BITNET UUCP)dnl
Cĩ th s d ng bi n PSEUDONYMS đ làm n tên máy c a ng i s d ng.ể ử ụ ế ể ẩ ủ ườ ử ụ Ví d , m t mail nh n trên m ng khác s ch th y đ a ch tpci.com mà khơng quanụ ộ ậ ạ ẽ ỉ ấ ị ỉ tâm đ n vi c dù là đ c g i t merlin.tpci.com hay chatton.tpci.com. Khi s d ngế ệ ượ ử ừ ử ụ bi n PSEUDONYMS, Sendmail ch p nh n mail t t t c các máy đ c khai báoế ấ ậ ừ ấ ả ượ trong tr ng PSEUDONYMS. Tr ng PSEUDONYMS đ c hi n th nh sau:ườ ườ ượ ể ị ư
define(PSEUDONYMS, tpci.com)dnl
M c vào nhày cho phép m t máy tính b t k c a m ng tpci.com g i mailụ ộ ấ ỳ ủ ạ ử thơng qua Sendmail.
đ nh ngh a tên máy, s d ng bi n DEFAULT_HOST. Bi n này th ng
Để ị ĩ ử ụ ế ế ườ
đ c gán giá tr tên mail server c a ng i s d ng. Ng i s d ng cĩ th khai báoượ ị ủ ườ ử ụ ườ ử ụ ể nh sau đ thi t l p tên mail server m c đ nh:ư ể ế ậ ặ ị
define(DEFAULT_HOST, merlin.tpci.com)dnl
N u khơng gán m t tên đúng cho bi n DEFAULT_HOST s khơng cĩ mailế ộ ế ẽ đ c tr v chính xác đ n h th ng đang s d ng.ượ ả ề ế ệ ố ử ụ
N u h th ng khơng ph i là m t c ng n i mail lên Internet (ho c các m ngế ệ ố ả ộ ổ ố ặ ạ khác đ c truy c p t m ng LAN) ng i s d ng cĩ th thi t l p cho h th ngượ ậ ừ ạ ườ ử ụ ể ế ậ ệ ố Linux cho phép g i mail lên m t máy khác đ x lý b ng cách thi t l p các bi nử ộ ể ử ằ ế ậ ế
RELAY_HOST và RELAY_MAILER trong file sendmail.m4. Các bi n này s đ tế ẽ ặ tên c a mail server mà t t c các mail s đ c chuy n đ n. Ví d : ủ ấ ả ẽ ượ ể ế ụ Để thi t l p choế ậ h th ng c c b d n h ng t t c các mail bên ngồi đ n m t máy tên là wizard,ệ ố ụ ộ ẫ ướ ấ ả ế ộ ph i khai báo 2 dịng nh sau:ả ư
define(RELAY_HOST, wizard)dnl
define(RELAY_MAILER, UUCP=A)dnl
Dịng th hai ch đ nh mailer s d ng đ g i message đ n máyứ ỉ ị ử ụ ể ử ế RELAY_HOST.
2. i u ch nh UUCP:Đ ề ỉ
N u ph i đang làm vi c v i m t h th ng mail trên n n t ng UUCP, ng iế ả ệ ớ ộ ệ ố ề ả ườ s d ng ph i đi u ch nh m t vài m c nh p trong file sendmail.m4. S đi u ch nhử ụ ả ề ỉ ộ ụ ậ ự ề ỉ này là c n thi t b i vì m t h th ng mail UUCP th ng đánh đ a ch khác so v i cácầ ế ở ộ ệ ố ườ ị ỉ ớ h th ng trên n n t ng DNS. Các khai báo c a UUCP trong file sendmail.m4 nhệ ố ề ả ủ ư sau:
define(UUCPNAME, tpci)dnl
define(UUCPNODES, |uuname|sort|uniq)dnl define(BANGIMPLIESUUCP)dnl
define(BANGONLYUUCP)dnl
Dịng đ u tiên khai báo UUCPNAME dùng đ ch đ nh tên c a h th ng c c bầ ể ỉ ị ủ ệ ố ụ ộ trong gi i h n UUCP. Tên này cĩ th khác h n tên s d ng trong DNS, m c dù thơngớ ạ ể ơ ử ụ ặ th ng thì các tên đĩ trơng c ng khơng khác nhau m y. ườ ũ ấ
Bi n ế UUCPNODES khai báo l nh s d ng đ cung c p m t danh sách tên cácệ ử ụ ể ấ ộ host mà h th ng k t n i t i thơng qua UUCP.ệ ố ế ố ớ
Bi n ế BANGIMPLIESUUCP đ cho Sendmail bi t là b t k m t đ a ch nàoể ế ấ ỳ ộ ị ỉ ch a d u ! đ u là đ a ch ki u UUCP. Bi n ứ ấ ề ị ỉ ể ế BANGONLYUUCP thì làm đi u ng cề ượ l i. C 2 bi n này th ng đ c khai báo b i vì m t vài h th ng DNS s d ngạ ả ế ườ ượ ở ộ ệ ố ử ụ ph ng pháp đánh đ a ch ki u d u ch m than.ươ ị ỉ ể ấ ấ
3. C u hình các b ng nh vấ ả đị ị
Cĩ nhi u dịng trong file ề sendmail.m4 dùng đ khai báo các b ng c u hình. Cácể ả ấ b ng c u hình này n m d i th m c khai báo b i bi n ả ấ ằ ướ ư ụ ở ế LIBDIR. Ph n này g mầ ồ các dịng sau:
define(ALIASES, LIBDIR/aliases)dnl
define(DOMAINTABLE, LIBDIR/domaintable)dnl
Cĩ kho ng 7 file c u đ c ch đ nh trong tồn b . Ng i s d ng cĩ thả ấ ượ ỉ ị ộ ườ ử ụ ể thay đ i b t k giá tr nào n u mu n nh ng ph i ch c ch n r ng vi c di chuy n nĩổ ấ ỳ ị ế ố ư ả ắ ắ ằ ệ ể th v trí đ c ch đ nh. ị ị ượ ỉ ị Để ả ả b o đ m, t t nh t nên g b các file kh i các ví trí m cố ấ ỡ ỏ ỏ ặ đ nh c a nĩ.ị ủ
4. C u hình mailertableấ
B ng mailertable khai báo các đi u khi n đ c bi t cho cac host ho c các tênả ề ể ặ ệ ặ mi n. Trong h u h t các tr ng h p, mailertable ch đ nh các tên mi n ch c ch nề ầ ế ườ ợ ỉ ị ề ắ ắ ho c các host đ c truy c p và các giao th c nào s d ng cho các tên mi n và các host đĩ.ặ ượ ậ ứ ử ụ ề
Ng i s d ng khơng ph i đi u ch nh file này n u h th ng đang s d ng UUCPườ ử ụ ả ề ỉ ế ệ ố ử ụ nh ng ph i ki m tra n i dung c a nĩ n u là đang s d ng SMTP ho c DNS.ư ả ể ộ ủ ế ử ụ ặ
File mailertable đ c d c t dịng đ u tiên xu ng và Sendmail x lý mail d aượ ọ ừ ầ ố ử ự trên m i dịng trong file này. Trong m i tr ng h p, n i mà h u h t các quy t c chỗ ỗ ườ ợ ơ ầ ế ắ ỉ đ nh n m đ u file, theo sau b i các quy t c thơng th ng khác. Các quy t c ch raị ằ ở ầ ở ắ ườ ắ ỉ ph ng th c c a k t n i đ u tiên và sau đĩ li t kê các h th ng t xa ho c tên mi n:ươ ứ ủ ế ố ầ ệ ệ ố ừ ặ ề
mailer delimiter relayname remote
Trong khai báo trên, mailer là giao th c chuy n v n đ c s d ng, delimiter làứ ể ậ ượ ử ụ ký t đ c bi t, relayname là tên c a h th ng chuy n mail đ n và remote là host tự ặ ệ ủ ệ ố ể ế ừ xa ho c tên mi n. ặ ề
Mailer cĩ th là các giá tr :ể ị
TCP-A: TCP v i đ a ch ki u Internet.ớ ị ỉ ể TCP-U: TCP v i đ a ch ki u UUCP.ớ ị ỉ ể UUCP-A: UUCP v i đ a ch ki u Internet.ớ ị ỉ ể
Delimiter cĩ m t ý ngh a đ c bi t và ph i là m t trong cac ký t sau:ộ ĩ ặ ệ ả ộ ự ! G b tên host t ph n đ a ch tr c khi g i đi.ỡ ỏ ừ ầ ị ỉ ướ ử
, Khơng đi u ch nh đ a ch cho t t c .ề ỉ ị ỉ ấ ả
: G b tên host ch khi các host trung gian đ c ch đ nh.ỡ ỏ ỉ ượ ỉ ị
Cĩ th xây d ng các quy t c mailertable m t các d dàng khi chuy n mail đ nể ự ắ ộ ễ ể ế m t mail server t xa. Ví d , đ b t bu c Sendmail s d ng UUCP thơng quaộ ừ ụ ể ắ ộ ử ụ m t mail server t xa g i là wizard k t n i đ m t h th ng t xa roy.sailing.org,ộ ừ ọ ế ố ế ộ ệ ố ừ thêm m t quy t c nh sau vào file mailertable:ộ ắ ư
UUCP-A,wizard roy.sailing.org
5. File c u hình uucprelaysấ
File uucprelays dùng đ b qua đ ng d n UUCP đ n m t site t xa khiể ỏ ườ ẫ ế ộ ừ m t đ ng dân t t h n đã t n t i. Ví d , n u ng i s d ng th ng s d ngộ ườ ố ơ ồ ạ ụ ế ườ ử ụ ườ ử ụ đ ng d n wizard!bignet!merlin!tpci và cĩ th t o ra m t liên k t ch đ ng đ nườ ẫ ể ạ ộ ế ỉ ườ ế tpci, nên s d ng file uucprelays đ đ i l i đ ng d n đ a ch mail.ử ụ ể ổ ạ ườ ẫ ị ỉ
6. File c u hình uucpxtalbeấ
File uucpxtalbe đ c s d ng khi m t đ a ch ki u UUCP đ c s d ngượ ử ụ ộ ị ỉ ể ượ ử ụ trong vi c v n chuy n mail. File này cung c p các ch d n cho cơng vi c chuy nệ ậ ể ấ ỉ ẫ ệ ể m t đ a ch ki u DNS sang UUCP. N u ng i s d ng đang s d ng m t mailộ ị ỉ ể ế ườ ử ụ ử ụ ộ server khác h n mail server hi n t i ho c mu n s d ng UUCP đ k t n i đ nơ ệ ạ ặ ố ử ụ ể ế ố ế m t máy c th vì đ tin cây, file này th c s c n thi t.ộ ụ ể ộ ự ự ầ ế
File này ch a các m c vào li t kê tên ki u UUCP theo sau b i tên mi n:ứ ụ ệ ể ở ề Chatton chatton.com
M c vào này ch ra r ng Sendmail mà m t mail chatton.com b t k nào đĩ đ uụ ỉ ằ ộ ấ ỳ ề ph i đ c c p nh p qua UUCP đ n chatton ( đánh đ a ch ki u UUCP). M c vào nàyả ượ ậ ậ ế ị ỉ ể ụ b t bu c các đ a ch mail đ n ắ ộ ị ỉ ế yvone@chatton.com ph i đ c vi t l i gi ng nhả ượ ế ạ ố ư chatton!yvone, m t đ a ch mà UUCP cĩ th s d ng.ộ ị ỉ ể ử ụ
7. Xây d ng file sendmail.cf t file sendmail.m4ự ừ
Bây gi , đã c u hình xong file sendmail.m4 và các file cĩ liên qua c a nĩ, cĩ thờ ấ ủ ể s d ng b x lý m4 đ t o ra file sendmail.cf. M t khi file sendmail.m4 đã s nử ụ ộ ử ể ạ ộ ẵ sàng đ làm vi c, b t ngu n t dịng l nh:ể ệ ắ ồ ừ ệ
Make sendmail.cf
M t khi file đã đ c t o, chép nĩ sang th m c /etc và kh i đ ng Sendmail v iộ ượ ạ ư ụ ở ộ ớ dịng l nh: ệ
/usr/lib/sendmail –bd –q1h
ho c kh i đ ng l i máy tính.ặ ở ộ ạ