diff --git a/nl_NL.ISO8859-1/Makefile b/nl_NL.ISO8859-1/Makefile
index 474c52dafb..981c10785b 100644
--- a/nl_NL.ISO8859-1/Makefile
+++ b/nl_NL.ISO8859-1/Makefile
@@ -1,9 +1,13 @@
# $FreeBSD$
+#
+# %SOURCE% en_US.ISO8859-1/Makefile
+# %SRCID% 1.7
+#
-SUBDIR = books
-SUBDIR+= articles
+SUBDIR = articles
+SUBDIR+= books
COMPAT_SYMLINK = nl
DOC_PREFIX?= ${.CURDIR}/..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/nl_NL.ISO8859-1/articles/contributing-ports/Makefile b/nl_NL.ISO8859-1/articles/contributing-ports/Makefile
index 21748c47db..433aa61b43 100644
--- a/nl_NL.ISO8859-1/articles/contributing-ports/Makefile
+++ b/nl_NL.ISO8859-1/articles/contributing-ports/Makefile
@@ -1,19 +1,22 @@
#
-# $FreeBSD: $
+# $FreeBSD$
+#
+# %SOURCE% en_US.ISO8859-1/articles/contributing-ports/Makefile
+# %SRCID% 1.1
#
# Article: Contributing to the FreeBSD Ports Collection
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/nl_NL.ISO8859-1/articles/contributing-ports/article.sgml b/nl_NL.ISO8859-1/articles/contributing-ports/article.sgml
index fa76b264f7..0efedd9d73 100644
--- a/nl_NL.ISO8859-1/articles/contributing-ports/article.sgml
+++ b/nl_NL.ISO8859-1/articles/contributing-ports/article.sgml
@@ -1,875 +1,875 @@
%articles.ent;
]>
Bijdragen aan de &os; PortscollectieAbstractDit artikel beschrijft de manieren waarop een individu kan
bijdragen aan de &os; Portscollectie.Vertaald door René Ladan.SamLawranceMarkLinimon
&tm-attrib.freebsd;
&tm-attrib.general;
bijdragen aan portsIntroductieDe Portscollectie is een eeuwig werk-in-uitvoering. We willen
onze gebruikers een reservoir van software van derde partijen
bieden dat gemakkelijk te gebruiken, bijgewerkt, en van hoge
kwaliteit is. We hebben mensen nodig die wat tijd en moeite
investeren om ons dit doel te helpen bereiken.Iedereen kan erin betrokken raken, en er zijn vele manieren om
dat te doen. Bijdragen aan ports is een uitstekende manier om te
helpen om iets aan het project "terug te geven". Of u nu op zoek
bent naar een blijvende rol, of naar een uitdaging voor een
regenachtige dag, wij stellen uw hulp zeer op prijs!Als een vrijwilliger kunt u doen en laten wat u wilt. We
vragen echter wel dat u op de hoogte bent van wat andere leden van
de &os;-gemeenschap van u verwachten. U doet er goed aan om dit
te overwegen voordat u besluit om vrijwilliger te worden.Wat u kunt doen om te helpenEr zijn een aantal gemakkelijke manieren waarop u bij kunt
dragen om de portsboom actueel en in een goede toestand te
houden:Zoek wat leuke of nuttige software en creëer er een port
voor.Er is een groot aantal niet-onderhouden ports. Wordt een
onderhouder en adopteer een
port.Als u een port gecreëerd of geadopteerd heeft, dient
u op de hoogte te zijn van wat
u als onderhouder moet doen.Als u op zoek bent naar een snelle uitdaging zou u een bug of een kapotte port kunnen
repareren.Een nieuwe port creëerenEr is een apart document beschikbaar om u door het
creëeren (en bijwerken) van een port te loodsen genaamd het
Porter's
Handbook. Het Porter's Handbook is het beste naslagwerk
wat betreft het werken met het portssysteem. Het noemt details
over hoe het portssysteem werkt en bespreekt aangeraden
praktijken.Een niet-onderhouden port adopterenEen niet-onderhouden port kiezenHet beheer overnemen van ports die niet onderhouden worden
is een uitstekende manier om betrokken te raken.
Niet-onderhouden ports worden alleen bijgewerkt en gerepareerd
wanneer iemand zich aanbiedt om eraan te werken. Er is een
groot aantal ports dat niet onderhouden wordt. Het is een goed
idee om met het adopteren van een port te beginnen die u
regelmatig gebruikt.Voor niet-onderhouden ports staat de
MAINTAINER op
ports@FreeBSD.org. Een lijst van ports die
niet onderhouden wordt en hun huidige fouten en
probleemrapporten kan worden bekeken op het
&os; Ports Monitoring System.
Sommige ports beïnvloeden een groot aantal anderen
vanwege afhankelijkheden en relaties als slaafport. Over het
algemeen wensen we dat mensen wat ervaring hebben voordat ze
zulke ports onderhouden.U kunt uitzoeken of een port wel of geen afhankelijkheden
of slaafpoorten heeft door in een hoofdindex van ports genaamd
INDEX te kijken. (De naam van het bestand
varieert naar gelang de uitgave van &os;; bijvoorbeeld
INDEX-6.) Sommige ports hebben
conditionele afhankelijkheden die niet standaard in een bouw van
INDEX worden opgenomen. We verwachten dat
u zulke ports kunt herkennen door naar de
Makefile van andere ports te kijken.Hoe een port te adopterenZorg eerst dat u uw
verantwoordelijkheden als onderhouder begrijpt. Lees
ook het Porter's
Handbook. Neem alstublieft niet meer werk
op u dan dat u op een comfortabele manier
aankunt.U kunt zo snel als u wilt het beheer van een
niet-onderhouden port aanvragen. Stel
MAINTAINER in op uw emailadres en stuur een
PR (probleemrapport) in met de verandering. Als de port
bouwfouten bevat of moet worden bijgewerkt, dan kunt u deze
veranderingen in hetzelfde PR opnemen. Dit helpt omdat veel
committers minder bereid zijn om beheer aan iemand toe te kennen
die geen bekende geschiedenis met &os; heeft. Het insturen van
PR's die bouwfouten repareren of ports bijwerken zijn de beste
manier om er een op te bouwen.Stuur uw PR in met categorie ports en
klasse change-request. Een committer zal uw
PR nakijken, de veranderingen committen, en uiteindelijk het PR
sluiten. Soms kan dit proces even duren (committers zijn ook
vrijwilligers).De uitdaging voor port-onderhoudersDeze sectie geeft u een idee waarom ports onderhouden moeten
worden en schetst de verantwoordelijkheden van een onderhouder van
een port.Waarom ports onderhoud nodig hebbenEen port creëeren is een eenmalige taak. Er zeker van
zijn dat een port actueel is en blijvend te bouwen en draaien is
is een voortdurende inspanning. Onderhouders zijn mensen die
wat van hun tijd wijden aan het vervullen van deze
doelen.De voornaamste reden waarom ports onderhoud nodig hebben is
om het nieuwste en beste van software van derde partijen aan de
&os;-gemeenschap te geven. Een aanvullende uitdaging is om
individuele ports werkend te houden binnen het evoluerende
raamwerk van de Portscollectie.Als onderhouder zult u de volgende uitdagingen moeten
aangaan:Nieuwe versies en updates van software.Nieuwe versies en updates van bestaande geporteerde
software komen continu beschikbaar, en moeten in de
Portscollectie worden verwerkt om actuele software aan te
bieden.Veranderingen aan afhankelijkheden.Als er significante wijzigingen zijn gemaakt aan de
afhankelijkheden van uw port, kan het zijn dat de port
moet worden bijgewerkt zodat het correct blijft
werken.Veranderingen die afhankelijke ports
beïnvloeden.Als andere ports afhankelijk zijn van een port die u
onderhoudt, kan het zijn om veranderingen aan uw port met
andere onderhouders te coördineren.Interactie met andere gebruikers, onderhouders, en
ontwikkelaars.Een gedeelte van een onderhouder zijn is het vervullen
van een ondersteunende rol. Er wordt niet van u verwacht
dat u algemene ondersteuning biedt (maar we juichen het
toe als u dat doet). U dient een centraal punt voor
&os;-specifieke zaken met betrekking tot uw ports te
bieden.Bugs oplossen.Een port kan vatbaar zijn voor bugs die specifiek zijn
voor &os;. U dient deze bugs te onderzoeken en te
repareren wanneer ze worden gerapporteerd. Het grondig
testen van een port om problemen te identificeren voordat
ze in de Portscollectie terechtkomen is nog beter.Veranderingen aan portsinfrastructuur en
beleid.Af en toe worden die systemen die gebruikt worden om
ports en pakketten te bouwen bijgewerkt of wordt er een
nieuwe aanbeveling met betrekking tot de infrastructuur
gemaakt. U dient van deze veranderingen op de hoogte te
zijn indien ze betrekking hebben op uw ports en ze
bijgewerkt moeten worden.Veranderingen aan het basissysteem.&os; is constant in ontwikkeling. Veranderingen aan
software, bibliotheken, de kernel, of zelfs
beleidsveranderingen kunnen noodzakelijke veranderingen
aan ports veroorzaken.Verantwoordelijkheden als onderhouderHoud uw ports actueelDeze sectie schetst het proces dat gevolgd wordt om uw
ports actueel te houden.Dit is een overzicht. Meer informatie over het bijwerken
van een port is beschikbaar in het Porter's
Handbook.
Kijk uit naar updatesHoud de stroomopwaartse leverancier in de gaten wat
betreft nieuwe versies, updates, en beveiligingsreparaties
voor de software. Mailinglijsten met aankondigingen of
webpagina's met nieuws zijn hiervoor handig. Soms zullen
gebruikers contact met u opnemen en vragen wanneer uw port
wordt bijgewerkt. Als u het druk hebt met andere dingen
of u het om enige andere reden niet nu kunt bijwerken,
vraag ze dan om u te helpen door een update te
sturen.U kunt ook geautomatiseerde email van de &os;
Ports Version Check ontvangen die u informeert
of er een nieuwe versie van het distributiebestand van uw
port beschikbaar is. Meer informatie over dat systeem
(inclusief hoe toekomstige emails te stoppen) staat in het
bericht.Verwerk veranderingenVerwerk veranderingen in de port wanneer ze
beschikbaar komen. U dient een patch aan te kunnen maken
tussen de originele port en uw bijgewerkte port.Herzie en testHerzie en test uw veranderingen grondig:Bouw, installeer, en test uw port op zoveel
mogelijk platforms en architecturen. Het is
gebruikelijk dat een port op één tak of
platform werkt maar faalt op een ander.Zorg dat de afhankelijkheden van uw port compleet
zijn. De aangeraden manier om dit te doen is door uw
eigen tinderbox voor ports
te installeren. Bekijk bronnen voor meer
informatie.Controleer of de pakketlijst actueel is. Dit
omvat het toevoegen van nieuwe bestanden en mappen en
het verwijderen van ongebruikte regels.Verifieer uw port met &man.portlint.1; als gids.
Bekijk bronnen voor
belangrijke informatie over het gebruik van
portlint.Overweeg of veranderingen aan uw port andere ports
zouden kunnen kapotmaken. Bespreek de veranderingen
met de onderhouders van die ports als dit het geval
is. Dit is speciaal van belang als uw update de
versie van de gedeelde bibliotheek verandert; in dit
geval dienen de afhankelijke ports minstens een
verhoging van de PORTREVISION te
krijgen zodat ze automatisch worden bijgewerkt door
geautomatiseerde gereedschappen als
&man.portupgrade.1;.Stuur veranderingen inVerzend uw update door een PR met een uitleg van de
veranderingen en een patch die de verschillen tussen de
originele port en de bijgewerkte port bevat in te sturen.
Bekijk alstublieft Probleemrapporten
voor &os; schrijven voor informatie over hoe
een echt goed PR te schrijven.Stuur alstublieft geen &man.shar.1;-archief van de
gehele port; gebruik in plaats daarvan &man.diff.1;
-r. Op deze manier kunnen committers
veel gemakkelijker zien welke veranderingen er precies
gemaakt worden. De sectie in het Porter's Handbook over
Upgrading bevat meer informatie
hierover.WachtOp een gegeven moment zal een committer uw PR
behandelen. Dit kan minuten, maar ook weken duren - dus
ben alstublieft geduldig.Geef feedbackAls een committer een probleem vindt in uw
veranderingen zullen ze het waarschijnlijk aan u
terugkoppelen. Een snel antwoord helpt om uw PR sneller
gecommit te krijgen, en is beter voor het behouden van een
discussie wanneer er geprobeerd wordt om problemen op te
lossen.En ten slotteUw veranderingen zullen gecommit worden en uw port zal
bijgewerkt zijn. Het PR wordt vervolgens door de
committer gesloten. Dat is alles!Zorg ervoor dat uw ports correct blijven bouwenDeze sectie gaat over het ontdekken en oplossen van
problemen die verhinderen dat uw ports correct bouwen.&os; garandeert alleen dat de Portscollectie op de
-STABLE-takken werkt. U dient
5-STABLE of 6-STABLE te
draaien, bij voorkeur de laatste. In theorie zou het
voldoende moeten zijn om de nieuwste uitgave van elke
STABLE-tak te draaien (aangezien de ABI's niet horen te
veranderen), maar als u die tak kunt draaien is dat
beter.Aangezien de meerderheid van &os;-installaties op
PC-compatibele machines draait (wat wordt aangeduid als de
i386-architectuur), verwachten wij van u
dat u de port op die architectuur werkend houdt. Omdat echter
steeds meer mensen de amd64-architectuur
als zodanig gaan draaien, wordt het steeds belangrijker om
er voor te zorgen dat ports daarop ook draaien. Het is prima
om om hulp te vragen als u een van deze machines niet
heeft.De gebruikelijke manieren om te falen voor
niet-i386 machines zijn dat de originele
programmeurs aannamen dat, bijvoorbeeld, pointers
ints zijn of dat de relatief lakse
compiler gcc 2.95 werd
gebruikt. Steeds meer reorganiseren applicatie-auteurs hun
code om deze aannames te verwijderen — maar als de
auteur de code niet actief onderhoudt, zult u dit zelf
moeten doen.Deze taken moet u uitvoeren om ervoor te zorgen dat uw
port gebouwd kan worden:Kijk uit naar bouwfoutenControleer regelmatig het geautomatiseerde
portbouwcluster, pointyhat,
en het
overzicht van distributiebestanden om te zien
of er ports zijn die u onderhoudt die er niet in slagen om
gebouwd of opgehaald te worden (bekijk bronnen voor meer informatie
over deze systemen). Rapportages over mislukkingen kunnen
ook via email van andere gebruikers of geautomatiseerde
systemen tot u komen.Verzamel informatieAls u eenmaal op de hoogte bent van een probleem,
verzamel dan informatie die u helpt het op te lossen.
Bouwfouten die door pointyhat worden
gerapporteerd worden vergezeld door logs die aangeven waar
het bouwen mislukte. Als de mislukking door een gebruiker
aan u werd gerapporteerd, vraag ze dan om informatie te
verzenden die u helpt om het probleem te vast te stellen,
zoals:BouwlogsDe commando's en opties die gebruikt werden om de
port te bouwen (inclusief opties die in
/etc/make.conf zijn
ingesteld)Een lijst met op hun systeem geïnstalleerde
pakketten als aangegeven door &man.pkg.info.1;De versie van &os; die ze draaien als aangegeven
door &man.uname.1; -aWanneer hun Portscollectie voor het laatst was
bijgewerktWanneer hun bestand INDEX
voor het laatst was bijgewerktOnderzoek en zoek een oplossingHelaas is er geen rechttoe-rechtaan proces dat gevolgd
kan worden om dit te doen. Herinner: vraag om hulp als u
vast zit! De &a.ports; is een goede plaats om te starten,
en de stroomopwaartse ontwikkelaars zijn vaak zeer
behulpzaam.Stuur veranderingen inNet zoals bij het bijwerken van een port, dient u nu
de veranderingen te integreren, te herzien en te testen,
uw veranderingen als een PR in te sturen, en feedback te
geven als dat nodig is.Stuur patches naar de stroomopwaartse auteursIn sommige gevallen moet u patches maken om de port op
&os; te laten draaien. Sommige (maar niet alle)
stroomopwaartse auteurs zullen zulke patches in hun code
accepteren voor de volgende uitgave. Als dit zo is, kan
dit zelfs hun gebruikers op andere op BSD-gebaseerde
systemen helpen en misschien dubbel werk besparen.
Overweeg alstublieft om geschikte patches naar de auteurs
te zenden als teken van goede wil.Onderzoek foutrapporten en PR's die aan uw port
gerelateerd zijnDeze sectie gaat over het ontdekken en repareren van
bugs.&os;-specifieke bugs worden in het algemeen veroorzaakt
door aannames over de bouw- en draaiomgevingen die niet voor
&os; gelden. U zult zo'n soort fout minder snel aantreffen,
maar het kan subtieler en moeilijker zijn om het vast te
stellen.De onderstaande taken moet u uitvoeren om ervoor te zorgen
dat uw port als bedoeld blijft werken:Reageer op bugrapportenBugs kunnen per email via de
GNATS Probleemrapportendatabase aan u worden
gerapporteerd. Bugs kunnen ook direct door gebruikers aan
u gerapporteerd worden.U dient binnen 14 dagen op PR's en andere rapporten te
reageren, probeer hier alstublieft niet zo lang over te
doen. Probeer zo snel mogelijk te reageren, zelfs als het
alleen maar is om te zeggen dat u wat meer tijd nodig
heeft voordat u aan het PR kan werken.Verzamel informatieAls degene die de bug heeft gerapporteerd niet ook een
reparatie heeft aangeleverd, zult u informatie moeten
verzamelen die u in staat stelt om er een te
genereren.Als de bug reproduceerbaar is, kunt u zelf de meeste
vereiste informatie verzamelen. Zo niet, vraag dan degene
die de bug rapporteerde om de informatie voor u te
verzamelen, zoals:Een gedetailleerde beschrijving van hun acties,
verwacht gedrag en eigenlijk gedrag van het
programmaKopiën van invoergegevens die de bug
aanzwengeldenInformatie over hun bouw- en uitvoeromgeving -
bijvoorbeeld een lijst van geïnstalleerde
pakketten en de uitvoer van &man.env.1;CoredumpsStacktracesElimineer onjuiste rapportenSommige bugrapporten kunnen onjuist zijn. De
gebruiker kan het programma simpelweg verkeerd gebruikt
hebben; of hun geïnstalleerde pakketten kunnen
verouderd zijn en bijgewerkt moeten worden. Soms is een
gerapporteerde fout niet specifiek voor &os;. Rapporteer
in dit geval de bug naar de stroomopwaartse ontwikkelaars.
Als u de bug kunt repareren, kunt u de port ook patchen
zodat de reparatie is toegepast voor de volgende
stroomopwaartse uitgave.Vind een oplossingNet als met bouwfouten dient u een oplossing voor het
probleem te vinden. Nogmaals, vraag om hulp als u
vastzit!Stuur veranderingen in of keur ze goedNet als bij het bijwerken van een port, dient u nu de
veranderingen te integreren, ze te herzien en te testen,
en ze in een PR op te sturen (of een vervolg te verzenden
als er al een PR voor het probleem bestaat). Als een
andere gebruiker veranderingen in het PR heeft ingezonden,
kunt u ook een vervolg sturen waarin u zegt of u de
veranderingen wel of niet goedkeurt.Ondersteuning biedenDeel van een onderhouder zijn is ondersteuning bieden
— niet noodzakelijk voor de software in het algemeen
— maar voor de port en alle &os;-specifieke rariteiten
en problemen. Gebruikers kunnen contact met u opnemen voor
vragen, suggesties, problemen, en patches. Meestal zal hun
correspondentie specifiek voor &os; zijn.Af en toe zult u uw diplomatieke vaardigheden moeten
gebruiken, en gebruikers die algemene ondersteuning zoeken
vriendelijk naar de geschikte bronnen verwijzen. Minder vaak
zult u iemand tegenkomen die vraagt waarom de
RPMs niet actueel zijn of hoe ze de
software onder Foo Linux kunnen draaien. Grijp deze kans om
ze te vertellen dat uw port actueel is (als het dat is,
uiteraard!) en stel voor dat ze &os; uitproberen.Soms zullen gebruikers en ontwikkelaars besluiten dat u
een druk persoon bent wiens tijd waardevol is en wat werk van
u overnemen. Ze kunnen bijvoorbeeld:een PR insturen of u patches toesturen om uw port bij
te werken,een PR onderzoeken en er misschien een reparatie voor
aanleveren, ofop andere wijze veranderen aan uw port
insturen.In deze gevallen is uw hoofdplicht om op tijd te reageren.
De timeout voor niet-reagerende onderhouders is 14 dagen. Na
deze periode mogen niet-goedgekeurde veranderingen gecommit
worden. Ze hebben de moeite genomen om dit voor u te doen;
dus probeer tenminste op tijd te reageren. Daarna dient u zo
snel mogelijk hun veranderingen te herzien, goed te keuren, te
wijzigen, of met hen te bediscussiëren.Als u ervoor kunt zorgen dat ze het gevoel hebben dat hun
bijdrage gewaardeerd wordt (wat zo hoort te zijn), dan heeft u
een grotere kans om ze te overtuigen om in de toekomst meer
voor u te doen :-).Een kapotte port vinden en reparerenEr zijn twee zeer goede plaatsen om een port te vinden die wat
aandacht nodig heeft.U kunt de webinterface
voor de probleemrapportdatabase gebruiken om
onopgeloste PR's te doorzoeken en ze te bekijken. De meerderheid
van port-PR's zijn updates, maar met een beetje zoeken door en
uitkammen van de samenvattingen zou u iets moeten kunnen vinden
wat interessant is om aan te werken (de klasse
sw-bug is een goede plaats om te
beginnen).De andere plaats is het &os; Ports Monitoring
System. Zoek in het bijzonder naar niet-onderhouden
ports met bouwfouten en ports die als BROKEN
zijn gemerkt. Het is ook goed om veranderingen voor een
onderhouden port te versturen, maar denk eraan om de onderhouder
te vragen in het geval dat ze al aan het probleem werken.Als u eenmaal een bug of probleem heeft gevonden, verzamel dan
informatie, onderzoek, en repareer het! Als er een bestaand PR
is, ga daar dan mee verder. Maak anders een nieuw PR aan. Uw
veranderingen zullen worden herzien en, als alles goed is,
gecommit.Wanneer het tijd wordt om te stoppenWanneer uw interesses en toewijdingen veranderen, zult u
erachter komen dat u niet langer tijd heeft om sommige van (of al)
uw ports-bijdragen voort te zetten. Dat is prima! Laat ons weten
als u een port niet langer gebruikt of om andere redenen de tijd
of interesse heeft verloren om ports te onderhouden. Op deze
manier kunnen we verder gaan en andere mensen toestaan om te
proberen om aan bestaande problemen met de port te werken zonder
op uw antwoord te wachten. Herinner dat &os; een
vrijwilligersproject is, dus als het onderhouden van een port
niet langer leuk is, is het waarschijnlijk tijd om iemand anders
het te laten doen!In elk geval houdt het Ports Management Team
(portmgr) zich het recht voor om u als
onderhouder te wissen als u uw port voor enige tijd niet actief
heeft onderhouden. (Momenteel is dit 3 maanden.) Hiermee
bedoelen we dat er onopgeloste problemen of wachtende updates zijn
waaraan binnen die tijd niet gewerkt is.Bronnen voor onderhouders en vrijwilligers voor portsHet Porter's Handbook is
uw overlevingsgids voor het portssysteem. Houd het in de
buurt!Probleemrapporten
voor &os; schrijven beschrijft hoe het beste een PR
geformuleerd en ingezonden kan worden. In 2005 werden er meer dan
elfduizend port-PR's ingestuurd! Het volgen van dit artikel helpt
ons enorm om de tijd te verkorten die nodig is om uw PR's te
behandelen.De
Probleemrapportendatabase.Pointyhat
is het bouwcluster voor ports. U kunt Pointyhat gebruiken om
bouwlogs van ports over alle architecturen en grote uitgaven te
controleren.Het &os; Ports Monitoring
System kan u kruislingse informatie over ports zoals
bouwfouten en probleemrapporten laten zien. Als u een onderhouder
bent kunt u het gebruiken om de bouwstatus van uw ports te
controleren. Als een vrijwilliger kunt u het gebruiken om kapotte
en niet-onderhouden ports te vinden die gerepareerd moeten
worden.Bill Fenners overzicht
van distributiebestanden kan u ports laten zien waarvoor
de distributiebestanden niet kunnen worden opgehaald. U kunt uw
eigen ports controleren of u kunt het gebruiken om ports te vinden
waarvan de MASTER_SITES moet worden
bijwerkt.De tinderbox voor ports is de meest
grondige manier om een port door de gehele cyclus van installatie,
inpakken, en deïnstallatie te halen. Het biedt een
opdrachtregelinterface maar kan ook via een webinterface worden
beheerd. Meer informatie staat op de marcuscom tinderbox
homepage.&man.portlint.1; is een applicatie die gebruikt kan worden om
te verifiëren dat uw port zich aan vele belangrijke
stilistische en functionele richtlijnen houdt.
portlint is een eenvoudige heuristieke
applicatie, dus dient u het alleen als gids
te gebruiken. Als portlint
veranderingen voorstelt die onredelijk lijken, raadpleeg dan het
Porter's Handbook
of vraag om advies.De &a.ports; dient voor algemene ports-gerelateerde
discussies. Het is een goede plaats om om hulp te vragen. U kunt
zich
aanmelden, of de lijstarchieven lezen en doorzoeken.
Het lezen van de archieven van de &a.ports-bugs; en de
&a.cvs-ports; kan ook interessant zijn.
diff --git a/nl_NL.ISO8859-1/articles/explaining-bsd/Makefile b/nl_NL.ISO8859-1/articles/explaining-bsd/Makefile
index e0728a0215..8307e7198a 100644
--- a/nl_NL.ISO8859-1/articles/explaining-bsd/Makefile
+++ b/nl_NL.ISO8859-1/articles/explaining-bsd/Makefile
@@ -1,21 +1,22 @@
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/articles/explaining-bsd/Makefile
+# %SRCID% 1.6
+#
# Article: Explaining BSD
-MAINTAINER=grog@FreeBSD.org
-
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/nl_NL.ISO8859-1/articles/problem-reports/Makefile b/nl_NL.ISO8859-1/articles/problem-reports/Makefile
index 081f20e0f8..75ae60912a 100644
--- a/nl_NL.ISO8859-1/articles/problem-reports/Makefile
+++ b/nl_NL.ISO8859-1/articles/problem-reports/Makefile
@@ -1,19 +1,22 @@
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/articles/problem-reports/Makefile
+# %SRCID% 1.6
+#
# Article: Writing FreeBSD Problem Reports
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/nl_NL.ISO8859-1/books/Makefile b/nl_NL.ISO8859-1/books/Makefile
index a3820ec805..494259c8bf 100644
--- a/nl_NL.ISO8859-1/books/Makefile
+++ b/nl_NL.ISO8859-1/books/Makefile
@@ -1,8 +1,12 @@
# $FreeBSD$
+#
+# %SOURCE% en_US.ISO8859-1/books/Makefile
+# %SRCID% 1.14
+#
SUBDIR = handbook
ROOT_SYMLINKS= handbook
DOC_PREFIX?= ${.CURDIR}/../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/nl_NL.ISO8859-1/books/Makefile.inc b/nl_NL.ISO8859-1/books/Makefile.inc
index 3ed2a73554..c505338370 100644
--- a/nl_NL.ISO8859-1/books/Makefile.inc
+++ b/nl_NL.ISO8859-1/books/Makefile.inc
@@ -1,5 +1,8 @@
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/Makefile.inc
+# %SRCID% 1.4
+#
DESTDIR?= ${DOCDIR}/nl_NL.ISO8859-1/books/${.CURDIR:T}
diff --git a/nl_NL.ISO8859-1/books/handbook/advanced-networking/Makefile b/nl_NL.ISO8859-1/books/handbook/advanced-networking/Makefile
index eb62e4335c..a80aba7f19 100644
--- a/nl_NL.ISO8859-1/books/handbook/advanced-networking/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/advanced-networking/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/advanced-networking/Makefile
+# %SRCID% 1.2
+#
CHAPTERS= advanced-networking/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/audit/Makefile b/nl_NL.ISO8859-1/books/handbook/audit/Makefile
index 84cb9b04ee..7e0963fe95 100644
--- a/nl_NL.ISO8859-1/books/handbook/audit/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/audit/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/audit/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= audit/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/audit/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/audit/chapter.sgml
index a49b1873dc..7cab860e53 100644
--- a/nl_NL.ISO8859-1/books/handbook/audit/chapter.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/audit/chapter.sgml
@@ -1,793 +1,795 @@
TomRhodesGeschreven door RobertWatsonRemkoLodderVertaald door Security Event AuditingOverzichtAUDITSecurity Event AuditingMAC&os; 6.2 en later heeft ondersteuning voor diepgaande
beveiligingsauditing van evenementen. Evenement auditing maakt
het mogelijk dat er diepgaande en configureerbare logging van
een variateit aan beveiligings-gerelateerde systeem evenementen,
waaronder logins, configuratie wijzigingen, bestands- en
netwerk toegang. Deze log regels kunnen erg belangrijk
zijn voor live systeem monitoring, intrusion detection en
postmortem analyse. &os; implementeert &sun;'s gepubliceerde
BSM API en bestandsformaat en is uitwisselbaar
met zowel &sun;'s &solaris; als &apple;'s &macos; X audit
implementaties.Dit hoofdstuk richt zich op de installatie en configuratie van
evenement auditing. Het legt audit policies uit en geeft
voorbeelden van audit configuraties.Na het lezen van dit hoofdstuk weet de lezer:Wat evenement auditing is en hoe het werkt.Hoe evenement auditing geconfigureerd kan worden voor
&os; voor gebruikers en processen.Hoe de audittrail bekeken kan worden door gebruik te maken
van de audit reduction en onderzoek programma's.Voordat verder gegaan wordt moet het volgende bekend
zijn:&unix; en &os; basishandelingen begrijpen
().Bekend zijn met de basishandelingen van kernel
configuratie/compilatie
().Bekend zijn met beveiliging en hoe dat relateert aan
&os; ().De audit faciliteiten in &os; 6.X
zijn experimenteel en het gebruik in productie mag alleen
gebeuren na zorgvuldig onderzoek van de risico's van het in
gebruik nemen van experimentele software. Bekende limitaties
zijn dat niet alle beveiligings-relevante systeem evenementen
geaudit kunnen worden en dat sommige login mechanismes, zoals
X11 gebaseerde display managers en derde partij programma's
geen (goede) ondersteuning bieden voor het auditen login sessies
van gebruikers.De beveiligings evenement auditing faciliteit is in staat om
erg gedetailleerde logs van systeem activiteiten op een druk
systeem te genereren, trail bestands data kan erg groot worden
wanneer er erg precieze details worden gevraagd, wat enkele
gigabytes per week kan behalen in sommige configuraties.
Beheerders moeten rekening houden met voldoende schijfruimte
voor grote audit configuraties. Bijvoorbeeld het kan gewenst
zijn om eigen bestandsysteem aan /var/audit
toe te wijzen zo dat andere bestandssystemen geen hinder
ondervinden als het audit bestandssysteem onverhoopt vol
raakt.Sleutelwoorden in dit hoofdstukVoordat dit hoofdstuk gelezen kan worden, moeten er een
aantal audit gerelateerde termen uitgelegd worden:evenement: Een auditbaar evenement is
elk evenement dat gelogged kan worden door het audit
subsysteem. Voorbeelden van beveiligings gerelateerde
evenementen zijn het creëeren van een bestand, het
opzetten van een netwerk verbinding, of van een gebruiker die
aanlogt. Evenementen zijn ofwel attributable
wat betekend dat ze getraceerd kunnen worden naar een
geauthoriseerde gebruiker, of non-attributable
voor situaties waarin dat niet mogelijk is. Voorbeelden van
non-attributable evenementen zijn elk evenement dat gebeurd
voordat authorisatie plaatsvind in het login proces, zoals bij
foutieve inlog pogingen.class: Evenement klassen zijn benoemde
sets van gerelateerde evenementen en worden gebruikt in
selectie expressies. Veel gebruikte klassen van evenementen
zijn bestands creatie (fc), exec
(ex) en login_logout (lo).record: Een record is een audit log
regel die het beveiligings evenement beschrijft. Records
bevatten een record evenement type, informatie over het
onderwerp (de gebruiker) welke de actie uitvoerd, de datum en
de tijd, informatie over de objecten of argumenten, en een
conditie die aangeeft of de actie geslaagd of mislukt is.trail: Een audit trail, of log
bestand bestaat uit een serie van audit records welke
beveiligings evenementen beschrijft. Meestal lopen deze
trails in chronologische orde, gebaseerd op de tijd dat
het evenement optrad. Alleen geauthoriseerde processen
mogen records toevoegen aan de audit trail.selection expression: Een selectie
expressie is een string welke een lijst bevat van prefixes
en audit evenement klasse namen die overeenkomen met
evenementen.preselection: Het proces waarbij het
systeem bepaald welke evenementen interessant zijn voor de
beheerder, zodat wordt voorkomen dat er audit records
worden gegenereerd voor evenementen die niet interessant zijn.
De preselection configuratie gebruikt een serie
van selectie expressies om te identificeren welke klassen van
evenementen van toepassing zijn op gebruikers en globale
instellingen voor zowel geauthoriseerde als ongeauthoriseerde
processen.reduction: Het proces waarbij records
van bestaande audit trails worden geselecteerd voor bewaring,
uitprinten of analyse. Ook is dit het proces waarbij ongewenste
audit records worden verwijderd uit het audit trail. Door
gebruik te maken van reduction kunnen beheerders policies
implementeren die het bewaren van audit data verzorgen.
Bijvoorbeeld gedetailleerde audit trails kunnen één
maand bewaard worden maar erna worden trails gereduceerd zodat
alleen login informatie bewaard worden voor archiverings
redenen.Installeren van audit ondersteuning.Ondersteuning in de gebruikersomgeving voor evenement auditing
wordt geïnstalleerd als onderdeel van het basis &os; besturings
systeem. In &os; 7.0 en later wordt kernel ondersteuning
voor evenement auditing standaard meegenomen tijdens compilatie.
In &os; 6.X, moet ondersteuning
expliciet in de kernel gecompileerd worden door de volgende regel
toe te voegen aan het kernel configuratie bestand:options AUDITBouw en herinstalleer de kernel volgens het normale
proces zoals beschreven in .Zodra een audit ondersteunende kernel is gebouwd en
geïnstalleerd en deze is opgestart kan de audit daemon
aangezet worden door de volgende regel aan &man.rc.conf.5; toe te
voegen:auditd_enable="YES"Audit ondersteuning moet daarna aangezet worden door een
herstart van het systeem of door het handmatig starten van de audit
daemon:/etc/rc.d/auditd startAudit ConfiguratieAlle configuratie bestanden voor beveiligings audit kunnen
worden gevonden in
/etc/security. De volgende
bestanden moeten aanwezig zijn voor de audit daemon wordt
gestart:audit_class - Bevat de definities
van de audit klasses.audit_control - Controleert aspecten
van het audit subsysteem, zoals de standaard audit klassen,
minimale hoeveelheid diskruimte die moet overblijven op de
audit log schijf, de maximale audit trail grootte, etc.audit_event - Tekst namen en
beschrijvingen van systeem audit evenementen, evenals een
lijst van klassen waarin elk evenement zich bevind.audit_user - Gebruiker specifieke
audit benodigdheden welke gecombineerd worden met de globale
standaarden tijdens het inloggen.audit_warn - Een bewerkbaar shell
script gebruikt door de auditd
applicatie welke waarschuwings berichten genereert in
bijzondere situaties zoals wanneer de ruimte voor audit
records te laagis of wanneer het audit trail bestand is
geroteerd.Audit configuratie bestanden moeten voorzichtig worden
bewerkt en onderhouden, omdat fouten in de configuratie kunnen
resulteren in het verkeerd loggen van evenementen.Evenement selectie expressiesSelectie expressies worden gebruikt op een aantal plaatsen
in de audit configuratie om te bepalen welke evenementen er
geaudit moeten worden. Expressies bevatten een lijst van
evenement klassen welke gelijk zijn aan een prefix welke
aangeeft of gelijke records geaccepteerd moeten worden of
genegeerd en optioneel om aan te geven of de regel is bedoeld
om succesvolle of mislukte operaties te matchen. Selectie
expressies worden geevalueerd van links naar rechts en twee
expressies worden gecombineerd door de één aan de
ander toe te voegen.De volgende lijst bevat de standaard audit evenement klassen
welke aanwezig zijn in het audit_class
bestand:all - all -
Matched alle evenement klasses.ad -
administrative - Administratieve acties
welke uitgevoerd worden op het gehele systeem.ap - application -
Applicatie gedefinieerde acties.cl - file close -
Audit aanroepen naar de close systeem
aanroep.ex - exec - Audit
programma uitvoer. Het auditen van command line argumenten
en omgevings variabelen wordt gecontroleerd via
&man.audit.control.5; door gebruik te maken van de
argv en envv parameters
in de policy setting.fa -
file attribute access - Audit de
toevoeging van object attributen zoals &man.stat.1;,
&man.pathconf.2; en gelijkwaardige evenementen.fc - file create
- Audit evenementen waar een bestand wordt gecreëerd als
resultaat.fd - file delete
- Audit evenementen waarbij bestanden verwijderd
worden.fm -
file attribute modify - Audit
evenementen waarbij bestandsattribuut wijzigingen
plaatsvinden zoals bij &man.chown.8;, &man.chflags.1;,
&man.flock.2;, etc.fr - file read
- Audit evenementen waarbij data wordt gelezen, bestanden
worden geopend voor lezen etc.fw - file write
- Audit evenementen waarbij data wordt geschreven, bestanden
worden geschreven of gewijzigd, etc.io - ioctl -
Audit het gebruik van de &man.ioctl.2; systeem aanroep.ip - ipc - Audit
verschillende vormen van Inter-Process Communication, zoals
POSIX pipes en System V IPC operaties.lo - login_logout -
Audit &man.login.1; en &man.logout.1; evenementen die
plaatsvinden op het systeem.na -
non attributable - Audit
non-attributable evenementen.no -
invalid class - Matched geen enkel
audit evenement.nt - network -
Audit evenementen die gerelateerd zijn aan netwerk acties
zoals &man.connect.2; en &man.accept.2;.ot - other -
Audit diverse evenementen.pc - process -
Audit process operaties zoals &man.exec.3; en
&man.exit.3;Deze audit evenement klassen kunnen veranderd worden door
het wijzigingen van de audit_class en
audit_event configuratie bestanden.Elke audit klasse in de lijst wordt gecombineerd met een
voorzetsel welke aangeeft of er succesvolle of mislukte
operaties hebben plaatsgevonden en of de regel wordt toegevoegd
of verwijderd van het matchen van de klasse en het type.(none) Audit zowel succesvolle als mislukte informatie
van het evenement.+ Audit succesvolle evenementen in
deze klasse.- Audit mislukte evenementen in deze
klasse.^ Audit geen enkele succesvolle of
mislukte evenementen in deze klasse.^+ Audit geen succesvolle evenementen
in deze klasse.^- Audit geen mislukte evenementen
in deze klasse.De volgende voorbeeld selectie strings selecteren zowel
succesvolle als mislukte login/logout evenementen, maar alleen
succesvolle uitvoer evenementen:lo,+exConfiguratie bestandenIn de meeste gevallen moet een beheerder twee bestanden
wijzigingen wanneer het audit systeem wordt geconfigureerd:
audit_control en
audit_user. Het eerste controleert systeem
brede audit eigenschappen en policies, het tweede kan gebruikt
worden om diepgaande auditing per gebruiker uit te voeren.Het audit_control bestandHet audit_control bestand specificeert
een aantal standaarden van het audit subsysteem. Als de inhoud
bekeken wordt van dit bestand is het volgende te zien:dir:/var/audit
flags:lo
minfree:20
naflags:lo
policy:cnt
filesz:0De optie wordt gebruikt om
één of meerdere directories te specificeren die
gebruikt worden voor de opslag van audit logs. Als er meer
dan één directory wordt gespecificeerd, worden ze
op volgorde gebruikt naarmate ze gevuld worden. Het is
standaard dat audit geconfigureerd wordt dat audit logs
worden bewaard op een eigen bestandssysteem, om te
voorkomen dat het audit subsysteem en andere subsystemen met
elkaar botsen als het bestandssysteem volraakt.Het veld stelt de systeem brede
standaard preselection maskers voor attributable evenementen
in. In het voorbeeld boven worden succesvolle en mislukte
login en logout evenementen geaudit voor alle gebruikers.De optie definieerd het minimale
percentage aan vrije ruimte voor dit bestandssysteem waar de
audit trails worden opgeslagen. Wanneer deze limiet wordt
overschreven wordt er een waarschuwing gegenereerd. In het
bovenstaande voorbeeld wordt de minimale vrije ruimte ingesteld
op 20 procent.De optie specificeerd audit klasses
welke geaudit moeten worden voor non-attributed evenementen
zoals het login proces en voor systeem daemons.De optie specificeert een komma
gescheiden lijst van policy vlaggen welke diverse aspecten
van het audit proces beheren. De standaard
cnt vlag geeft aan dat het systeem moet
blijven draaien ook al treden er audit fouten op (deze vlag
wordt sterk aangeraden). Een andere veel gebruikte vlag is
argv, wat het mogelijk maakt om command
line argumenten aan de &man.execve.2; systeem aanroep te
auditen als onderdeel van het uitvoeren van commando's.De optie specificeert de maximale
grootte in bytes hoeveel een audit trail bestand mag groeien
voordat het automatisch getermineerd en geroteerd wordt. De
standaard, 0, schakelt automatische log rotatie uit. Als de
gevraagde bestands grootte niet nul is en onder de minimale
512k zit, wordt de optie genegeerd en wordt er een log bericht
gegenereerd.Het audit_user bestandHet audit_user bestand staat de
beheerder toe om verdere audit benodigdheden te
specificeren voor gebruikers. Elke regel configureert
auditing voor een gebruiker via twee velden, het eerste is het
alwaysaudit veld, welke een set van
evenementen specificeert welke altijd moet worden geaudit voor
de gebruiker, en de tweede is het neveraudit
veld, welke een set van evenementen specificeerd die nooit
geaudit moeten worden voor de gebruiker.Het volgende voorbeeld audit_user
bestand audit login/logout evenementen en succesvolle commando
uitvoer voor de root gebruiker, en audit
bestands creatie en succesvolle commando uitvoer voor de
www gebruiker. Als dit gebruikt wordt
in combinatie met het voorbeeld
audit_control bestand hierboven, is de
root regel dubbelop en zullen login/logout
evenementen ook worden geaudit voor de
www gebruiker.root:lo,+ex:no
www:fc,+ex:noHet audit subsysteem beheren.Audit trails inzienAudit trails worden opgeslagen in het BSM binaire formaat,
dus ondersteunende programma's moeten worden gebruikt om de
informatie te wijzigen of converteren naar tekst. Het
&man.praudit.1; commando converteert trail bestanden naar een
simpel tekst formaat; het &man.auditreduce.1; commando kan
gebruikt worden om de audit trail te reduceren voor analyse,
archivering of voor het uitprinten van de data.
auditreduce ondersteund een variateit aan
selectie parameters, zoals evenement type, evenement klasse,
gebruiker, datum of tijd van het evenement en het bestandspad
of object dat gebruikt wordt.Bijvoorbeeld, het praudit programma zal
een dump maken van de volledige inhoud van een gespecificeerd
audit log bestand in normale tekst:&prompt.root; praudit /var/audit/AUDITFILEWaar
AUDITFILE het
audit bestand is dat ingelezen moet worden.Audit trails bestaan uit een serie van audit records die
gevormd worden door tokens, welke praudit
sequentieel print één per regel. Elke token is van
een specifiek type, zoals een header welke
de audit record header bevat, of path welke
het bestandspad bevat van een lookup. Het volgende is een
voorbeeld van een execve evenement:header,133,10,execve(2),0,Mon Sep 25 15:58:03 2006, + 384 msec
exec arg,finger,doug
path,/usr/bin/finger
attribute,555,root,wheel,90,24918,104944
subject,robert,root,wheel,root,wheel,38439,38032,42086,128.232.9.100
return,success,0
trailer,133Deze audit representeert een succesvolle
execve aanroep, waarbij het commando
finger doug is aangeroepen. Het argument
token bevat beide commando's gerepresenteerd door de shell aan
de kernel. Het path token bevat het pad
naar het uitvoerbare bestand zoals opgezocht door de kernel.
Het attribute token beschrijft de binary en
om precies te zijn bevat het de bestands mode welke gebruikt
kan worden om te zien of het bestand setuid was. Het
subject token beschrijft het onderwerp
proces en bevat sequentieel het audit gebruikers ID, effectieve
gebruikers ID en groep ID, echte gebruikers ID, groep ID,
proces ID, sessie ID, port ID en login adres. Let op dat het
audit gebruikers ID en het echte gebruikers ID van elkaar
verschillen omdat de gebruiker robert
veranderd is naar de root gebruiker voordat
het commando werd uitgevoerd, maar welke geaudit wordt als de
originele geauthoriseerde gebruiker. Als laatste wordt de
return token gebruikt om aan te geven dat er
een succesvolle uitvoer is geweest en trailer
geeft het einde aan van het record.In &os; 6.3 en later ondersteund praudit
ook een XML output formaat, welke geselecteerd kan worden door
gebruik te maken van het argument.Het reduceren van audit trailsOmdat audit logs erg groot kunnen worden, zal de beheerder
waarschijnlijk een subset van records willen selecteren om te
gebruiken, zoals records die gekoppeld zijn aan een specifieke
gebruiker:&prompt.root; auditreduce -u trhodes /var/audit/AUDITFILE | prauditDit selecteert alle audit records die geproduceert zijn
voor de gebruiker trhodes die opgeslagen
is in het AUDITFILE
bestand.Delegeren van audit onderzoek rechtenLeden van de audit groep krijgen
permissie om de audit trails te lezen in
/var/audit; standaard is deze groep leeg en
kan alleen de root gebruiker deze
audit trails lezen. Gebruikers kunnen toegevoegd worden aan de
audit groep zodat onderzoek rechten kunnen
worden gedelegeerd aan de geruiker. Omdat de mogelijkheid van
het inzien van audit log inhoud significante inzicht kan geven
in het gedrag van gebruikers en processen, wordt het aangeraden
dat de delagatie van onderzoek rechten eerst goed overdacht
wordt.Live monitoren door gebruik van audit pipesAudit pipes zijn gecloonde pseudo-devices in het device
bestands systeem, welke applicaties toestaat om een tap te
plaatsen in de live audit record stream. Dit is primair
interessant voor schrijvers van intrusion detection en systeem
monitoring applicaties. Echter, voor een beheerder is het
audit pipe device een makkelijke manier om live monitoring toe
te staan zonder dat er problemen kunnen ontstaan met het
eigenaarschap van het audit trail bestand, of dat een log
rotatie de evenementen stroom in de weg zit. Om de live audit
evenementen stroom te kunnen inzien is het volgende commando
benodigd:&prompt.root; praudit /dev/auditpipeStandaard zijn de audit pipe device nodes alleen toegankelijk
voor de root gebruiker. Om deze
toegankelijk te maken voor leden van de
audit groep, moet een
devfs regel toegevoegd worden aan het
devfs.rules bestand:add path 'auditpipe*' mode 0440 group auditZie &man.devfs.rules.5; voor meer informatie over het
configureren van het devfs bestands systeem.Het is makkelijk om audit evenement terugkoppeling
cyclussen te creëeren, waarbij het tonen van elk audit
evenement resulteert in het genereren van nog meer audit
evenementen. Bijvoorbeeld, als alle netwerk I/O wordt geaudit
en &man.praudit.1; wordt gestart vanuit een SSH sessie, wordt
er een grote continue stroom aan audit evenementen gegenereert
doordat elk getoond evenement een nieuw evenement genereert.
Het is verstandig om praudit te draaien op
een audit pipe device voor sessies zonder diepgaande I/O
auditing om te voorkomen dat dit gebeurd.Het roteren van audit trail bestandenAudit trails worden alleen beschreven door de kernel en
alleen beheerd worden door de audit daemon,
auditd. Beheerders mogen geen
gebruik maken van &man.newsyslog.conf.5; of soortgelijke
programma's om de audit files te roteren. In plaats daarvan kan
het audit management programma gebruikt worden
om auditing te stoppen, het audit systeem te herconfigureren en
log rotatie uit te voeren. Het volgende commando zorgt ervoor
dat de audit daemon een nieuwe audit log maakt, en vervolgens
de kernel een signaal stuurt om het nieuwe logbestand te gaan
gebruiken. Het oude logbestand wordt getermineerd en hernoemd,
waarna het bestand gemanipuleerd kan worden door de beheerder.&prompt.root; audit -nAls de auditd daemon op dit
moment niet actief is, zal het commando falen en
zal er een error bericht worden geproduceerd.Als de volgende regel wordt toegevoegd aan het
/etc/crontab bestand, zal er
elke twaalf uur een rotatie plaatsvinden door middel
van &man.cron.8;:0 */12 * * * root /usr/sbin/audit -nDeze wijziging wordt van kracht op het moment dat het
nieuwe /etc/crontab bestand wordt
opgeslagen.Automatische rotatie van het audit trail bestand gebaseerd
op de bestand grootte is mogelijk via de
optie in &man.audit.control.5; en wordt beschreven in de
configuratie bestanden sectie van dit hoofdstuk.Audit trails comprimerenOmdat audit trail bestanden erg groot kunnen worden, is het
meestal gewenst om de trails te comprimeren of op een andere
manier te archiveren zodra ze afgesloten zijn door de audit
daemon. Het audit_warn script kan gebruikt
worden om bewerkte operaties te doen voor een variateit aan
audit gerelateerde evenementen inclusief een nette terminatie
van audit trails wanneer deze geroteerd worden. Bijvoorbeeld
het volgende kan worden toegevoegd aan het
audit_warn script, dat de audit trails
comprimeert zodra ze afgesloten worden:#
# Compress audit trail files on close.
#
if [ "$1" = closefile ]; then
gzip -9 $2
fiAndere archiverings activiteiten kunnen zijn het kopieren van
trail bestanden naar een gecentraliseerde server, het verwijderen
van oude trail bestanden of het reduceren van de audit trail om
onnodige records te verwijderen. Het script zal alleen draaien
als audit trail bestanden netjes worden afgesloten, wat betekend
dat het script niet uitgevoerd wordt op trails die niet netjes
afgesloten zijn, waardoor bestanden corrupt kunnen raken.
diff --git a/nl_NL.ISO8859-1/books/handbook/basics/Makefile b/nl_NL.ISO8859-1/books/handbook/basics/Makefile
index fea6942368..e24593a6fd 100644
--- a/nl_NL.ISO8859-1/books/handbook/basics/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/basics/Makefile
@@ -1,15 +1,17 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/basics/Makefile
+# %SRCID% 1.1
CHAPTERS= basics/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/bibliography/Makefile b/nl_NL.ISO8859-1/books/handbook/bibliography/Makefile
index f926466a22..9db5096617 100644
--- a/nl_NL.ISO8859-1/books/handbook/bibliography/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/bibliography/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/bibliography/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= bibliography/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/boot/Makefile b/nl_NL.ISO8859-1/books/handbook/boot/Makefile
index 92105efc40..00f725ed70 100644
--- a/nl_NL.ISO8859-1/books/handbook/boot/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/boot/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/boot/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= boot/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/colophon.sgml b/nl_NL.ISO8859-1/books/handbook/colophon.sgml
index bc0a0aaf81..fab35a507d 100644
--- a/nl_NL.ISO8859-1/books/handbook/colophon.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/colophon.sgml
@@ -1,33 +1,35 @@
Dit boek bevat het gecombineerde werk van honderden
vrijwilligers die bijdragen aan Het &os; Documentatie
Project. De tekst is geschreven in SGML volgens de
DocBook DTD en wordt vanuit SGML geformatteerd naar vele
verschillende presentatieformaten met gebruik van de open source
DSSSL engine Jade. De
presentatie-instructies voor Jade zijn
verkregen door uitbreiding van Norm Walsh's DSSSL stijlbladen. De
gedrukte versie van dit boek was niet mogelijk geweest zonder
Donald Knuth's &tex; typesetting taal,
Leslie Lamport's LaTeX, of Sebastian
Rahtz's JadeTeX macropakket.
diff --git a/nl_NL.ISO8859-1/books/handbook/config/Makefile b/nl_NL.ISO8859-1/books/handbook/config/Makefile
index 40c8e11572..9875fd1807 100644
--- a/nl_NL.ISO8859-1/books/handbook/config/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/config/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/config/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= config/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/cutting-edge/Makefile b/nl_NL.ISO8859-1/books/handbook/cutting-edge/Makefile
index 29da7845dd..bca8497cf1 100644
--- a/nl_NL.ISO8859-1/books/handbook/cutting-edge/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/cutting-edge/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/cutting-edge/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= cutting-edge/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/desktop/Makefile b/nl_NL.ISO8859-1/books/handbook/desktop/Makefile
index 6dd222f080..37a99317dc 100644
--- a/nl_NL.ISO8859-1/books/handbook/desktop/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/desktop/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/desktop/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= desktop/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/disks/Makefile b/nl_NL.ISO8859-1/books/handbook/disks/Makefile
index 140975c79e..01e0fb563c 100644
--- a/nl_NL.ISO8859-1/books/handbook/disks/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/disks/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/disks/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= disks/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/dtrace/Makefile b/nl_NL.ISO8859-1/books/handbook/dtrace/Makefile
index 0a0e6e03dc..be94ef2c90 100644
--- a/nl_NL.ISO8859-1/books/handbook/dtrace/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/dtrace/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/dtrace/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= dtrace/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/eresources/Makefile b/nl_NL.ISO8859-1/books/handbook/eresources/Makefile
index cb030a0162..bac8776abb 100644
--- a/nl_NL.ISO8859-1/books/handbook/eresources/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/eresources/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/eresources/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= eresources/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/filesystems/Makefile b/nl_NL.ISO8859-1/books/handbook/filesystems/Makefile
index 499d815d22..cb61bfe236 100644
--- a/nl_NL.ISO8859-1/books/handbook/filesystems/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/filesystems/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/filesystems/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= filesystems/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/firewalls/Makefile b/nl_NL.ISO8859-1/books/handbook/firewalls/Makefile
index 331f5bf8ec..8b30b1b3dd 100644
--- a/nl_NL.ISO8859-1/books/handbook/firewalls/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/firewalls/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/firewalls/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= firewalls/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/geom/Makefile b/nl_NL.ISO8859-1/books/handbook/geom/Makefile
index 59e5759cdc..ca8d2d55e6 100644
--- a/nl_NL.ISO8859-1/books/handbook/geom/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/geom/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/geom/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= geom/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/install/Makefile b/nl_NL.ISO8859-1/books/handbook/install/Makefile
index 738cdb647d..12d1cb753e 100644
--- a/nl_NL.ISO8859-1/books/handbook/install/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/install/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/install/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= install/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/introduction/Makefile b/nl_NL.ISO8859-1/books/handbook/introduction/Makefile
index 4c22f7ce8a..2a09be5ac7 100644
--- a/nl_NL.ISO8859-1/books/handbook/introduction/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/introduction/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/introduction/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= introduction/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/kernelconfig/Makefile b/nl_NL.ISO8859-1/books/handbook/kernelconfig/Makefile
index 95839d340a..d9eeea59d3 100644
--- a/nl_NL.ISO8859-1/books/handbook/kernelconfig/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/kernelconfig/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/kernelconfig/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= kernelconfig/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/l10n/Makefile b/nl_NL.ISO8859-1/books/handbook/l10n/Makefile
index c6741a2341..9c3f9fb681 100644
--- a/nl_NL.ISO8859-1/books/handbook/l10n/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/l10n/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/l10n/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= l10n/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/l10n/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/l10n/chapter.sgml
index 2ac70f5c13..4e5589f53e 100644
--- a/nl_NL.ISO8859-1/books/handbook/l10n/chapter.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/l10n/chapter.sgml
@@ -1,1084 +1,1086 @@
AndreyChernovBijgedragen door Michael C.WuHerschreven door RenéLadanVertaald door Lokalisatie - I18N/L10N gebruiken en instellenOverzicht&os; is een zeer gedistribueerd project met gebruikers over
de gehele wereld. Dit hoofdstuk behandelt de
internationalisatie- en lokalisatie-eigenschappen van &os; die
niet-Engelssprekende gebruikers echt werk laten verzetten. Er
zitten veel aspecten van de i18n-implementatie in zowel de
systeem- als applicatieniveaus, dus waar mogelijk wordt de lezer
verwezen naar meer specifieke bronnen.Na dit hoofdstuk weet de lezer:Hoe verschillende talen en locales gecodeerd zijn
op moderne besturingssystemen.Hoe de locale in te stellen voor een login-shell.Hoe de console voor niet-Engelse talen in te
stellen.Hoe het X Window systeem effectief met meerdere
talen te gebruiken.Waar meer informatie te vinden over het schrijven
van i18n-respecterende applicaties.Veronderstelde voorkennis:Weten hoe aanvullende applicaties van derde partijen
geïnstalleerd worden ().BeginselenWat is I18N/L10N?internationalisatielokalisatielokalisatieOntwikkelaars hebben internationalisatie
(internationalization afgekort tot de term
I18N, de eerste en de laatste letter en het aantal
tussenliggende letters. L10N gebruikt hetzelfde schema voor
naamgeving en komt van localization. Samen
staan I18N/L10N methoden, protocollen en applicaties gebruikers
toe de taal van hun keuze te gebruiken.I18N-applicaties zijn geprogrammeerd door gebruik te maken
van I18N-gereedschappen van bibliotheken. Daarmee kunnen
ontwikkelaars een eenvoudig bestand schrijven en menu's en
teksten weergeven in elke taal. Programmeurs worden door het
&os; Project sterk aangemoedigd deze conventie te
volgen.Waarom I18N/L10N gebruiken?I18N/L10N wordt gebruikt als een gebruiker gegevens wil
bekijken, invoeren of verwerken in niet-Engelse talen.Welke talen worden ondersteund door I18N?I18N en L10N zijn niet &os; specifiek. Momenteel kan er
gekozen worden uit de meeste grote wereldtalen, inclusief maar
niet beperkt tot: Chinees, Duits, Japans, Koreaans, Frans,
Russisch en Vietnamees.Lokalisatie gebruikenIn al zijn pracht is I18N niet &os; specifiek maar een
conventie. Het &os; Project moedigt iedereen aan &os; te helpen
deze conventie te gebruiken.localeLokalisatie-instellingen zijn gebaseerd op drie hoofdtermen:
Taalcode, Landcode en Codering. Localenamen zijn als volgt
opgebouwd:Taalcode_Landcode.CoderingTaal- en landcodestaalcodeslandcodesOm een &os; systeem (of een ander I18N-ondersteunend &unix;
achtig systeem) te lokaliseren naar een bepaalde taal, moet de
gebruiker de codes voor het specifieke land en taal
achterhalen. Landcodes geven applicaties aan welke variatie
van de gegeven taal gebruikt moet worden. Ook webbrowsers,
SMTP/POP-servers, webservers, enz. maken beslissingen gebaseerd
op die codes. Hieronder staan voorbeelden van taal- en
landcodes:Taal- en landcodeOmschrijvingen_USEngels - Verenigde Statenru_RURussisch voor Ruslandzh_TWTraditioneel Chinees voor TaiwanCoderingencoderingenASCIISommige talen gebruiken andere ASCII-coderingen dan 8-bit,
wijde of multibyte karakters, zie &man.multibyte.3;. Oudere
programma's herkennen die niet en interpreteren ze foutief als
controlekarakters aan. Afhankelijk van de implementatie moeten
gebruikers eventueel een applicatie met wijde of multibyte
karakterondersteuning compileren, of hem correct instellen. Om
wijde of multibyte karakters in te kunnen voeren en te kunnen
verwerken levert de &os; Portscollectie
voor elke taal programma's. Hiervoor staat I18N-documentatie
in de respectievelijke &os; Port.Voor het bouwen van een gewenste applicatie met lokalisatie
is het verstandig de applicatiedocumentatie te bekijken om te
bepalen hoe de juiste waarden doorgegeven kunnen worden naar
configure, Makefile of de compiler.Houd rekening met:Taalspecifieke enkele C-karakters karakterverzamelingen
(zie &man.multibyte.3;), bijvoorbeeld ISO8859-1,
ISO-8859-15, KOI8-R of CP437.Wijde of multibyte coderingen, bijvoorbeeld EUC of
Big5.Een lijst met actieve karakterverzamelingen staat bij de
IANA
Registry.&os; gebruikt in plaats hiervan X11-compatible
locale-coderingen.I18N applicatiesIn het &os; Ports en Package systeem hebben
I18N-applicaties I18N in hun naam zodat ze
eenvoudig herkend kunnen worden. Toch ondersteunen ze niet
altijd iedere mogelijk gewenste taal.Locale instellenMeestal is het voldoende om de waarde van de localenaam
te exporteren als LANG in de login-shell. Dit
kan door die waarde in ~/.login_conf van
de gebruiker of in ~/.profile,
~/.bashrc of
~/.cshrc) van de gebruiker te zetten.
Het is niet nodig om localedeelverzamelingen als
LC_CTYPE of LC_CTIME in te
stellen. Bij de taalspecifieke &os; documentatie staat vaak
nog informatie.De twee volgende omgevingsvariabelen moeten in de
instellingenbestanden ingesteld worden:POSIXLANG voor de &posix; &man.setlocale.3;
functies.MIMEMM_CHARSET voor de MIME
karakters voor applicaties.Dit is inclusief het instellen van de gebruikers-shell, het
instellen van de specifieke applicatie en de instellingen voor
X11.Methoden om locale in te stellenlocaleloginklasseEr zijn twee methoden om de locale in te stellen en
beiden worden hieronder beschreven. De eerste (aanbevolen)
methode is door middel van het toekennen van
omgevingsvariabelen in de loginklasse en de tweede is
mogelijk door middel van het toevoegen van de
omgevingsvariabelen aan het opstartbestand van de
systeem-shell.Methode loginklasseDeze methode biedt de mogelijkheid om
omgevingsvariabelen die nodig zijn voor de localenaam en
MIME karakterverzamelingen éénmalig voor
elke mogelijke shell toe te kennen in plaats van door
toekenning via het opstartbestand van elke shell. Gebruikersinstellingen kunnen
door de gebruiker zelf worden gemaakt en voor Beheerdersinstellingen zijn
superuser-rechten nodig.GebruikersinstellingenHieronder staat een minimaal voorbeeld van een
.login_conf bestand in de thuismap
van een gebruiker die beide variabelen heeft ingesteld op
Latin-1 codering:me:\
:charset=ISO-8859-1:\
:lang=de_DE.ISO8859-1:traditioneel ChineesBIG-5 coderingHieronder staat is een voorbeeld van een
.login_conf die variabelen instelt
voor traditioneel Chinees in BIG-5 codering. Er zijn
veel andere variabelen ingesteld zijn omdat sommige
software localevariabelen niet correct respecteert voor
Chinees, Japans, en Koreaans.# Gebruikers die geen valuta eenheden of tijdformaten voor Taiwan
# willen gebruiken kunnen handmatig elke variabele wijzigen.
me:\
:lang=zh_TW.Big5:\
:setenv=LC_ALL=zh_TW.Big:\
:setenv=LC_COLLATE=zh_TW.Big5:\
:setenv=LC_CTYPE=zh_TW.Big5:\
:setenv=LC_MESSAGES=zh_TW.Big5:\
:setenv=LC_MONETARY=zh_TW.Big5:\
:setenv=LC_NUMERIC=zh_TW.Big5:\
:setenv=LC_TIME=zh_TW.Big5:\
:charset=big5:\
:xmodifiers="@im=gcin": # Stel gcin in als XIM invoerserverZie Beheerdersinstellingen en
&man.login.conf.5; voor meer details.BeheerdersinstellingenEr dient gecontroleerd te worden of loginklasse voor
gebruikers, /etc/login.conf, de
juiste taal instelt door de volgende instellingen in
/etc/login.conf:taalnaam:
accountstitel:\
:charset=MIME_karakterverzameling:
:lang=localenaam:\
:tc=default:Voor het bovenstaande voorbeeld dat gebruik maakt van
Latin-1 ziet dat er als hieronder uit:german:Duitse gebruikersaccounts:\
:charset=ISO-8859-1:\
:lang=de_DE.ISO8859-1:\
:tc=default:Voer voordat de gebruikers login class wordt
gewijzigd het volgende uit:&prompt.root; cap_mkdb /etc/login.confom de nieuwe configuratie in
/etc/login.conf zichtbaar te maken
voor het systeem.Loginklasse wijzigen met
&man.vipw.8;vipwMet vipw kunnen nieuwe gebruikers
toegevoegd worden en de instellingen dienen ongeveer als
volgt uit te zien:gebruiker:wachtwoord:1111:11:taal:0:0:Gebruikersnaam:/home/gebruiker:/bin/shLoginklasse wijzigen met
&man.adduser.8;adduserloginklasseMet adduser kunnen nieuwe
gebruikers toegevoegd worden. Hierna dient
één van de volgende stappen uitgevoerd te
worden:defaultclass =
taal instellen
in /etc/adduser.conf. In dit
geval dient er voor alle gebruikers van andere talen
een default klasse ingevoerd te
worden.Er kan ook gekozen worden voor een antwoord op
de vraag over taal vanuit &man.adduser.8;:Enter login class: default []: Ook kan het volgende gebruikt worden voor elke
gebruiker die een andere taal gebruikt:&prompt.root; adduser -class taalLoginklasse wijzigen met
&man.pw.8;pwAls &man.pw.8; wordt gebruikt om nieuwe gebruikers
toe te voegen:&prompt.root; pw useradd gebruikersnaam -L taalMethode opstartbestand shellDeze methode wordt niet aanbevolen omdat er
instellingenen nodig zijn voor elke mogelijke shell. Het
advies is de Methode
Loginklasse te gebruiken.
MIMElocaleOm de localenaam en MIME karakterverzameling toe te
voegen kunnen gewoon twee omgevingsvariabelen ingesteld
worden, zoals hieronder te zien is, in
/etc/profile en/of
/etc/csh.login opstartbestanden voor
shells. Hier wordt de Duitse taal als voorbeeld
gebruikt:In /etc/profile:LANG=de_DE.ISO8859-1; export LANGMM_CHARSET=ISO-8859-1; export MM_CHARSETOf in /etc/csh.login:setenv LANG de_DE.ISO8859-1setenv MM_CHARSET ISO-8859-1Het is ook mogelijk de bovenstaande instructies toe te
toevoegen /usr/share/skel/dot.profile
(ongeveer gelijk aan wat hierboven in
/etc/profile is gebruikt) of aan
/usr/share/skel/dot.login
(ongeveer gelijk aan wat hierboven in
/etc/csh.login is gebruikt).Voor X11:In $HOME/.xinitrc:LANG=de_DE.ISO8859-1; export LANGOf:setenv LANG de_DE.ISO8859-1Afhankelijk van de shell (zie boven).Console instellenVoor alle enkele C-karakters karakterverzamelingen worden
de juiste lettertypen voor het console ingesteld in
/etc/rc.conf voor de taal in kwestie
met:font8x16=lettertypenaam
font8x14=fontnaam
font8x8=fontnaamDe lettertypenaam komt uit de
map /usr/share/syscons/fonts zonder het
achtervoegsel .fnt.sysinstalltoetsenmappingschermmappingDe gebruiker dient ervoor te zorgen de juiste enkele
C-karakters karakterverzameling wordt ingesteld met
/stand/sysinstall
((/stand/sysinstall in &os; versies ouder
dan 5.2). In sysinstall kan
Configure en
Console gekozen worden. Het is ook
mogelijk het volgende aan /etc/rc.conf
toe te voegen:scrnmap=schermmappingnaam
keymap=toetsenmappingnaam
keychange="fkey_nummer sequentie"schermmappingnaam komt uit de
map /usr/share/syscons/scrnmaps zonder het
achtervoegsel .scm. Meestal is een
schermmapping met een overeenkomstig gemapt lettertype nodig
als workaround om bit 8 naar bit 9 uit te breiden op een
lettertype–karaktermatrix van een VGA-adapter in
pseudografische gebieden, dat wil zeggen om letters uit dat
gebied te halen als het schermlettertype een bit 8 kolom
gebruikt.Als de moused daemon is
ingeschakeld met de onderstaande regel in
/etc/rc.conf, dan wordt aangeraden de
muiscursorinformatie in de volgende paragraaf te
bekijken.moused_enable="YES"mousedStandaard neemt de muiscursor van het &man.syscons.4;
stuurprogramma het bereik 0xd0-0xd3 van de tekenverzameling in
beslag. Als een ingestelde taal dit bereik gebruikt, moet het
cursorbereik hierbuiten gehaald worden. Om de workaround voor
&os; aan te zetten kan de volgende regel aan
/etc/rc.conf toegevoegd worden:mousechar_start=3De toetsenmappingnaam komt uit
de map /usr/share/syscons/keymaps zonder
het achtervoegsel .kbd. Als niet precies
duidelijk is welke toetsenmapping te gebruiken, kan de
toetsenmapping getest worden met &man.kbdmap.1; zonder opnieuw
op te starten.keychange is nodig om functietoetsen zo
te programmeren dat ze overeenkomen met het geselecteerde
terminaltype omdat functietoetssequenties niet in de
toetsenmapping gedefinieerd kunnen worden.Er dient ook een controle te zijn op een juiste instelling
van het juiste terminaltype voor het console in
/etc/ttys voor alle
ttyv* regels. De huidige instellingen
zijn:KarakterverzamelingTerminaltypeISO8859-1 of ISO-8859-15cons25l1ISO8859-2cons25l2ISO8859-7cons25l7KOI8-Rcons25rKOI8-Ucons25uCP437 (VGA standaardinstelling)cons25US-ASCIIcons25wVoor wijde of multibyte karaktertalen kan je juiste
&os; port in de map
/usr/ports/taal
gebruikt worden. Sommige ports verschijnen als console terwijl
het systeem ze als serieële vtty ziet. Er dienen dus
voldoende vtty's gereserveerd te zijn voor zowel X11 als de
pseudo-serieële console. Hier is een gedeeltelijke lijst
van applicaties voor het gebruik van andere talen in
console:TaalLocatietraditioneel Chinees (BIG-5)chinese/big5conJapansjapanese/kon2-16dot
of
japanese/mule-freewnnKoreaanskorean/hanX11 instellenHoewel X11 geen deel is van het &os; Project wordt het hier
wel besproken voor &os; gebruikers. Meer details zijn te
vinden op de &xorg;
website of op de website van een andere X11 server
die gebruikt wordt.In ~/.Xresources kunnen
applicatiespecifieke I18N instellingen gemaakt worden als
lettertypen, menu's, enzovoort.Lettertypen weergevenX11 &truetype; lettertypeserverEerst moet &xorg; server
(x11-servers/xorg-server)
of &xfree86; server (x11-servers/XFree86-4-Server)
geïnstalleerd worden en daarna de &truetype;
lettertypen van de taal. Door de gewenste locale in te
stellen worden de menu's en dergelijke in de gekozen taal
weergegeven.Niet-Engelse karakters invoerenX11 Input Method (XIM)Het X11 Input Method (XIM) protocol is een nieuwe
standaard voor alle X11-cliënts. Alle X11-applicaties
horen geschreven te worden als XIM-cliënts die
invoer aannemen van de XIM-invoerservers. Er zijn meerdere
XIM-servers beschikbaar voor verschillende talen.PrinterinstellingenSommige enkele C-karakters karakterverzamelingen zijn
standaard hardware-gecodeerd in printers. Voor wijde of
multibyte karakterverzamelingen is een speciale installatie
nodig en het gebruik van apsfilter
wordt dan aangeraden. Een document kan ook naar &postscript;
of PDF formaat omgezet worden door gebruik te maken van
taalspecifieke conversieprogramma's.Kernel en bestandssystemenHet &os; Snelle Bestandssysteem (FFS) is 8-bit schoon, dus
het kan gebruikt worden met elke enkele C-karakters
karakterverzameling (zie &man.multibyte.3;), maar er is geen
karakterverzamelingnaam opgeslagen in het bestandssysteem. Het
is dus rauw 8-bit en het weet niets van coderingsbevelen.
Officieel ondersteunt FFS nog geen enkele vorm van wijde of
multibyte karakterverzamelingen. Toch hebben sommige wijde of
multibyte karakterverzamelingen onafhankelijke patches voor FFS
die ondersteuning inschakelen. Dit zijn tijdelijke oplossingen
of hacks die niet overdraagbaar zijn en daarom is besloten ze
niet in de source tree op te nemen. Op de websites van de
talen staan de patchbestanden en meer informatie.&ms-dos;UnicodeVoor het &os; &ms-dos; bestandssysteem kan geschakeld
worden tussen &ms-dos;, Unicode karakterverzamelingen en
gekozen &os; bestandssysteem-karakterverzamelingen.
&man.mount.msdosfs.8; beschijft de details.I18N-programma's compilerenVeel &os; Ports zijn geschikt gemaakt voor &os; met
I18N-ondersteuning. Een aantal daarvan zijn gemarkeerd met
-I18N in de portnaam. Deze en nog veel andere
programma's hebben ingebouwde ondersteuning voor I18N en
behoeven geen speciale aandacht.MySQLToch is het voor sommige applicaties zoals
MySQL nodig dat de
Makefile ingesteld is met de specifieke
karakterverzameling. Dit wordt normaliter gedaan in de
Makefile of door middel van het doorgeven
van een waarde aan configure in de
broncode.&os; lokaliseren naar talenAndreyChernovOorspronkelijk bijgedragen door Russisch (KOI8-R codering)lokalisatieRussischVoor meer informatie over KOI8-R codering, zie de KOI8-R References (Russian Net
Character Set).Locale instellenVoeg de volgende regels toe aan
~/.login_conf bestand:me:Mijn account:\
:charset=KOI8-R:\
:lang=ru_RU.KOI8-R:Zie eerder in dit hoofdstuk voor voorbeelden over het
opzetten van de locale.Console instellenVoeg de volgende regel toe aan
aan /etc/rc.conf:mousechar_start=3Gebruik ook de volgende instellingen in
/etc/rc.conf:keymap="ru.koi8-r"
scrnmap="koi8-r2cp866"
font8x16="cp866b-8x16"
font8x14="cp866-8x14"
font8x8="cp866-8x8"Voor elke ttyv* regel in
/etc/ttys, gebruik
cons25r als het terminaltype.Zie eerder in dit hoofdstuk voor voorbeelden over het
opzetten van de
console.Printer instellenprintersAangezien de meeste printers met Russische karakters met
hardware-codepagina CP866 komen, is een speciaal
uitvoerfilter nodig om KOI8-R om te zetten in CP866. Zo'n
filter is standaard geïnstalleerd als
/usr/libexec/lpr/ru/koi2alt. Een
/etc/printcap regel voor een Russische
printer moet er uit zien als:lp|Russische lokale lijnprinter:\
:sh:of=/usr/libexec/lpr/ru/koi2alt:\
:lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs:Zie &man.printcap.5; voor een gedetailleerde
beschrijving.&ms-dos; bestandssysteem en Russische
bestandsnamenDe volgende voorbeeld &man.fstab.5; regel zet
ondersteuning aan voor Russische bestandsnamen gekoppeld op
&ms-dos; bestandssystemen:/dev/ad0s2 /dos/c msdos rw,-Wkoi2dos,-Lru_RU.KIO8-R 0 0De optie selecteert de te gebruiken
localenaam, en stelt de
karakteromzettabel in. Om de te
gebruiken moet /usr gemount zijn voor de
&ms-dos; partitie omdat de omzettabellen zich bevinden in
/usr/libdata/msdosfs.
&man.mount.msdosfs.8; geeft verdere uitleg.X11 instellenVoer eerst de niet-X
lokale instellingen uit zoals beschreven.Installeer bij gebruik van
&xorg; het package x11-fonts/xorg-fonts-cyrillic.Controleer de "Files" sectie in
/etc/X11/xorg.conf bestand. Zorg
dat de volgende regels
vóór andere
FontPath regels staan:FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/misc"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/75dpi"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/100dpi"Er er een hoge resolutie videomodus wordt gebruikt
dan kunnen de 75dpi en 100dpi regels gewisseld
worden.Zie de Ports Collectie voor meer cyrillic
fonts.Om een Russisch toetsenbord te activeren dient het
volgende in het "Keyboard" gedeelte
van xorg.conf te staan:XkbLayout "ru"
XkbOptions "grp:caps_toggle"Voor &xorg;:Option "XkbLayout" "us,ru"
Option "XkbOptions" "grp:caps_toggle"Ook moet daar XkbDisable
uitgeschakeld (uitgecomment) zijn.Voor grp:caps_toggle is de
RUS/LAT-schakelaar Rechter Alt voor
de grp:ctrl_shift_toggle schakelaar zal
dat CtrlShift
zijn. De oude CapsLock functie is nog
steeds beschikbaar via ShiftCapsLock
(alleen in LAT-modus). Voor
grp:toggle is de RUS/LAT-schakelaar
Right Alt.
grp:caps_toggle werkt om onbekende
reden niet in &xorg;.Als er &windows; toetsen op een
toetsenbord zitten en het blijkt dat sommige
niet-alfabetische toetsen verkeerd gemapt zijn in
RUS-modus, dan kan de volgende regel aan
xorg.conf toegevoegd worden:Option "XkbVariant" ",winkeys"Het Russische XKB toetsenbord hoeft niet te werken
met niet-gelokaliseerde applicaties.Minimaal gelokaliseerde applicaties moeten vroeg in het
programma een aanroep naar de XtSetLanguageProc
(NULL, NULL,); functie doen.In KOI8-R for X
Window staan meer instructies over het
lokaliseren van X11-applicaties.Traditioneel Chinees voor Taiwanlokalisatietraditioneel ChineesHet &os;-Taiwan Project heeft een Chinese HOWTO voor &os;
op
die gebruik maakt van veel Chinese ports. De huidige redacteur
voor de &os; Chinese HOWTO is Shen
Chuan-Hsing statue@freebsd.sinica.edu.tw.Chuan-Hsing Shen heeft de Chinese &os;
Collection (CFC) gemaakt met gebruik van &os;-Taiwan's
zh-L10N-tut. De packages en scriptbestanden
zijn beschikbaar op .Duits (alle ISO 8859-1 talen)lokalisatieDuitsSlaven Rezic eserte@cs.tu-berlin.de heeft
een tutorial geschreven over hoe umlauten in &os; gebruikt
kunnen worden. De tutorial is in het Duits geschreven en staat
op .Japans en KoreaanslokalisatieJapanslokalisatieKoreaansJapanse lokalisatie staat beschreven op en de Koreaanse
lokalisatie staat op .Niet-Engelstalige &os; documentatieSommige delen van &os; zijn naar andere talen vertaald.
Hiernaar staan links op de hoofdsite of in
/usr/share/doc.
diff --git a/nl_NL.ISO8859-1/books/handbook/linuxemu/Makefile b/nl_NL.ISO8859-1/books/handbook/linuxemu/Makefile
index 37adfa9af6..812248d3f8 100644
--- a/nl_NL.ISO8859-1/books/handbook/linuxemu/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/linuxemu/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/linuxemu/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= linuxemu/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/mac/Makefile b/nl_NL.ISO8859-1/books/handbook/mac/Makefile
index 74aca4172f..6932e19048 100644
--- a/nl_NL.ISO8859-1/books/handbook/mac/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/mac/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/mac/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= mac/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/mail/Makefile b/nl_NL.ISO8859-1/books/handbook/mail/Makefile
index 538dff091f..013be5ad56 100644
--- a/nl_NL.ISO8859-1/books/handbook/mail/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/mail/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/mail/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= mail/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml
index 0876e660b5..2e6303d117 100644
--- a/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml
@@ -1,2339 +1,2341 @@
BillLloydOrigineel werk van JimMockHerschreven door TomLeetersVertaald door FredericVan AsscheVertaling voortgezet door RenéLadanVertaling voortgezet door Elektronische mailOverzichtemailElektronische Mail, beter bekend als email, is
tegenwoordig een van de meest gebruikte vormen van communicatie.
Dit hoofdstuk geeft een algemene inleiding in het opzetten van een
mailserver op &os;, alsmede een introductie in het verzenden en
ontvangen van email op &os;; het is echter geen complete
referentie en veel belangrijke overwegingen zullen buiten
beschouwing worden gelaten. Voor een completere behandeling
wordt de lezer gewezen op de vele uitstekende boeken welke
worden vermeld in .In dit hoofdstuk wordt behandeld:Welke software (componenten) gebruikt wordt(en) bij het
verzenden en ontvangen van email.Waar algemene sendmail
instellingsbestanden worden opgeslagen in &os;.Het verschil tussen lokale en postbussen op-afstand.
Hoe spammers te verhinderen dat ze de mailserver illegaal
gebruiken als "relay".Hoe een andere MTA (Mail Transfer Agent) te installeren en
configureren op het systeem, ter vervanging van
sendmail.Hoe veel voorkomende problemen met mail servers worden
opgelost.Hoe SMTP met UUCP te gebruiken.Hoe een systeem in te stellen om alleen mail te verzenden.
Hoe email te gebruiken met een inbelverbinding.Hoe SMTP Authenticatie in te stellen voor verhoogde
beveiliging.Hoe een Mail User Agent zoals mutt
te installeren om email te verzenden en te
ontvangen.Hoe mail te downloaden van een POP of
IMAP server op afstand.Hoe automatisch filters en sorteerregels op inkomende
email toe te passen.Voordat dit hoofdstuk gelezen wordt, dienen:De netwerkverbindingen correct ingesteld te zijn ().De juiste DNS-informatie ingesteld te zijn voor de
mailserver ().Bekend te zijn hoe software van derde partijen te
installeren ().Gebruik maken van elektronische mailPOPIMAPDNSEr zijn vijf belangrijke componenten betrokken bij het
uitwisselen van email. Dit zijn: het
gebruikersprogramma, de
serverdaemon, DNS,
een postbus, lokaal of op afstand
, en natuurlijk de mailhost zelf
.
Het gebruikersprogrammaDit omvat opdrachtregelprogramma's zoals mutt
, pine,
elm, en mail, en GUI
programma's zoals balsa,
xfmail, en iets geavanceerders
zoals een webbrowser. Deze programma's doen niets
anders dan de mail bezorgen bij de lokale mailhost, door deze
af te leveren of bij een van de beschikbare serverdiensten, of via
TCP.Mailhost Server Daemonmailserver daemonssendmailmailserver daemonspostfixmailserver daemonsqmailmailserver daemonsexim&os; wordt standaard geleverd met de sendmail
, maar ondersteund meerdere andere mailserver
daemons, zoals:exim;postfix;qmail.De server daemon heeft meestal twee functies—het is
verantwoordelijk voor het ontvangen van inkomende mail en het
bezorgen van uitgaande mail. Het is niet
verantwoordelijk voor het verzamelen van mail door gebruik te
maken van protocollen zoals POP of
IMAP om mail te lezen, noch staat het toe om
een verbinding te maken met een lokale mbox
of Maildir postbus. Het is mogelijk dat daarvoor een extra
daemon voor nodig is.Oudere versies van sendmail
hebben serieuze beveiligingslekken welke kunnen leiden tot een
situatie waarbij een aanvaller lokale of toegang van afstand
tot de machine kan verkrijgen. Draai een actuele versie om
deze problemen te voorkomen. Optioneel kan een alternatieve
MTA van de &os;
Portscollectie geïnstalleerd worden.Email en DNSHet Domein Naam Systeem (DNS) en de daemon named
spelen een grote rol in het bezorgen van email. Om
het mogelijk te maken email van de deze lokatie naar een andere
lokatie te bezorgen, zal de serverdaemon de andere lokatie
opzoeken in het DNS om zo de host te bepalen die de email voor
de bestemming in ontvangst zal nemen. Dit gebeurt ook als
email verzonden wordt vanaf een andere host naar de lokale
mailserver.MX recordDNS is verantwoordelijk voor het koppelen
van hostnamen aan IP-adressen, en voor het opslaan van
specifieke informatie voor het bezorgen van mail, bekend als
MX-regels. De MX-regel (Mail eXchanger) specificeert welke
host(s) mail zullen ontvangen voor een specifiek domein. Als er
geen MX-regel is voor deze hostnaam of dit domein, dan zal de
mail direct bij de host worden afgeleverd, mits er een A-regel
is die deze hostnaam aan dit IP-adres koppelt.De MX-regels van een willekeurig domein kunnen worden
bekeken door gebruik te maken van het commando &man.host.1;,
zoals te zien is in het onderstaande voorbeeld:&prompt.user; host -t mx FreeBSD.org
FreeBSD.org mail is handled (pri=10) by mx1.FreeBSD.orgMail ontvangenemailontvangenDe mailhost verzorgt het ontvangen van mail voor het domein.
Deze zal alle mail verzonden aan het domein verzamelen en deze
afhankelijk van de configuratie opslaan in òf
mbox (de standaardmanier om mail op te slaan)
òf in Maildir-formaat. Wanneer de mail eenmaal is
opgeslagen, kan het òf lokaal gelezen worden door
toepassingen als &man.mail.1; of mutt
, of op afstand bekeken en verzameld worden middels protocollen
als POP of IMAP.
Dit betekent, dat als mail alleen lokaal wordt gelezen, er geen
POP- of IMAP-server
geïnstalleerd hoeft te worden.Op afstand toegang tot de postbus krijgen door gebruik te
maken van POP en IMAP
POPIMAPOm op afstand toegang te krijgen tot postbussen is het nodig toegang
te hebben tot een POP- of IMAP
-server. Deze protocollen stellen gebruikers in
staat hun postbus gemakkelijk op afstand te benaderen. Hoewel
zowel POP als IMAP
gebruikers in staat stellen op afstand een postbus te bereiken
, biedt IMAP veel voordelen, waaronder:
IMAP kan berichten zowel op de
server op afstand opslaan als ze ophalen.IMAP ondersteunt gelijktijdig
actualiseren.IMAP kan uitstekend worden gebruikt
over langzame verbindingen omdat het gebruikers in staat
stelt de structuur van berichten te bekijken zonder deze
binnen te halen; het kan ook worden gebruikt om te zoeken
op de server om zo de gegevensoverdracht tussen client en
server te minimaliseren.Om een POP- of IMAP-
server te installeren, zijn de volgende stappen nodig:Kies een IMAP- of POP
-server die het beste aan de eisen voldoet.
De volgende POP- en IMAP
-servers zijn zeer bekend en zijn goede
voorbeelden:qpopper;teapop;imap-uw;courier-imap;Installeer de gewenste POP- of
IMAP-daemon vanuit de Portscollectie.
Wijzig indien nodig /etc/inetd.conf
om de POP- of IMAP
- server te laden.Let er wel op dat zowel POP en
IMAP informatie, waaronder gegevens over
gebruikersnaam en wachtwoord, onversleuteld versturen. Dit
betekent, dat wanneer het gewenst is dat de uitwisseling van
gegevens over deze protocollen versleuteld is, het
verstandig is om te overwegen de sessies over &man.ssh.1;
te tunnelen. Het tunnelen van sessies wordt beschreven in
.Toegang tot lokale postbussenPostbussen kunnen lokaal benaderd worden door direct op de
server waarop de postbus wordt bewaard MUAs
te gebruiken. Dit kan gedaan worden door programma's zoals
mutt of &man.mail.1; te gebruiken.
De mailhostmailhostDe mailhost is de naam van de server welke verantwoordelijk
is voor het afleveren en ontvangen van mail voor de server en
mogelijk voor het netwerk.ChristopherShumwayBijgedragen door sendmail instellensendmail&man.sendmail.8; is de standaard Mail Transfer Agent (MTA) in
&os;. sendmail's taak is het
accepteren van mail van gebruikersprogramma's (MUA
) en deze te bezorgen bij de juiste mailer zoals
gedefinieerd in het betreffende configuratiebestand.
sendmail kan ook netwerkverbindingen
accepteren en mail in lokale postbussen afleveren of bezorgen
bij een ander programma.sendmail gebruikt de volgende
configuratiebestanden:/etc/mail/access/etc/mail/aliases/etc/mail/local-host-names/etc/mail/mailer.conf/etc/mail/mailertable/etc/mail/sendmail.cf/etc/mail/virtusertableBestandsnaamFunctie/etc/mail/accessbestand met de toegangsdatabase van
sendmail/etc/mail/aliasesAliases voor postbussen/etc/mail/local-host-namesLijst van servers waarvoor sendmail
mail accepteert/etc/mail/mailer.confConfiguratie voor het mailerprogramma/etc/mail/mailertableAflevertabel voor de mailer/etc/mail/sendmail.cfHoofdconfiguratiebestand van sendmail
/etc/mail/virtusertableTabellen voor virtuele gebruikers en domeinen/etc/mail/accessDe toegangsdatabase definieert welke host(s) of IP-adressen
toegang hebben tot de lokale mailserver en wat voor soort toegang
ze hebben. Hosts kunnen in de lijst als ,
, of staan, of
worden doorgevoerd naar de foutafhandelingsprocedure van
sendmail met een bepaalde mailerfout.
Hosts welke vermeld staan als , wat de
standaard is, kunnen mail versturen naar deze host zolang de
eindbestemming van de mail de lokale machine is. Hosts welke
vermeld staan als worden voor alle
verbindingen geweigerd. Hosts met een
vermelding wordt toegestaan om via deze server mail naar elke
bestemming te sturen.Configureren van de sendmail
toegangsdatabasecyberspammer.com 550 We accepteren geen mail van spammers
FREE.STEALTH.MAILER@ 550 We accepteren geen mail van spammers
another.source.of.spam REJECT
okay.cyberspammer.com OK
128.32 RELAYIn dit voorbeeld staan vijf vermeldingen. Mailafzenders die
overeenkomen met de linkerzijde van de tabel worden beïnvloed
door de actie die vermeld staan aan de rechterzijde van de tabel.
De eerste twee voorbeelden geven een foutcode af aan de
foutafhandelingsroutine van sendmail.
Het bericht wordt bij de externe host bekend gemaakt wanneer een
mail voldoet aan de linkerzijde van de tabel. De volgende regel
weigert mail van een specifieke host op het Internet,
another.source.of.spam. De volgende regel accepteert
mailverbindingen van een host
okay.cyberspammer.com, welke nauwkeuriger is dan de
regel met cyberspammer.com
erboven. Specifiekere regels vervangen minder specifieke. De
laatste regel staat het doorsturen van elektronische mail toe
vanaf hosts waarvan de IP-adressen beginnen met 128.32
. Deze hosts zijn dan in staat om via deze mailserver
naar een andere bestemming mail te versturen.Wanneer dit bestand is bijgewerkt, dient make
in /etc/mail/ te gedraaid te
worden om de database bij te werken./etc/mail/aliasesDe aliasdatabase bevat een lijst met virtuele postbussen die
verwijzen naar andere gebruiker(s), bestand(en), programma('s) of
andere aliassen. Hier zijn een paar voorbeelden die gebruikt
kunnen worden in /etc/mail/aliases:Mailaliassenroot: localuser
ftp-bugs: joe,eric,paul
bit.bucket: /dev/null
procmail: "|/usr/local/bin/procmail"Het bestandsformaat is simpel; de postbusnaam aan de
linkerzijde van de dubbele punt wordt verder uitgewerkt naar de
doel(en) aan de rechterzijde. Het eerste voorbeeld breidt de
postbus van root uit naar de postbus
localuser, welke dan vervolgens weer wordt
opgezocht in de aliasdatabase. Als er geen verdere overeenkomst
wordt gevonden, dan wordt het bericht afgeleverd bij de lokale
gebruiker localuser. Het volgende
voorbeeld toont een mailinglijst. Mail voor de postbus
ftp-bugs wordt doorverwezen naar de drie
lokale postbussen joe, eric
en paul. Merk op dat een
externe postbus gespecificeerd kan worden als
user@example.com. Het volgende voorbeeld toont het
schrijven van mail naar een bestand, in dit geval
/dev/null. Het laatste voorbeeld toont het sturen
van mail naar een programma, in dit geval wordt het mailbericht
doorgestuurd naar de standaard invoer van
/usr/local/bin/procmail via een &unix; pijp.Wanneer dit bestand is bijgewerkt, dient make
in /etc/mail/ gedraaid te worden
om de database bij te werken./etc/mail/local-host-namesDit is een lijst van hostnamen die &man.sendmail.8; moet
accepteren als de lokale hostnaam. Hierin dienen alle hostnamen
geplaatst te worden waarvoor sendmail
mail moet ontvangen. Als deze mailserver mail moet ontvangen
voor het domein example.com
en de hostnaam is mail.example.com,
dan ziet local-host-names er ongeveer zo
uit:example.com
mail.example.comWanneer dit bestand is bijgewerkt, dient &man.sendmail.8;
opnieuw gestart te worden zodat het de veranderingen kan lezen.
/etc/mail/sendmail.cfHet hoofdinstellingenbestand van sendmail
, sendmail.cf controleert het
algemene gedrag van sendmail,
inclusief alles van het herschrijven van emailadressen tot het
sturen van weigeringsberichten naar externe mailservers. Met
zo'n diverse rol is dit instellingenbestand redelijk complex en
vallen de details buiten het bereik van dit hoofdstuk. Gelukkig
hoeft dit bestand maar zelden aangepast te worden voor standaard
mailservers.Het hoofdinstellingenbestand van sendmail
kan gebouwd worden met &man.m4.1; macro's die het
gedrag en de mogelijkheden van sendmail
specificeren. Lees
/usr/src/contrib/sendmail/cf/README voor meer
details.Wanneer dit bestand is bijgewerkt, dient &man.sendmail.8;
opnieuw gestart te worden om de wijzigingen door te voeren.
/etc/mail/virtusertableDe virtusertable verbindt mailadressen
voor virtuele domeinen en postbussen met echte postbussen. Deze
postbussen kunnen lokaal, op afstand, aliassen gedefinieerd in
/etc/mail/aliases, of bestanden zijn.
Voorbeeld van een mailtabel voor een virtueel domeinroot@example.com root
postmaster@example.com postmaster@noc.example.net
@example.com joeIn het voorbeeld hierboven staat een tabel voor een domein
example.com. Dit bestand
wordt van boven naar beneden verwerkt, en de eerste
overeenkomende regel wordt gebruikt. De eerste regel verbindt
root@example.com met de lokale postbus
root. De volgende regel verbindt
postmaster@example.com met de postbus
postmaster op de host
noc.example.net. Als geen van de vorige regels van
example.com overeenkomen, zal
de laatste regel gebruikt worden, die alle andere post
geadresseerd aan iemand bij
example.com opvangt en naar de lokale postbus
joe stuurt.AndrewBoothmanGeschreven door GregoryNeil ShapiroInformatie genomen uit emails geschreven door De Mail Transfer Agent vervangenemailmta veranderenZoals eerder vermeld wordt &os; geleverd met
sendmail voorgeïnstalleerd als MTA (Mail
Transfer Agent). Daarom regelt het standaard uitgaande en
binnenkomende mail.In sommige gevallen willen systeembeheerders wegens
uiteenlopende redenen hun MTA vervangen. Deze redenen
variëren van het uitproberen van een andere MTA tot het
installeren van een bepaalde functionaliteit of pakket dat
afhankelijk is van een andere MTA.Een nieuwe MTA installerenEr is een waaier van MTA's beschikbaar. Een goed startpunt
is de &os; Ports Collectie waar er
veel gevonden kunnen worden. Het is natuurlijk mogelijk iedere
MTA te gebruiken vanaf iedere locatie, zolang het draait op &os;
.Begin met het installeren van de nieuwe MTA. Als de MTA
eenmaal geïnstalleerd is wordt er de kans gegeven te
beslissen of de nieuwe MTA echt voldoet aan de eisen, en is het
mogelijk de nieuwe software te configureren voordat het het werk
van sendmail overneemt. Bevestig
voordat de MTA geïnstalleerd wordt dat de nieuwe software
geen poging onderneemt systeemtoepassingen zoals
/usr/bin/sendmail te overschrijven, anders wordt
de nieuwe software onmiddellijk in gebruik genomen voordat het
is geconfigureerd.Neem de documentatie van de gekozen MTA door voor meer
informatie over het configureren van de software.sendmail uitschakelenAls sendmail's uitgaande
emaildienst uitgeschakeld wordt, is het belangrijk dat het
vervangen wordt door een alternatief systeem. Als ervoor
gekozen wordt dit niet te doen, zullen
systeemfunctionaliteiten zoals &man.periodic.8; niet in staat
zijn hun resultaten te bezorgen per email, zoals ze normaliter
verwachten te kunnen doen. Vele delen van het systeem zullen
verwachten een werkend systeem aan te treffen dat compatibel
is met sendmail. Als toepassingen
binaries van sendmail blijven
gebruiken om mail te versturen nadat deze uitgeschakeld werden
, kan de mail in een inactieve sendmail
wachtrij geplaatst worden, en nooit bezorgd
worden.Om sendmail volledig uit te
schakelen, inclusief de uitgaande emaildienst, dientsendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"toegevoegd te worden aan /etc/rc.conf.
Als enkel sendmail's ingaande
emaildienst uitgeschakeld dient te worden, dientsendmail_enable="NO"toegevoegd te worden aan /etc/rc.conf.
Meer informatie over de opstartopties van
sendmail is beschikbaar in de hulppagina
&man.rc.sendmail.8;.De nieuwe MTA starten tijdens het opstartenDe nieuwe MTA kan gestart worden door deze instellingsregel
toe te voegen aan /etc/rc.conf, zoals het
volgende voorbeeld voor postfix:&prompt.root; echo 'postfix_enable=YES' >> /etc/rc.confDe MTA zal nu automatisch tijdens het opstarten worden
gestart.sendmail vervangen als de
standaard systeemmailerHet programma sendmail is zo
vanzelfsprekend als standaard software op &unix; systemen dat
sommige softwarepakketten ervan uitgaan dat
sendmail reeds geïnstalleerd en
geconfigureerd is. Daarom voorzien vele alternatieve MTA's in
compatibele implementaties van de opdrachtregelinterface van
sendmail; dit vergemakkelijkt het
gebruik van alternatieve MTA's als vervanging voor
sendmail.Bij het gebruiken van een alternatieve MTA moet men er zeker
van zijn dat software die probeert de standaardtoepassingen van
sendmail zoals
/usr/bin/sendmail te gebruiken, ook daadwerkelijk
de gekozen alternatieve mailer gebruikt. Gelukkig heeft &os;
hiervoor een systeem, &man.mailwrapper.8;, dat deze taak van de
systeembeheerder overneemt.Als sendmail werkt zoals
origineel geïnstalleerd, bevat
/etc/mail/mailer.conf bij benadering het volgende:
sendmail /usr/libexec/sendmail/sendmail
send-mail /usr/libexec/sendmail/sendmail
mailq /usr/libexec/sendmail/sendmail
newaliases /usr/libexec/sendmail/sendmail
hoststat /usr/libexec/sendmail/sendmail
purgestat /usr/libexec/sendmail/sendmailDit wil zeggen dat wanneer een van deze algemene opdrachten
(zoals sendmail zelf) uitgevoerd wordt, het
systeem in werkelijkheid een kopie van de mailwrapper genaamd
sendmail uitvoert, dat
mailer.conf controleert en
/usr/libexec/sendmail/sendmail uitvoert. Dit
systeem maakt het eenvoudiger te specificeren welke toepassingen
daadwerkelijk uitgevoerd worden wanneer deze standaard
sendmail functies aangeroepen worden.
Als men bijvoorbeeld wil dat
/usr/local/supermailer/bin/sendmail-compat uitgevoerd
wordt in plaats van sendmail, kan
men /etc/mail/mailer.conf als volgt
aanpassen:sendmail /usr/local/supermailer/bin/sendmail-compat
send-mail /usr/local/supermailer/bin/sendmail-compat
mailq /usr/local/supermailer/bin/mailq-compat
newaliases /usr/local/supermailer/bin/newaliases-compat
hoststat /usr/local/supermailer/bin/hoststat-compat
purgestat /usr/local/supermailer/bin/purgestat-compatAfwerkingWanneer alles correct geconfigureerd is, dienen ofwel alle
ongebruikte sendmail processen
gestopt te worden en de processen behorend aan de nieuwe
software gestart te worden, ofwel dient het systeem opnieuw
gestart te worden. Herstarten geeft ook de mogelijkheid te
controleren of de nieuwe MTA correct geconfigureerd is om
tijdens het opstartproces gestart te worden.Problemen oplossenemailproblemen oplossenWaarom is het nodig om de FQDN te gebruiken voor hosts
op de site?Het is waarschijnlijk dat de host zich in een ander
domein bevindt; bijvoorbeeld als het gewenst is om host
mompel in het domein bar.edu vanuit domein foo.bar.edu te bereiken, is het nodig
om er met de volledig gekwalificeerde domeinnaam naar te
verwijzen, mompel.bar.edu, in
plaats van slechts mompel.BINDTraditioneel werd dit door BSD BIND resolvers toegestaan
. De huidige versie van BIND die
met &os; wordt geleverd levert niet langer standaard
afkortingen voor onvolledig gekwalificeerde domeinnamen
anders dan het huidige domein. Dus moet een
ongekwalificeerde host mompel òf als
mompel.foo.bar.edu gevonden
worden, òf wordt er naar gezocht in het root domein.
Dit verschilt van het vorige gedrag, waar de zoektocht
doorging over mompel.bar.edu
, en bar.edu.
Zie RFC 1535 voor de redenen waarom dit als een slechte
gewoonte en zelfs als beveiligingslek werd beschouwd.Als een goede tussenoplossing kan deze regel:
search foo.bar.edu bar.edu
in plaats van het voorgaande:
domain foo.bar.edu
in /etc/resolv.conf geplaatst worden.
Ben er echter zeker van dat de zoekvolgorde niet verder gaat
dan de grens tussen lokale en publieke regelgeving
, zoals RFC 1535 het noemt.MX-regelsendmail zegt mail
loops back to myselfDit wordt in de FAQ van sendmail
als volgt beantwoord:Deze foutmeldingen verschijnen:
553 MX list for domain.net points back to relay.domain.net
554 <user@domain.net>... Local configuration error
Hoe kan dit probleem worden opgelost?
Er is gevraagd om mail van het domein (bijvoorbeeld domain.net) naar een
specifieke host door te sturen (in dit geval relay.domain.net) door
gebruik te maken van een MX-regel, maar de machine die het door moet
sturen herkent zichzelf niet als domain.net. Voeg domain.net toe aan
/etc/mail/local-host-names [bekend als /etc/sendmail.cw voor versies
eerder dan 8.10] (als FEATURE(use_cw_file) gebruikt wordt) of voeg
Cw domain.net toe aan /etc/mail/sendmail.cf.
De FAQ van sendmail is te
vinden op
en wordt aangeraden om te lezen indien enig tweaken
van de mailinstallatie gewenst is.PPPHoe kan een mailserver op een inbel-PPP-host gedraaid
worden?Het is gewenst om een &os;-computer in een LAN met het
Internet te verbinden. De &os;-computer zal en mail-gateway
voor het LAN zijn. De PPP-verbinding is niet toegewijd.
UUCPMX-regelEr zijn minstens twee manieren om dit te doen.
Eén manier is om UUCP te gebruiken.Een andere manier is ervoor te zorgen dat een server die
altijd met het Internet verbonden is secundaire MX-diensten
voor het domein biedt. Als het domein bijvoorbeeld example.com is en de
internetprovider example.net
heeft ingesteld om secundaire MX-diensten voor het
domein te bieden:example.com. MX 10 example.com.
MX 20 example.net.Er dient slechts één host als de
uiteindelijke ontvanger gespecificeerd te worden (voeg
CW example.com toe aan
/etc/mail/sendmail.cf op example.com>).Wanneer de verzendende sendmail
probeert om mail af te leveren zal het proberen met example.com te verbinden via de
modemverbinding. Waarschijnlijk zal dit een time-out geven
omdat de computer niet online is. Het programma
sendmail zal het automatisch aan
de secundaire MX-site, de internetprovider (example.net) afleveren. De
secundaire MX zal dan periodiek proberen om een verbinding te
maken met de computer en de mail aan de primaire MX-host
leveren (example.com).
Het kan wenselijk zijn om iets als het onderstaande als
inlogscript te gebruiken:#!/bin/sh
# Zet mij in /usr/local/bin/pppmyisp
( sleep 60 ; /usr/sbin/sendmail -q ) &
/usr/sbin/ppp -direct pppmyispIndien er een apart inlogscript voor een gebruiker wordt
aangemaakt, kan sendmail -qRexample.com
gebruikt worden in plaats van het bovenstaande script. Dit
zorgt ervoor dat alle mail in de mailrij voor example.com onmiddellijk
verwerkt wordt.Een verdere verfijning van de situatie is deze:Bericht gestolen van de &a.isp;.> we bieden de secundaire MX voor een klant.
> De klant maakt automatisch verschillende keren per dag een verbinding
> met onze diensten om de mailberichten naar zijn primaire MX te
> sturen (we bellen zijn site niet indien er een mail voor zijn
> domein arriveert). Onze sendmail verstuurt de mailrij om de 30
> minuten. Op het moment moet de klant 30 minuten online blijven om
> er zeker van te zijn dat alle mail naar de primaire MX is gegaan.
>
> Is er een commando dat sendmail er toe aanzet om alle mailberichten
> nu te versturen? De gebruiker heeft uiteraard geen root-rechten op
> onze machine.
In de sectie privacy flags van sendmail.cf staat een
definitie Opgoaway,restrictqrun
Verwijder restrictqrun om niet-root-gebruikers toe te staan te beginnen
de rij te verwerken. Het kan ook wenselijk zijn om de MXs opnieuw te
rangschikken. Wij zijn zo de eerste MX voor onze klanten, en we hebben
dit gedefinieerd:
# Als we de beste MX voor een host zijn, probeer direct in plaats van
# een lokale configuratiefout te genereren.
OwTrue
Op deze manier zal een site op afstand rechtstreeks hier afleveren,
zonder de verbinding van de klant te proberen. Vervolgens wordt er naar
de klant verstuurd. Dit werkt alleen voor hosts, dus
dient de klant hun mailcomputer customer.com te noemen en
hostname.customer.com in de DNS de plaatsen. Plaats een
A-regel in de DNS voor customer.com.Waarom blijven er fouten als Relaying Denied
verchijnen wanneer er mail van andere hosts
wordt verstuurd?In standaard &os;-installaties is sendmail
geconfigureerd om alleen mail te versturen
van de host waarop het draait. Als bijvoorbeeld een
POP-server beschikbaar is, kunnen
gebruikers mail controleren vanuit school, werk, of andere
lokaties op afstand, maar zullen ze nog steeds niet in staat
zijn om uitgaande emails van lokaties van buitenaf te
versturen. Gewoonlijk zal er na enkele ogenblikken na de
poging een email van MAILER-DEAMON
worden verzonden met een foutbericht
5.7 Relaying Denied.Er zijn verschillende manieren om dit te omzeilen. De
oplossing die het meest voor de hand ligt, is om het adres
van de internetprovider in een bestand relay-domains op
/etc/mail/relay-domains te zetten.
Een snelle manier om dit te doen is:&prompt.root; echo "your.isp.example.com" > /etc/mail/relay-domainsNadat dit bestand is aangemaakt of bewerkt dient
sendmail opnieuw gestart te
worden. Dit werkt prima indien u een serverbeheerder bent
en het niet wenselijk is om mail lokaal te verzenden, of
indien het gewenst is om een point-en-click client/systeem
op een andere machine of zelfs bij een andere
internetprovider te gebruiken. Het is ook erg bruikbaar
indien er slechts enkele email-accounts zijn aangemaakt.
Als er een groot aantal adressen dient te worden toegevoegd,
kan dit bestand in worden geopend en de domeinen worden
toegevoegd, één per regel:your.isp.example.com
other.isp.example.net
users-isp.example.org
www.example.orgNu zal het verzenden van elke mail door dit systeem,
verstuurd door elke host in deze lijst, lukken (aangenomen
dat de gebruiker een account op het systeem heeft). Dit is
een aardige manier om gebruikers toe te staan op afstand mail
vanaf het systeem te verzenden zonder dat mensen wordt
toegestaan om spam vanaf het systeem te verzenden.Geavanceerde onderwerpenDe volgende sectie behandelt meer ervaren onderwerpen zoals
mailinstellingen en het instellen van mail voor het gehele domein.
BasisinstellingenemailinstellingenHet verzenden van email naar externe hosts zou onmiddellijk
moeten werken, zolang /etc/resolv.conf is
aangemaakt of zolang er een nameserver wordt gedraaid. Indien
het gewenst is dat mail voor de host aan de MTA (bijvoorbeeld
sendmail) geleverd dient te worden op
de &os;-host, zijn er twee methoden:Draai een eigen nameserver op een eigen domein,
bijvoorbeeld FreeBSD.orgZorg ervoor dat mail direct aan de host geleverd wordt.
Dit wordt gedaan door mail direct aan de huidige DNS-naam
voor de machine, bijvoorbeeld
example.FreeBSD.org, te leveren.SMTPOnafhankelijk van de hierboven gekozen methode, dient de
host, om er direct mail aan geleverd te krijgen, een permanent
statisch IP-adres te hebben (niet een dynamisch adres, zoals dat
bij de meeste PPP-inbelverbindingen het geval is). Indien er
een firewall actief is, dient het SMTP-verkeer naar de host door
te geven. Indien het gewenst is dat de host direct mail
ontvangt, dient één van de twee onderstaande
dingen geregeld te zijn:MX-regelZorg ervoor dat de (laagstgenummerde) MX-regel in het
DNS naar het IP-adres van de host wijst.Zorg ervoor dat er geen MX-regel in het DNS is voor de
host.Met elk van de bovenstaanden kan mail direct op de host
ontvangen worden.Probeer dit:&prompt.root; hostname
example.FreeBSD.org
&prompt.root; host example.FreeBSD.org
example.FreeBSD.org has address 204.216.27.XXIndien dit verschijnt, zal mail die direct naar yourlogin@example.FreeBSD.org zonder
problemen moeten werken (aangenomen dat sendmail
correct werkt op
example.FreeBSD.org).Indien in plaats daarvan zoiets als dit verschijnt:&prompt.root; host example.FreeBSD.org
example.FreeBSD.org has address 204.216.27.XX
example.FreeBSD.org mail is handled (pri=10) by hub.FreeBSD.orgzal alle mail die naar de host (
example.FreeBSD.org) verzameld worden op hub
onder dezelfde gebruikersnaam in plaats van direct
naar de host verstuurd te worden.Bovenstaande informatie wordt door de DNS-server afgehandeld
. De DNS-regel die informatie over het routen van mail bevat is
de Mail eXchange regel
. Indien er geen MX-regel is, zal mail direct aan de host
worden afgeleverd door middel van het IP-adres.De MX-regel voor freefall.FreeBSD.org
zag er eens als volgt uit:freefall MX 30 mail.crl.net
freefall MX 40 agora.rdrop.com
freefall MX 10 freefall.FreeBSD.org
freefall MX 20 who.cdrom.comTe zien is dat freefall vele MX-regels had.
Het laagste MX-getal hoort bij de host die de mail direct
ontvangt indien beschikbaar; indien het om een of andere reden
niet beschikbaar is, accepteren de anderen (soms
reserve-MXs genoemd) tijdelijk berichten en geven ze
die door wanneer een lager-genummerde host beschikbaar is, om
uiteindelijk aan de laagstgenummerde host af te leveren.Alternatieve MX-sites zouden andere Internetverbindingen dan
die van de host moeten hebben om het nuttigst te zijn. De
internetprovider of een andere vriendelijke site zouden geen
problemen moeten hebben met het leveren van deze dienst.Mail voor het domeinOm een mailhost (ook bekend als een
mailserver) te installeren, is het nodig om mail die verzonden
wordt naar de verschillende werkstations ernaar toe te leiden.
In principe dient alle mail voor elke hostnaam in het domein (in
dit geval *.FreeBSD.org) geclaimd
te worden en naar de mailserver omgeleid te worden zodat
gebruikers hun mail op de hoofdmailserver kunnen ontvangen.
DNSHet gemakkelijkste is het indien er een gebruikersaccount
met dezelfde gebruikersnaam op beide
machines bestaat. Hiervoor dient &man.adduser.8; gebruikt te
worden.De mailhost die het meest gebruikt zal worden is de
toegewezen mailuitwisselaar voor elk werkstation in het netwerk.
Dit wordt in de DNS-instellingen als volgt gedaan:example.FreeBSD.org A 204.216.27.XX ; werkstation
MX 10 hub.FreeBSD.org ; mailhostDit zal mail voor het werkstation naar de mailhost leiden
onafhankelijk van waar de A-regel naar toe wijst. De mail wordt
naar de MX-host verzonden.Om dit te doen is het nodig om een eigen DNS-server te
draaien. Neem, indien dit niet het geval is of het niet
mogelijk is om een eigen DNS-server te draaien, contact op met
degene die de DNS levert.De volgende informatie is nuttig indien email virtueel gehost
wordt. In dit voorbeeld wordt aangenomen dat er een klant is
met een eigen domein, in dit geval
customer1.org, en dat alle mail voor customer1.org naar de mailhost
mail.myhost.com verzonden dient te
worden. De regel in het DNS dient er als volgt uit te zien:
customer1.org MX 10 mail.myhost.comHet is niet nodig om een A-regel voor
customer1.org te hebben als
er voor dat domein alleen email afgehandeld dient te worden.
Let erop dat customer1.org
pingen niet werkt tenzij er een A-regel voor bestaat
.Als laatste dient sendmail op de
mailhost te weten voor welke domeinen en/of hostnamen het mail
dient te accepteren. Er bestaan enkele verschillende manieren
om dit te doen. Elk van de volgende manieren zal werken:Voeg de hosts toe aan het bestand
/etc/mail/local-host-names indien
FEATURE(use_cw_literal). Indien er een versie
van sendmail wordt gebruikt die
ouder is dan 8.10, is het te gebruiken bestand
/etc/sendmail.cw.Voeg een regel met Cwyour.host.com
toe aan /etc/sendmail.cf of aan
/etc/mail/sendmail.cf indien versie
8.10 of nieuwer van sendmail
wordt gebruikt.SMTP met UUCPDe instellingen van sendmail die
met &os; 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 &man.m4.1; preprocessing, waarbij het
eigenlijke instellen op een hoger abstractieniveau plaatsvindt.
De instellingenbestanden voor &man.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 &man.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:&prompt.root; cd /etc/mail
&prompt.root; make foo.cf
&prompt.root; cp foo.cf /etc/mail/sendmail.cfEen 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.UUCPDe 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.relayEen 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 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.&prompt.user; 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 . >
>^DBillMoranBijgedragen door Instellen om alleen te versturenEr zijn veel gevallen waarbij het gewenst is om enkel mail te
verzenden via een relay. Voorbeelden hiervan zijn:De computer is een desktop, maar het is gewenst om
programma's als &man.send-pr.1; te gebruiken. Hiervoor dient
de mailrelay van de internetprovider gebruikt te worden.
De computer is een server welke mail niet lokaal verwerkt,
maar alle mail voor verwerking doorstuurt.Zowat elke MTA kan deze specifieke taak
vervullen. Helaas kan het erg moeilijk zijn om een MTA
met alle mogelijkheden correct in te stellen om alleen
uitgaande mail te behandelen. Programma's als
sendmail en postfix
zijn hiervoor grotendeels overbodig.Ook kan het zijn dat de overeenkomst van een typisch
internetabonnement het draaien van een mail server
verbiedt.De gemakkelijkste manier om aan deze behoeften te voldoen is
door de port mail/ssmtp te
installeren. Voer als root de volgende
opdrachten uit:&prompt.root; cd /usr/ports/mail/ssmtp
&prompt.root; make install replace cleanEenmaal geïnstalleerd kan
mail/ssmtp door middel van het
vier-regelige bestand /usr/local/etc/ssmtp/ssmtp.conf
ingesteld worden:root=uwechteemail@example.com
mailhub=mail.example.com
rewriteDomain=example.com
hostname=_HOSTNAME_Let erop dat het echte emailadres voor root
gebruikt wordt. Vervang
mail.example.com door de uitgaande mail relay van de
internetprovider (ook wel de uitgaande mailserver
of SMTP-server genoemd).Let erop dat sendmail uitgeschakeld
wordt, inclusief de uitgaande maildienst. Raadpleeg voor details.mail/ssmtp heeft nog meer
mogelijkheden. Raadpleeg het voorbeeldinstelbestand
/usr/local/etc/ssmtp of de hulppagina van
ssmtp voor enkele voorbeelden en meer
informatie.Door ssmtp op deze manier in te
stellen kan alle software op de computer welke mail dient te
versturen correct functioneren, zonder dat het beleid van de
internetprovider geschonden wordt of dat de computer gekaapt kan
worden om spam mee te versturen.Mail gebruiken met een inbelverbindingIndien het IP-adres statisch is, is het niet nodig om de
standaardwaarden aan te passen. De toegewezen Internetnaam dient
als hostnaam gebruikt te worden waarna sendmail
de rest kan doen.Indien het IP-adres dynamisch is en er een inbelverbinding
naar het Internet gebruikt wordt, is de postbus waarschijnlijk op
de mailserver van de Internetprovider geplaatst. Stel dat het
domein van de Internetprovider
example.net is, dat de gebruikersnaam
gebruiker is, dat de machine
bsd.home is, en dat volgens de Internetprovider relay.example.net als mailrelay gebruikt
kan worden.Om mail van de postbus te ontvangen, dient er een
ontvangstagent geïnstalleerd te worden. Het gereedschap
fetchmail is een goede keuze omdat het
veel verschillende protocollen ondersteunt. Dit programma is als
pakket of vanuit de Portscollectie (
mail/fetchmail) beschikbaar.
Normaliter levert de Internetprovider POP.
Indien gebruikers-PPP gebruikt wordt, kan de
mail automatisch worden opgehaald wanneer er een verbinding met
Internet tot stand is gebracht door middel van de volgende regel
in /etc/ppp/ppp.linkup:MYADDR:
!bg su gebruiker -c fetchmailIndien sendmail gebruikt wordt (
zoals hieronder te zien is) om mail aan niet-lokale accounts af te
leveren, is het waarschijnlijk gewenst dat sendmail
de mailrij verwerkt zodra er een Internetverbinding
tot stand is gebracht. Hiervoor dient de volgende opdracht na de
fetchmail-opdracht in
/etc/ppp/ppp.linkup geplaatst te worden: !bg su gebruiker -c "sendmail -q"Aangenomen wordt dat er een account voor gebruiker
op bsd.home aanwezig is.
In de thuismap van gebruiker op bsd.home dient een bestand
.fetchmailrc aangemaakt te worden:poll example.net protocol pop3 fetchall pass MijnGeheimDit bestand dient alleen voor gebruiker
leesbaar te zijn aangezien het het wachtwoord MijnGeheim
bevat.Om mail met de correcte from:-header te
versturen, dient sendmail
gebruiker@example.net in plaats van
gebruiker@bsd.home te gebruiken. Het kan ook wenselijk
zijn om sendmail alle mail via relay.example.net te versturen, om sneller
mail te verzenden.Het volgende .mc zou voldoende moeten
zijn:VERSIONID(`bsd.home.mc version 1.0')
OSTYPE(bsd4.4)dnl
FEATURE(nouucp)dnl
MAILER(local)dnl
MAILER(smtp)dnl
Cwlocalhost
Cwbsd.home
MASQUERADE_AS(`example.net')dnl
FEATURE(allmasquerade)dnl
FEATURE(masquerade_envelope)dnl
FEATURE(nocanonify)dnl
FEATURE(nodns)dnl
define(`SMART_HOST', `relay.example.net')
Dmbsd.home
define(`confDOMAIN_NAME', `bsd.home')dnl
define(`confDELIVERY_MODE', `deferred')dnlIn de vorige sectie staan de details over het omzetten van een
.mc-bestand in bestand sendmail.cf
. Ook dient sendmail
herstart te worden na het wijzigen van sendmail.cf
.JamesGorhamGeschreven door SMTP-authenticatieHet hebben van SMTP-authenticatie op een
mailserver heeft een aantal voordelen. SMTP-
authenticatie kan een extra beveiligingslaag toevoegen aan
sendmail, en het geeft mobiele
gebruikers die van hosts wisselen de mogelijkheid om dezelfde
mailserver te gebruiken zonder dat ze telkens de instellingen van
hun mailclient moeten veranderen.Installeer security/cyrus-sasl2
vanuit de ports. Deze port is te vinden in
security/cyrus-sasl2. De
port security/cyrus-sasl2
ondersteund een aantal opties tijdens de compilatie. Voor de
SMTP-authenticatiemethode die hier gebruikt wordt, dient de
optie te zijn uitgezet.Voeg nadat security/cyrus-sasl2
is geïnstalleerd deze regel toe aan
/usr/local/lib/sasl2/Sendmail.conf:
pwcheck_method: saslauthdInstalleer vervolgens
security/cyrus-sasl2-saslauthd
, en voeg de volgende regel toe aan /etc/rc.conf
:saslauthd_enable="YES"en start vervolgens het saslauthd-daemon op:&prompt.root; /usr/local/etc/rc.d/saslauthd startDeze daemon fungeert als een onderhandelaar voor
sendmail die zich tegen de &os;
passwd-database authenticeert. Dit
bespaart de moeite van het opnieuw creëren van een nieuwe
verzameling gebruikersnamen en wachtwoorden voor elke
gebruiker die SMTP-authenticatie nodig
heeft, en het houdt de wachtwoorden voor het inloggen en de
mail hetzelfde.Voeg de volgende regels toe aan /etc/rc.conf
:SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL
SENDMAIL_LDFLAGS=-L/usr/local/lib
SENDMAIL_LDADD=-lsasl2Deze regels geven sendmail de
juiste instelopties om tijdens het compileren met cyrus-sal2 te linken. Zorg ervoor
dat cyrus-sasl2 is
geïnstalleerd voordat sendmail
wordt gehercompileerd.Hercompileer sendmail door de
volgende opdrachten uit te voeren:&prompt.root; cd /usr/src/lib/libsmutil
&prompt.root; make cleandir && make obj && make
&prompt.root; cd /usr/src/lib/libsm
&prompt.root; make cleandir && make obj && make
&prompt.root; cd /usr/src/usr.sbin/sendmail
&prompt.root; make cleandir && make obj && make && make installHet compileren van sendmail zou
geen problemen moeten geven indien /usr/src
niet veel veranderd is en dat de benodigde
gedeelde bibliotheken aanwezig zijn.Nadat sendmail is gecompileerd
en opnieuw is gecompileerd, dient
/etc/mail/freebsd.mc (of het plaatselijke
.mc-bestand) gewijzigd te worden. Veel
beheerders kiezen ervoor om de uitvoer van &man.hostname.1;
als .mc-bestandsnaam te gebruiken vanwege
de uniciteit. Voeg deze regels toe:dnl set SASL options
TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnlDeze opties stellen de verschillende beschikbare methoden
voor sendmail in om gebruikers te
authenticeren. Gebruik de bijgeleverde documentatie indien
een andere methode dan pwcheck
gewenst is.Voer als laatste &man.make.1; in /etc/mail
uit. Hierdoor wordt het nieuwe .mc
-bestand uitgevoerd en wordt een bestand
freebsd.cf (of de plaatselijke variant ervan)
aangemaakt. Voer hierna de opdracht make install
restart uit, wat het bestand naar
sendmail.cf kopieert en sendmail
op de juiste manier herstart. In
/etc/mail/Makefile staat meer informatie over dit
proces.Indien alles goed is gegaan, moet het mogelijk zijn om de
inloginformatie in de mailclient in te voeren en een testbericht
te versturen. Zet voor verdere onderzoekingen de van sendmail op 13 en houdt
/var/log/maillog in de gaten voor
foutmeldingen.Refereer naar de sendmail-pagina
betreffende
SMTP-authenticatie voor meer
informatie.MarcSilverBijgedragen door Mail User AgentsMail User AgentsEen mail user agent (MUA) is een toepassing
die wordt gebruikt om email te versturen en te ontvangen.
Bovendien, omdat email evolueert en steeds
complexer wordt, worden MUAs steeds krachtiger
in de manier waarop ze met email omgaan; dit biedt gebruikers
verhoogde functionaliteit en flexibiliteit. &os; ondersteunt
verschillende mail user agents die allemaal eenvoudig
geïnstalleerd kunnen worden door de
&os; Ports Collectie te gebruiken. Gebruikers kunnen
kiezen tussen grafische emailclients zoals evolution
of balsa, op de console
gebaseerde clients zoals mutt,
pine of mail, of de
webinterface die door sommige grote organisaties wordt gebruikt.
mail&man.mail.1; is de standaard mail user agent
(MUA) in &os;. Het is een consolegebaseerde
MUA die alle basisfunctionaliteit biedt die
nodig is om tekstgebaseerde email te verzenden en te ontvangen,
maar het is beperkt in de mogelijkheden om met bijlagen om te
gaan en het ondersteunt alleen plaatselijke postbussen.Hoewel mail van huis uit geen
ondersteuning voor POP- of IMAP
-servers biedt, kunnen deze postbussen gedownload
worden naar een lokaal mbox-bestand door
een toepassing als fetchmail te
gebruiken, welke later in dit hoofdstuk behandeld wordt ().Om email te versturen en te ontvangen, is het voldoende om
de opdracht mail te geven zoals in het
volgende voorbeeld:&prompt.user; mailDe inhoud van de gebruikerspostbus in /var/mail wordt automatisch gelezen
door het programma mail. Indien de postbus
leeg is, eindigt het programma het een melding dat er geen mail
gevonden kon worden. Wanneer de postbus is gelezen, wordt de
applicatie-interface gestart, en wordt er een berichtenlijst
weergegeven. Berichten worden automatisch genummerd, zoals in
het volgende voorbeeld te zien is:Mail version 8.1 6/6/93. Type ? for help.
"/var/mail/marcs": 3 messages 3 new
>N 1 root@localhost Mon Mar 8 14:05 14/510 "test"
N 2 root@localhost Mon Mar 8 14:05 14/509 "user account"
N 3 root@localhost Mon Mar 8 14:05 14/509 "sample"Berichten kunnen nu worden gelezen door middel van het
commando t van mail, gevolgd
door het gewenste berichtnummer. In dit voorbeeld wordt de
eerste email gelezen:& t 1
Message 1:
From root@localhost Mon Mar 8 14:05:52 2004
X-Original-To: marcs@localhost
Delivered-To: marcs@localhost
To: marcs@localhost
Subject: test
Date: Mon, 8 Mar 2004 14:05:52 +0200 (SAST)
From: root@localhost (Charlie Root)
This is a test message, please reply if you receive it.Zoals in bovenstaand voorbeeld te zien is, zorgt de toets
t ervoor dat het bericht met volledige headers
wordt getoond. Om de berichtenlijst nogmaals weer te geven,
dient de toets h gebruikt te worden.Er kan met mail op een email gereageerd
worden, door gebruik te maken één van de toetsen
R of r. De toets
R vertelt mail dat er alleen
aan de verzender van het bericht geantwoord dient te worden,
terwijl de toets r niet alleen aan de verzender
antwoordt, maar ook aan andere ontvangers van het bericht. Het
is ook mogelijk om achter deze commando's het berichtnummer te
plaatsen waarop gereageerd dient te worden. Nadat dit gedaan is
, dient het antwoord gegeven te worden, en dient het einde van
het bericht aangegeven te worden met een enkele
. op een nieuwe regel. Een voorbeeld staat
hieronder:& R 1
To: root@localhost
Subject: Re: test
Thank you, I did get your email.
.
EOTOm een nieuwe email te verzenden, dient de toets
m gebruikt te worden, gevolgd door het adres
van de ontvanger. Er kunnen meerdere ontvangers gespecificeerd
worden door ze met een , te scheiden. Hierna
kan het onderwerp van het bericht worden gegeven, gevolgd door
de inhoud van het bericht. Het einde van het bericht dient te
worden aangegeven door een enkele . op een
nieuwe regel te plaatsen.& mail root@localhost
Subject: I mastered mail
Now I can send and receive email using mail ... :)
.
EOTBinnen het programma mail kan op elk
moment de opdracht ? gebruikt worden om hulp
weer te geven, hiervoor kan ook de hulppagina &man.mail.1;
worden geraadpleegd.Zoals eerder is aangegeven, is het programma &man.mail.1;
van origine niet ontworpen om met bijlagen om te gaan, dus
behandelt het deze slecht. Nieuwere MUAs
zoals mutt gaan veel intelligenter
met bijlagen om. Maar indien het programma mail
nog steeds geprefereerd wordt, kan de port
converters/mpack van
aanzienlijk nut zijn.muttmutt is een kleine doch zeer
krachtige mail user agent, met uitstekende mogelijkheden,
waaronder:De mogelijkheid om berichten te threaden;PGP-ondersteuning voor het digitaal ondertekenen en
versleutelen van email;MIME-ondersteuning;Maildir-ondersteuning;Erg goed aan te passen.Al deze eigenschappen zorgen ervoor dat mutt
een van de meest geavanceerde beschikbare mail
user agents is. Op
staat meer informatie.De stabiele versie van mutt kan
geïnstalleerd worden door de port mail/mutt te gebruiken, terwijl de
huidige ontwikkelaarsversie geïnstalleerd kan worden via de
port mail/mutt-devel. Nadat
de port is geïnstalleerd, kan
mutt gestart worden met het volgende
commando:&prompt.user; muttmutt zal automatisch de inhoud
van de gebruikerspostbus in /var/mail lezen en de inhoud
weergeven indien van toepassing. Indien er geen mails gevonden
zijn in de gebruikerspostbus, zal mutt
wachten voor opdrachten van de gebruiker. Het
onderstaande voorbeeld laat zien hoe mutt
een lijst berichten weergeeft:Om een email te lezen is het voldoende om het met de
cursortoetsen te selecteren, en Enter aan te
slaan. Een voorbeeld waarbij mutt
email laat zien staat hieronder::Net zoals het commando &man.mail.1; staat mutt
gebruikers toe om alleen de afzender alsook alle
ontvangers te beantwoorden. Om alleen de afzender van de email
te antwoorden, wordt de toets r gebruikt. Om
aan een groep te antwoorden, welke aan zowel de originele
afzender als aan alle berichtontvangers wordt gestuurd, wordt de
toets g gebruikt.mutt maakt gebruikt van het
programma &man.vi.1; als tekstverwerker voor het aanmaken en
beantwoorden van emails. De gebruiker kan dit aanpassen door
een eigen .muttrc aan te maken in hun
thuismap en de variabele editor of de
omgevingsvariabele EDITOR aan te passen. Zie
voor meer
informatie over het instellen van
mutt.Voor het opstellen van een nieuw mailbericht wordt de toets
m gebruikt. Nadat er een geldig bericht is
gegeven, start mutt &man.vi.1; op en
kan de mail geschreven worden. Nadat de inhoud van de mail is
geschreven, zal mutt nadat
vi verlaten is, zichzelf hervatten en een
overzichtsscherm van de te verzenden mail afbeelden. Om de mail
te versturen wordt de toets y gebruikt. Een
voorbeeld van het overzichtsscherm is hieronder te zien:mutt bevat ook uitgebreide hulp,
welke in de meeste menu's geactiveerd kan worden door de toets
? aan te slaan. De bovenste regel geeft ook
de relevante toetsen aan.pinepine richt zich op de beginnende
gebruiker, maar bevat ook geavanceerde mogelijkheden.Er zijn in het verleden verschillende kwetsbaarheden voor
pine ontdekt, welke aanvallers op
afstand in staat stelden om willekeurige code als gebruikers
op het lokale systeem uit te voeren, door een speciaal
voorbereide email te versturen. Alle
bekende problemen van dit type zijn
gerepareerd, maar de code van pine
is op een zeer onveilige manier geschreven en de
beveiligingsofficier van &os; gelooft dat het waarschijnlijk
is dat er nog meer onontdekte kwetsbaarheden zijn. Installeer
pine op eigen risico.De huidige versie van pine kan
door middel van de port
mail/pine4
geïnstalleerd worden. Wanneer de port geïnstalleerd
is, kan pine met het volgende
commando gestart worden:&prompt.user; pineDe eerste keer dat pine wordt
gedraaid geeft het een welkomstpagina met een korte introductie
weer, alsmede een verzoek van het ontwikkelteam van
pine om een anoniem emailbericht te
versturen wat ze in staat stelt om te beoordelen hoeveel
gebruikers hun client gebruiken. Druk op Enter
om dit anonieme bericht te versturen, of druk op
E om het welkomstscherm te verlaten zonder een
anoniem bericht te versturen. Een voorbeeld van het
welkomstscherm is hieronder te zien:Vervolgens wordt het hoofdmenu getoond, waarin gemakkelijk
met de cursortoetsen kan worden genavigeerd. Dit hoofdmenu
biedt afkortingen voor het schrijven van nieuwe mail, het
doorbladeren van mailmappen, en zelfs het beheren van het
adresboek. Onder het hoofdmenu worden relevante
toetscombinaties voor de huidige taak getoond.De standaardmap die door pine
wordt geopend is de inbox
. Gebruik de toets I om de berichtenindex te
zien, of selecteer de optie MESSAGE
INDEX zoals hieronder te zien is:De berichtenindex geeft de berichten in de huidige map weer,
en kan met de cursortoetsen worden genavigeerd. Gemarkeerde
berichten kunnen worden gelezen door op Enter
te drukken.In onderstaand screenshot wordt een voorbeeldbericht door
pine weergegeven. Toetsencombinaties
worden ter referentie aan de onderkant van het scherm
weergegeven. Een voorbeeld van een van deze combinaties is de
toets r, welke de MUA
vertelt op het huidige bericht te antwoorden.Voor het beantwoorden van een bericht wordt in
pine gebruikt gemaakt van de
tekstverwerker pico, welke standaard
bij pine wordt geïnstalleerd.
Het programma pico maakt het
gemakkelijk om in het bericht te navigeren en is meer
vergevingsgezind voor nieuwe gebruikers dan &man.vi.1; of
&man.mail.1;. Wanneer het antwoord voltooid is, kan het bericht
worden verzonden door CtrlX te
gebruiken. Het programma pine zal
om bevestiging vragen.Het programma pine kan worden
aangepast door de optie SETUP van het
hoofdmenu te gebruiken. Raadpleeg voor meer
informatie.MarcSilverBijgedragen door fetchmail gebruikenfetchmailfetchmail is een volwaardige
client voor IMAP en POP
welke gebruikers in staat stelt om automatisch mail van
IMAP- en POP-servers op afstand
naar plaatselijke postbussen te downloaden; daar kan het
gemakkelijker worden benaderd. fetchmail
kan met de port mail/fetchmail worden
geïnstalleerd, en biedt verschillende mogelijkheden,
waaronder:Ondersteuning voor POP3,
APOP, KPOP,
IMAP, ETRN, en
ODMR protocollen.De mogelijkheid om mail via SMTP door
te sturen, wat filteren, doorsturen, en aliassen toestaat om
normaal te functioneren.Kan in daemon-modus gedraaid worden om periodiek op
nieuwe berichten te controleren.Kan verschillende postbussen ophalen en ze afhankelijk
van de instellingen naar verschillende plaatselijke
gebruikers doorsturen.Hoewel het niet de bedoeling van dit document is om alle
mogelijkheden van fetchmail uit te
leggen, zullen sommige basismogelijkheden worden uitgelegd. Het
gereedschap fetchmail heeft een
instellingenbestand .fetchmailrc nodig om
correct te kunnen werken. Dit bestand bevat zowel informatie
over de server als de inloggegevens. Vanwege de gevoelige aard
van de inhoud van dit bestand is het aan te raden om het met het
volgende commando alleen leesbaar te maken voor de eigenaar ervan
:&prompt.user; chmod 600 .fetchmailrcHet volgende .fetchmailrc dient als een
voorbeeld voor het downloaden van een postbus van een enkele
gebruiker via POP. Het vertelt
fetchmail om met example.com te verbinden als gebruiker
joesoap met wachtwoord XXX
. Dit voorbeeld gaat ervan uit dat de gebruiker
joesoap ook een gebruiker is op het
plaatselijke systeem.poll example.com protocol pop3 username "joesoap" password "XXX"Het volgende voorbeeld legt verbinding met meerdere
POP- en IMAP-servers en stuurt de
mail door naar verschillende plaatselijke gebruikers indien van
toepassing:poll example.com proto pop3:
user "joesoap", with password "XXX", is "jsoap" here;
user "andrea", with password "XXXX";
poll example2.net proto imap:
user "john", with password "XXXXX", is "myth" here;Het gereedschap fetchmail kan in
daemon-modus worden gedraaid met de vlag
gevolgd door het interval (in seconden) waarmee
fetchmail de servers die in het bestand
.fetchmailrc vermeld staan dient te vragen.
Het volgende voorbeeld zorgt ervoor dat fetchmail
elke 600 seconden vraagt:&prompt.user; fetchmail -d 600Meer informatie over fetchmail is
te vinden op .
MarcSilverBijgedragen door procmail gebruikenprocmailHet gereedschap procmail is een
zeer krachtig gereedschap voor het filteren van binnenkomende
mail. Het stelt gebruikers in staat om regels te
definiëren welke aan binnenkomende mail gekoppeld kunnen
worden om specifieke taken uit te voeren of om de mail naar
alternatieve postbussen en/of emailadressen door te sturen.
procmail kan met de port mail/procmail geïnstalleerd
worden. Eenmaal geïnstalleerd kan het direct met de meeste
MTAs geïntegreerd worden; raadpleeg de
documentatie van de MTA voor meer informatie.
Als alternatief kan procmail
geïntegreerd worden door de volgende regel aan het bestand
.forward in de thuismap van de gebruiker
die procmail gebruikt toe te voegen:
"|exec /usr/local/bin/procmail || exit 75"De volgende sectie geeft wat basisregels van
procmailmet een korte beschrijving ervan. Deze,
en andere, regels dienen in het bestand
.procmailrc geplaatst te worden, welke zich
in de thuismap van de gebruiker dient te bevinden.De meerderheid van deze regels kan ook in de hulppagina
&man.procmailex.5; gevonden worden.Stuur alle mail van user@example.com door naar
het externe adres goodmail@example2.com::0
* ^From.*user@example.com
! goodmail@example2.comStuur alle mails korten dan 1000 bytes door naar het externe
adres goodmail@example2.com::0
* < 1000
! goodmail@example2.comStuur alle mail verzonden aan
alternate@example.com door naar een postbus
alternate::0
* ^TOalternate@example.com
alternateStuur alle mail met het onderwerp Spam door
naar /dev/null::0
^Subject:.*Spam
/dev/nullEen handig recept dat binnenkomende &os;.org mailinglijsten parseert en
elke lijst in en eigen postbus plaatst::0
* ^Sender:.owner-freebsd-\/[^@]+@FreeBSD.ORG
{
LISTNAME=${MATCH}
:0
* LISTNAME??^\/[^@]+
FreeBSD-${MATCH}
}
diff --git a/nl_NL.ISO8859-1/books/handbook/mirrors/Makefile b/nl_NL.ISO8859-1/books/handbook/mirrors/Makefile
index ad5c0e2abe..41ee57218f 100644
--- a/nl_NL.ISO8859-1/books/handbook/mirrors/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/mirrors/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/mirrors/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= mirrors/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/multimedia/Makefile b/nl_NL.ISO8859-1/books/handbook/multimedia/Makefile
index f90e1cd2b0..fa76648fa2 100644
--- a/nl_NL.ISO8859-1/books/handbook/multimedia/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/multimedia/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/multimedia/Makefile
+# %SRCID% 1.2
+#
CHAPTERS= multimedia/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/network-servers/Makefile b/nl_NL.ISO8859-1/books/handbook/network-servers/Makefile
index 7c8daabcf6..3fbfd2b178 100644
--- a/nl_NL.ISO8859-1/books/handbook/network-servers/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/network-servers/Makefile
@@ -1,16 +1,19 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
# $FreeBSDnl: nl_NL.ISO8859-1/books/handbook/network-servers/Makefile,v 1.2 2004/12/26 21:39:15 remko Exp $
-# Gebaseerd op: 1.1
+#
+# %SOURCE% en_US.ISO8859-1/books/handbook/network-servers/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= network-servers/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/pgpkeys/Makefile b/nl_NL.ISO8859-1/books/handbook/pgpkeys/Makefile
index 7c61203aff..08cbf31dd4 100644
--- a/nl_NL.ISO8859-1/books/handbook/pgpkeys/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/pgpkeys/Makefile
@@ -1,19 +1,22 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/pgpkeys/Makefile
+# %SRCID% 1.3
+#
CHAPTERS= pgpkeys/chapter.sgml
PGPKEYS!= perl -ne 'm/\"([\w-]+.key)\"/ && print "$$1\n"' \
${DOC_PREFIX}/share/pgpkeys/pgpkeys.ent
SRCS+= ${PGPKEYS}
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/pgpkeys/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/pgpkeys/chapter.sgml
index baeb1fd507..5241f452dc 100644
--- a/nl_NL.ISO8859-1/books/handbook/pgpkeys/chapter.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/pgpkeys/chapter.sgml
@@ -1,56 +1,58 @@
PGP sleutelspgp sleutelsIn het geval een handtekening van een van de beambten of
ontwikkelaars gecontroleerd moet worden of er een versleutelde
e-mail aan ze gezonden moet worden, worden hier voor het gemak een
aantal sleutels weergegeven. Een complete sleutelring van FreeBSD.org gebruikers kan op de
volgende link gedownload worden: http://www.FreeBSD.org/doc/pgpkeyring.txt.Beambten
§ion.pgpkeys-officers;
Leden Kernteam
§ion.pgpkeys-core;
Ontwikkelaars
§ion.pgpkeys-developers;
diff --git a/nl_NL.ISO8859-1/books/handbook/ports/Makefile b/nl_NL.ISO8859-1/books/handbook/ports/Makefile
index 93280bcae8..44b1674c1c 100644
--- a/nl_NL.ISO8859-1/books/handbook/ports/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/ports/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/ports/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= ports/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/ppp-and-slip/Makefile b/nl_NL.ISO8859-1/books/handbook/ppp-and-slip/Makefile
index 1a44fcbd0c..076d534d53 100644
--- a/nl_NL.ISO8859-1/books/handbook/ppp-and-slip/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/ppp-and-slip/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/ppp-and-slip/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= ppp-and-slip/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/printing/Makefile b/nl_NL.ISO8859-1/books/handbook/printing/Makefile
index 72d9e9b80a..bc007de1f7 100644
--- a/nl_NL.ISO8859-1/books/handbook/printing/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/printing/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/printing/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= printing/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/security/Makefile b/nl_NL.ISO8859-1/books/handbook/security/Makefile
index bbf01aa7ab..442d45ca63 100644
--- a/nl_NL.ISO8859-1/books/handbook/security/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/security/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/security/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= security/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/serialcomms/Makefile b/nl_NL.ISO8859-1/books/handbook/serialcomms/Makefile
index b83d9a27bb..2d9b04daea 100644
--- a/nl_NL.ISO8859-1/books/handbook/serialcomms/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/serialcomms/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/serialcomms/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= serialcomms/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/users/Makefile b/nl_NL.ISO8859-1/books/handbook/users/Makefile
index dfa2918b7b..9395eeea1e 100644
--- a/nl_NL.ISO8859-1/books/handbook/users/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/users/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/users/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= users/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/vinum/Makefile b/nl_NL.ISO8859-1/books/handbook/vinum/Makefile
index eca585a9aa..73bb1cd701 100644
--- a/nl_NL.ISO8859-1/books/handbook/vinum/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/vinum/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/vinum/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= vinum/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/virtualization/Makefile b/nl_NL.ISO8859-1/books/handbook/virtualization/Makefile
index 4c89488e9c..4ac1695bb7 100644
--- a/nl_NL.ISO8859-1/books/handbook/virtualization/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/virtualization/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/virtualization/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= virtualization/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/books/handbook/x11/Makefile b/nl_NL.ISO8859-1/books/handbook/x11/Makefile
index 06b452cd33..b258bc2888 100644
--- a/nl_NL.ISO8859-1/books/handbook/x11/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/x11/Makefile
@@ -1,15 +1,18 @@
#
# Build the Handbook with just the content from this chapter.
#
# $FreeBSD$
#
+# %SOURCE% en_US.ISO8859-1/books/handbook/x11/Makefile
+# %SRCID% 1.1
+#
CHAPTERS= x11/chapter.sgml
VPATH= ..
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
DOC_PREFIX?= ${.CURDIR}/../../../..
.include "../Makefile"
diff --git a/nl_NL.ISO8859-1/flyer/Makefile b/nl_NL.ISO8859-1/flyer/Makefile
index 16f88f31dc..2d40e56787 100644
--- a/nl_NL.ISO8859-1/flyer/Makefile
+++ b/nl_NL.ISO8859-1/flyer/Makefile
@@ -1,18 +1,20 @@
# $FreeBSD$
# $FreeBSDnl: nl_NL.ISO8859-1/flyer/Makefile,v 1.2 2005/04/30 11:45:54 remko Exp $
-# Gebaseerd op: 1.2
+#
+# %SOURCE% en_US.ISO8859-1/flyer/Makefile
+# %SRCID% 1.2
pdf: dvi ps
ps2pdf13 -sPAPERSIZE=a4 flyer.ps
ps: dvi
dvips -t a4 flyer.dvi -o
dvi: flyer.tex
pngtopnm -mix ../../share/images/flyer/logo-full.png | \
pnmtops -noturn > logo-full.eps
latex flyer.tex
clean:
rm -f flyer.aux flyer.dvi flyer.log flyer.pdf flyer.ps \
logo-full.eps
diff --git a/nl_NL.ISO8859-1/share/sgml/bookinfo.ent b/nl_NL.ISO8859-1/share/sgml/bookinfo.ent
index d8dfc099d6..d626561965 100644
--- a/nl_NL.ISO8859-1/share/sgml/bookinfo.ent
+++ b/nl_NL.ISO8859-1/share/sgml/bookinfo.ent
@@ -1,17 +1,19 @@
diff --git a/nl_NL.ISO8859-1/share/sgml/catalog b/nl_NL.ISO8859-1/share/sgml/catalog
index 2fc08a4995..4d24b88cac 100644
--- a/nl_NL.ISO8859-1/share/sgml/catalog
+++ b/nl_NL.ISO8859-1/share/sgml/catalog
@@ -1,20 +1,24 @@
-- ...................................................................... --
-- FreeBSD SGML Public Identifiers ...................................... --
-- $FreeBSD$ --
-- $FreeBSDnl$ --
+ -- %SOURCE% en_US.ISO8859-1/share/sgml/catalog --
+ -- %SRCID% 1.5 --
+
+
PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Books Entity Set//NL"
"books.ent"
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"
PUBLIC "-//FreeBSD//ENTITIES DocBook Mailing List Entities//EN"
"mailing-lists.ent"
PUBLIC "-//FreeBSD//ENTITIES DocBook BookInfo Entities//NL"
"bookinfo.ent"
PUBLIC "-//FreeBSD//ENTITIES DocBook Language Specific Entities//EN"
"l10n.ent"
diff --git a/nl_NL.ISO8859-1/share/sgml/freebsd.dsl b/nl_NL.ISO8859-1/share/sgml/freebsd.dsl
index 11509af334..118c6c7f7e 100644
--- a/nl_NL.ISO8859-1/share/sgml/freebsd.dsl
+++ b/nl_NL.ISO8859-1/share/sgml/freebsd.dsl
@@ -1,256 +1,258 @@
%freebsd.l10n;
]>
(define %refentry-xref-link% #t)
(define ($email-footer$)
(make sequence
(make element gi: "p"
attributes: (list (list "align" "center"))
(make element gi: "small"
(literal "Deze en andere documenten kunnen worden gedownload van ")
(create-link
(list (list "HREF" "ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/"))
(literal "ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/"))
(literal ".")))
(make element gi: "p"
attributes: (list (list "align" "center"))
(make element gi: "small"
(literal "Lees voor vragen over FreeBSD de ")
(create-link
(list (list "HREF" "http://www.FreeBSD.org/docs.html"))
(literal "documentatie"))
(literal " alvorens contact te zoeken <")
(create-link
(list (list "HREF" "mailto:questions@FreeBSD.org"))
(literal "questions@FreeBSD.org"))
(literal ">.")
(make empty-element gi: "br")
(literal "Vragen over deze documentatie kunnen per e-mail naar <")
(create-link (list (list "HREF" "mailto:doc@FreeBSD.org"))
(literal "doc@FreeBSD.org"))
(literal ">.")))))
]]>
number ;; then get the apparent level
(substring renderas 4 5)) ;; from "renderas",
(SECTLEVEL))) ;; else use the real level
(hs (HSIZE (- 4 hlevel))))
(make sequence
(make paragraph
font-family-name: %title-font-family%
font-weight: (if (< hlevel 5) 'bold 'medium)
font-posture: (if (< hlevel 5) 'upright 'italic)
font-size: hs
line-spacing: (* hs %line-spacing-factor%)
space-before: (* hs %head-before-factor%)
space-after: (if (node-list-empty? subtitles)
(* hs %head-after-factor%)
0pt)
start-indent: (if (or (>= hlevel 3)
(member (gi) (list (normalize "refsynopsisdiv")
(normalize "refsect1")
(normalize "refsect2")
(normalize "refsect3"))))
%body-start-indent%
0pt)
first-line-start-indent: 0pt
quadding: %section-title-quadding%
keep-with-next?: #t
heading-level: (if %generate-heading-level% (+ hlevel 1) 0)
;; SimpleSects are never AUTO numbered...they aren't hierarchical
(if (> hlevel (- max-section-level-labels 1))
(empty-sosofo)
(if (string=? (element-label (current-node)) "")
(empty-sosofo)
(literal (element-label (current-node))
(gentext-label-title-sep (gi sect)))))
(element-title-sosofo (current-node)))
(with-mode section-title-mode
(process-node-list subtitles))
($section-info$ info))))
]]>
(define (local-en-label-title-sep)
(list
(list (normalize "warning") ": ")
(list (normalize "caution") ": ")
(list (normalize "chapter") " ")
(list (normalize "sect1") " ")
(list (normalize "sect2") " ")
(list (normalize "sect3") " ")
(list (normalize "sect4") " ")
(list (normalize "sect5") " ")
))
diff --git a/nl_NL.ISO8859-1/share/sgml/l10n.ent b/nl_NL.ISO8859-1/share/sgml/l10n.ent
index 9d7cb8025b..b42a28f3d2 100644
--- a/nl_NL.ISO8859-1/share/sgml/l10n.ent
+++ b/nl_NL.ISO8859-1/share/sgml/l10n.ent
@@ -1,15 +1,17 @@