÷ƒ’Ą;č TeX output 2003.04.04:1546‹’’’’ Ū_2 ż ~? ՁĮ żZŻŗóžÖėI½q½qecss2074»sendmail–fŃaddress“rewriting“mini-HO‘’wmWTOŽ¤ ®„ŲcÕĮGŽŽ”ó 1ź± ecrm1000¹Thomas–U RošGessler,“ro˜essler@guug.de,Ž”V‘’*øertaald–U došGor:‘q€Ellen“Bokhorst,“b˜okkie@nl.linøčux.org’­ŒÆv0.0,“6“mei“1998Ž”Ÿ&°–‘šóŒ6 ecss1000¼Dit“došGcument“is“een“b˜eknopte“b˜eschrijving“van“ho˜e“het“conguratieb˜estand“van“sendmail“vo˜oøčr“dial-up“to˜egangŽ”k•øčan›U w“o“rden˜ingesteld˜voGo“r˜de˜thuisgeb“ruik“er.ŽŸ(Ąœó&Lt$ffffecbx1440¾1Ž‘ĮInctropœductieŽŸæ:¹W‘’*øe–$Sgaan“erv‘’qŠan“uit“dat“je“het“sošGort“Inøčternet“to˜egang“hebt“w•øčelk“e‘$Stegen“w“o˜ordig–$Sop“univøčersiteiten“en“onlineŽ”services–¤†het“meest“gebruikšøčelijk“sc˜hijn˜t“te“zijn:‘Kje“bGelt“in“op“het“net˜w˜erk“v‘’qŠan“je“pro˜vider“met“PPP‘¤/o˜v˜erŽ”een–ŅŁseri€ėle“všøčerbinding.‘źŖJe“ink˜omende“mail“w˜ordt“gesp•Go“old–ŅŁop“de“POP-“of“IMAP-serv˜er“v‘’qŠan“je“ISP‘’*ø,“terwijlŽ”uitgaande›‘×bGeric•øčh“ten˜via˜SMTP‘‘Ēw“orden˜v“erzonden.‘'„Je˜hebt˜geen˜eigen˜domeinnaam,‘”dus˜v“o•Gor˜alles˜mo“et˜jeŽ”gebruik–U makøčen“v‘’qŠan“ó½HŠƒ ecti1000æ€é‘’}/€én‘u¹adres.Ž©Ų¼W‘’*øe–I‹gaan“erv‘’qŠan“uit“dat“je“reeds“een“tamelijk“recenšøčte“v˜ersie“v‘’qŠan“Eric“Allman's“sendmail“(tijdens“dit“sc˜hrijv˜enŽ”is–U de“hšøčuidige“v˜ersie“8.8.8“en“deze“v˜oldoGet“prima)“hebt“ge€ļnstalleerd.Ž¦In–5{dit“doGcumenšøčt“w˜ordt“v˜ošGor“een“deel“naar“sp˜eciekšøče“eigensc˜happGen“v‘’qŠan“een“Debian“GNU/Lin˜ux“systeemŽ”v•øčerw“ezen;›U gebruik“ers˜v‘’qŠan˜andere˜distributies˜zullen˜dit˜in˜de˜gaten˜moGeten˜houden.Ž¦Zorg–U dat“je“de“vøčolgende“informatie“bij“de“hand“hebt:Ž¤Ų¼‘ó !",š cmsy10øŽŽŽ‘¹De–U mailservøčer“v‘’qŠan“je“ISPŽ©®‘øŽŽŽ‘¹Je–U Inøčternet“mail-adresŽ”De–U te“plannen“conguratie“dienšøčt“t˜w˜ee“ho•Gofddo“elen:Ž”‘ 9b1.ŽŽŽ‘Het–U všøčersturen“v‘’qŠan“mail“tussen“div˜erse“lok‘’qŠale“gebruik˜ers“moGet“mogelijk“zijn.Ž¦‘ 9b2.ŽŽŽ‘De›¦$buiten•øčw“ereld˜moGet˜v“oGor˜de˜lok‘’qŠale˜gebruik“ers˜het˜ISP‘„ųmailadres˜laten˜zien,‘É#en˜niet˜de˜lok‘’qŠale˜adressen.Ž”Om–U dit“te“bGereikšøčen,“zullen“w˜e“gebruik“mak˜en“v›’qŠan“de“óqLĖ ectt1000Ągenericstable“¹feature“v˜an“sendmail.ŽŸ(Ąœ¾2Ž‘ĮBestandso•cv“erzic“h“tŽŸæ:¹W‘’*øe–&zullen“alle“conguratiebGestanden“v‘’qŠan“sendmail“in“een“aparte“directory“onder“Ą/etc“¹plaatsen:‘YüĄ/etc/mail¹.Ž¤ ®Gew•øčoGonlijk›ɳv“erw“ac“h“t˜sendmail˜dat˜deze˜bGestanden˜direct˜onder˜Ą/etc˜¹v“oGork“omen.‘ Ļ:Om˜problemen˜teŽ”v•øčošGork“omen,–U mo˜et“Ą/etc/sendmail.cf“¹een“sym•øčb˜olisc“he–U link“zijn“naar“Ą/etc/mail/sendmail.cf¹.ŽŸŲ¼De–U všøčolgende“bGestanden“zullen“in“Ą/etc/mail“¹w˜orden“geplaatst:ŽŸŲ¼‘øŽŽŽ‘Ąaliases–U ¹-“bGev›’qŠat“extra“lok˜ale“adressenŽ¦‘øŽŽŽ‘Ągenericsdomain–U ¹-“bGev‘’qŠat“wšøčat“informatie“o˜v˜er“de“conguratie“v›’qŠan“je“lok˜ale“hostŽ¦‘øŽŽŽ‘Ągenericstable–U ¹-“bGev‘’qŠat“de“feitelijkøče“rewriting“regels.Ž¦‘øŽŽŽ‘Ąsendmail.cf–U ¹-“conguratiebGestand“v‘’qŠan“sendmailŽŽŽŒ‹* Ū_2 ż ~?Ÿ„€ÕĮGŽó]fŒ ecbx1000Ć3.‘ń8Sendmail‘Õcongureren’Nā™¹2ŽŽ ՁĮ żVƍ‘øŽŽŽ‘Ąsendmail.mc–U ¹-“de“bron“v‘’qŠan“Ąsendmail.cf¹.ŽŸģ·Een–ˆaanšøčtal“v‘’qŠan“deze“bGestanden“zullen“w˜orden“v˜ergezeld“došGor“Ą.db“¹b˜estanden.‘-!Deze“b˜ev‘’qŠatten“hashed“databasesŽ¤ ®vøčošGor–U direct“gebruik“do˜or“sendmail.Ž©Ų¼W‘’*øe–'ęgaan“erv›’qŠan“uit“dat“het“Ącf“¹deel“v˜an“sendmail's“directorystructuur“onder“een“directory“genaamdŽ”Ą/usr/lib/sendmail.cf›×`¹v•øčoGork“om“t.‘ų?Dit˜is˜het˜gev‘’qŠal˜op˜Debian˜GNU/Lin“ux˜systemen.‘ų?Andere˜distributiesŽ”plaatsen–odit“op“v•øčersc“hillende–olok‘’qŠaties.‘YšRaadpleeg“alsjeblieft“de“met“je“distributie“meegelevšøčerde“doGcumen˜tatieŽ”vøčoGor‘U details.ŽŸ(Š¾3Ž‘ĮSendmail‘G\congurerenŽŸ荍ó„!¢N ecbx1200Ā3.1Ž‘¾Het‘øho•_śofdconguratieb“estandŽŸMŖ¹Sendmail–^ßmaakt“gebruik“v‘’qŠan“een“zeer“complex“regelsysteem“vøčoGor“z'n“conguratie.‘Ž¾Ondanks“dat“je“hier“heelŽ”všøčeel–äžhandige“truuks“mee“uit“kun˜t“halen,‘ūis“het“ongebruik˜elijk“en“het“k˜ost“nogal“w˜at“tijd“om“een“Ąsendmail.cfŽ”¹bšGestand–ą§v‘’qŠanaf“b˜egin“af“aan“te“sc•øčhrijv“en.‘J­Als–ą§je“hierin“b˜enšøčt“ge€ļn˜teresseerd,‘÷ózou“je“dit“doGcumen˜t“n˜u“niet“v˜erderŽ”mošGeten–U lezen,“maar“in“plaats“daarv‘’qŠan“het“"Bat“Bo˜ok"v‘’qŠan“O'Reilly“mo˜eten“lezen.Ž¦In–—Yplaats“v‘’qŠan“deze“regels“met“de“hand“aan“te“gaan“passen,‘§ēzullen“wšøče“v˜ertrou˜w˜en“op“de“Ąm4“¹macro“proGcessorŽ”om–īŻons“conguratiebGestand“v›’qŠanøčuit“k˜anšøčt-en-klare“delen,‘Ldie“met“sendmail“w˜orden“gedistribueerd,‘Lsamen“teŽ”stellen.Ž¦Laten–U wšøče“eens“kijk˜en“naar“de“eerste“regels“v‘’qŠan“het“Ąsendmail.mc“¹bGestand:ŽŸā ‰ffÕĮGŸōśĄinclude(/usr/lib/sendmail.cf/m4/cf.m4)Ž”VERSIONID(`sendmail.mc–?¬-“roessler@guug.de')Ž”OSTYPE(debian)Ž”define(`ALIAS_FILE',`/etc/mail/aliases')ŽŸ ¢Ų‰ffÕĮGŸ—ō¹Aan–‘|het“bšGegin“is“Ącf.m4“¹ingesloten.‘&“Dit“m4“macro“b˜estand“b˜ev‘’qŠat“heel“vøčeel“macro˜denities“vøčo˜or“de“rest“v‘’qŠanŽ”het–dübGestand.‘”Zorg“dat“het“pad“dat“je“hier“opgeeft“correct“is“-“het“pad“dat“wšøče“in“ons“v˜o•Gorb“eeld–düw˜eergev˜en“isŽ”k•øčenmerk“end›‡Gv“oGor˜Debian˜GNU/Lin“ux.‘õDe˜ĄOSTYPE‘‡:¹macro˜w“ordt˜gebruikt˜om˜een˜aan“tal˜n“uttige˜standaard-Ž”w•øčaarden›}¤v“o•Gor˜b“epaalde˜conguratiew•øčaarden˜te˜gev“en.‘ė Als˜je˜geen˜Debian˜systeem˜gebruikt,‘‡Åzou˜je˜hier˜hetŽ”wøčo•Gord›:Y"debian"do“or˜"linøčux"mo“eten˜v•øčerv‘’qŠangen.‘h“ĄALIAS_FILE‘:R¹v“ertelt˜sendmail˜w“aar˜het˜mo•Get˜zo“ekøčen˜naar˜deŽ”lijst–U met“aliassen.Ž¦De–˜Īvšøčolgende“regels“v˜ertellen“sendmail“gebruik“te“mak˜en“v‘’qŠan“de“Ągenericstable“¹feature,‘é¹en“w˜aar“het“deŽ”b•Geno“digde›U conguratieb“estanden˜k‘’qŠan˜vinden:ŽŸā ‰ffÕĮGŸōśĄFEATURE(masquerade_envelope)–?¬FEATURE(genericstable,“`hashŽ”-o‘?¬/etc/mail/genericstable')Ž”GENERICS_DOMAIN_FILE(`/etc/mail/genericsdomain')ŽŸ x ‰ffÕĮGŸ—ō¹De–ģrĄmasquerade_envelope“¹feature“vøčertelt“sendmail“header“rewriting“toGe“te“passen“op“de“æenvelop‘’}/e‘¬Į¹zender“v‘’qŠanŽ”een›zBbGeric•øčh“t.‘(ŒDit˜is˜het˜mailadres˜w“aarnaar˜externe˜mailbGezorg˜subsystemen˜h“un˜foutv“erslagen˜met˜bGetrekkingŽ”tot–`de“bšGezorging“v‘’qŠan“mail“en“w•øčaarsc“h“u“wingsb˜eric“h“ten–`zullen“do˜orsturen.‘ĶADe“Ągenerics*“¹b˜estanden“zullenŽ”hierna–U wøčorden“uitgelegd.Ž¦Nu–°¤mošGeten“wøče“een“zogeno˜emde“smart“host“deni€ėren,‘щdat“is“een“computer“die“uitgaande“mail“vøčo˜or“je“systeemŽ”afhandelt.›įŠDit–zyk‘’qŠan“een“andere“computer“zijn“dan“je“ISP's“POP‘zoen“IMAP-servøčers.˜Neem“conøčtact“op“met“deŽ”helpšGdesk–U als“je“tøčwijfelt.‘q€De“co˜de“in“het“ho˜ofdconguratieb˜estand:ŽŸā ‰ffÕĮGŽŽŒ‹ g Ū_2 ż ~?Ÿ„€ÕĮGŽĆ3.‘ń8Sendmail‘Õcongureren’Nā™¹3ŽŽ ՁĮ żVƍĄdefine(`SMART_HOST',`mail-out.je.provider')Ž© <,‰ffÕĮGŸę1¹V‘’*øerv›’qŠang–U æmail-out.je.pr‘’}/ovider‘h¹alsjeblieft“doGor“de“fully“qualied“hostname“v˜an“je“inšøčternet“service“pro˜vider.ŽŸŲ¼De–{zlaatste“t•øčw“ee–{zregels“bšGestaan“uit“de“"mailer"denities“die“sendmail“no˜dig“heeft“om“erac•øčh“ter–{zte“køčomen“ho˜eŽ¤ ®div•øčerse›U t“yp•Gen˜mail˜mo“eten˜wøčorden˜afgehandeld:ŽŸ0w‰ffÕĮGŸ¹ĄMAILER(local)Ž”MAILER(smtp)Ž¦‰ffÕĮGŸ‚™¹Om–~³een“Ąsendmail.cf“¹bšGestand“v‘’qŠan“dit“Ąsendmail.mc“¹b˜estand“te“genereren,‘Étøčyp“je“(als“ro˜ot)“de“vøčolgendeŽ”opGdrac•øčh“ten:Ž©0w‰ffÕĮGŸć¾Ą#–?¬m4“sendmail.mc“>“_sendmail.cfŽ”#–?¬mv“-f“_sendmail.cf“sendmail.cfŽŸ öé‰ffÕĮGŸę1¹Let–@op“de“tecšøčhniek“w˜aarbij“Ąm4¹'s“uitv˜ošGer“naar“een“tijdelijk“b˜estand“wšøčordt“w˜eggesc˜hrev˜en“die“daarna“naar“deŽ”juiste–÷×lok‘’qŠatie“wšøčordt“v˜erplaatst.‘Y„Dit“helpt“ons“te“v˜oGork˜omen“dat“sendmail“deels“gesc˜hrev˜en“conguratiebGe-Ž”standen‘U inleest.ŽŸ# øĀ3.2Ž‘¾A dres‘ørewritingŽŸMŖ¹T‘’*øen–{eerste“moGeten“wšøče“aan“sendmail“opgev˜en“w˜elk˜e“adressen“als“lok‘’qŠaal“moGeten“w˜orden“aangemerkt“(en“dus“zijnŽ”onderwøčorpšGen–Xaan“rewriting).‘z)Dit“is“heel“simp˜el:‘wFplaats“gewøčo˜on“de“fully“qualied“hostname“v‘’qŠan“je“computerŽ”in–­shet“bGestand“Ą/etc/mail/genericsdomain¹.‘zzOm“ac•øčh“ter–­sde“fully“qualied“name“v‘’qŠan“je“host“te“k•øčomen,‘ƈt“ypŽ”je–U de“všøčolgende“opGdrac˜h˜t:Ž¦‰ffÕĮGŸ¹–?¬Ą$“hostname“-fŽŸ Ų“‰ffÕĮGŸōi¹Laten–‚Éwšøče“ons“n˜u“gaan“bšGezig“houden“met“de“rewriting“tab˜el:‘TĄ/etc/mail/genericstable¹.‘+cDit“b˜estand“b˜estaatŽ”uit–¼¦doGor“t•øčw“ee–¼¦spaties“gescšøčheiden“k˜olommen.‘ØIn“de“eerste“k˜olom“staat“het“lok‘’qŠale“adres,‘ևin“de“t˜w˜eede“k˜olomŽ”het–ņemail-adres“dat“daarvøčošGor“in“de“plaats“mo˜et“wøčorden“gebruikt.‘PwHet“b˜estand“zou“er“ongevøčeer“zo“uit“kunnenŽ”zien:ŽŸ>Ļ‰ffÕĮGŸć¾Ąharry‘æharryx@je.ispŽ”maude‘æmaudey@haar.ispŽ”root‘ž°fredx@je.ispŽ”news‘ž°fredx@je.ispŽŸ <,‰ffÕĮGŸę1¹V‘’*øoGor›#³æie–’}/der“e‘ä¹accoun•øčt˜op˜de˜lok‘’qŠale˜computer˜moGet˜€é€én˜regel˜v“ošGork“omen,‘-–zo˜dat›#³automatisc“h˜gegenereerde˜mailŽ”die–U het“lok›’qŠale“systeem“uitlekt,“de“correcte“header“informatie“bGev˜at.ŽŸŲ¼Om–®ƒredenen“v›’qŠan“pGerformance,‘ÄÜmaakt“sendmail“niet“direkt“gebruik“v˜an“dit“tekstbGestand,‘ÄÜmaar“v•øčerw“ac“h“t‘®ƒinŽ”plaats–U daarv‘’qŠan“een“"hashed"v•øčersie.‘q€T“yp–U de“všøčolgende“opGdrac˜h˜t“om“het“te“genereren:Ž¦‰ffÕĮGŸć¾Ą#–?¬makemap“-r“hash“genericstable.db“<“genericstableŽŸ <,‰ffÕĮGŸę1¹De–Ŗ&rewriting“regels“uit“Ągenericstable“¹zijn“æniet‘œļ¹v›’qŠan“toGepassing“op“lok˜ale“mail“of“bGeric•øčh“ten–Ŗ&die“je“v˜an“buitenafŽ”onšøčtv‘’qŠangt–L-“de“indeling“w˜ordt“alleen“gebruikt“als“een“bGeric˜h˜t“je“lok‘’qŠale“systeem“v˜erlaat“v˜oGor“je“ISP's“smartŽ”host.ŽŽŽŒ‹ Ū_2 ż ~?Ÿ„€ÕĮGŽĆ4.‘ń8Meer‘Õleesstof’|PÓ¹4ŽŽ ՁĮ żVƍĀ3.3Ž‘¾AliassenŽŸMŖ¹Het–õaliassenøčbšGestad“b˜ev›’qŠat“aanøčvullende“lok˜ale“namen“die“alleen“geldig“zijn“vøčoGor“lok˜ale“bGeric•øčh“ten.‘UrDit–õis“handigŽ¤ ®v•øčoGor›!,administratiev“e˜accoun“ts˜zoals˜Ąroot˜¹die˜automatisc“h˜gegenereerde˜bGeric“h“ten˜v‘’qŠan˜je˜systeem˜on“tv‘’qŠangen.Ž©Ų¼Een–U redelijk“bšGegin“vøčo˜or“Ą/etc/mail/aliases“¹zou“er“als“het“vøčolgende“b˜estand“uit“kunnen“zien:ŽŸX‰ffÕĮGŸFøĄroot:‘?¬fredŽ”news:‘?¬rootŽ”postmaster:‘?¬rootŽ”mail:‘?¬rootŽ”www:‘?¬rootŽ””nobody:‘?¬/dev/nullŽ”MAILER-DAEMON:‘?¬nobodyŽŸ Ÿ&‰ffÕĮGŸ ȍ¹Dit›ÄGvøčo•Gorb“eeld˜zal˜lok‘’qŠale˜mail˜vøčo“or˜de˜Ąroot¹,–į?Ąnews¹,“Ąpostmaster¹,“Ąmail¹,“en˜Ąwww˜¹gebruik•øčers˜forw“arden˜naar˜Ąfred¹,Ž”en–U de“bšGeric•øčh“ten‘U v“o˜or–U Ąnobody“¹en“ĄMAILER-DAEMON“¹zullen“wøčorden“do˜orgestuurd“naar“Ą/dev/null¹.Ž¦Net–ō÷als“de“Ągenericstable¹,‘ģkunnen“er“in“Ąaliases“¹heel“všøčeel“regels“v˜oGork˜omen.‘QDus“w˜ederom“zou“het“nietŽ”eci€ėn•øčt›]žv“oGor˜sendmail˜zijn˜als˜w“e˜het˜tekstbGestand˜dat˜w“e˜juist˜hebb•Gen˜b“esc•øčhrev“en˜zouden˜gebruik“en.‘ŠūHet-Ž”zelfde–½æmecšøčhanisme“als“v˜oGor“Ągenericstable“¹w˜ordt“gebruikt“v˜oGor“Ąaliases¹:‘Bæer“w˜ordt“een“"hashed"databaseŽ”gegenereerd.‘'“In–ē&plaats“v‘’qŠan“Ąmakemap“¹direct“te“gebruikšøčen,‘ Økun“je“deze“k˜eer“de“opGdrac˜h˜t“Ąnewaliases“¹t˜ypGen.Ž”Het–U zal“automatiscšøčh“v˜oGor“alles“zorgdragen“w˜at“noGdig“is.ŽŸ(Ąœ¾4Ž‘ĮMeer‘G\leesstofŽŸæ:¹De–“sendmail“source-distributie“bšGev‘’qŠat“heel“wøčat“do˜cumenøčtatie.‘ ,÷Lees“het,‘#