diff --git a/nl_NL.ISO8859-1/books/handbook/Makefile b/nl_NL.ISO8859-1/books/handbook/Makefile
index a9187d5e24..df3409fb3a 100644
--- a/nl_NL.ISO8859-1/books/handbook/Makefile
+++ b/nl_NL.ISO8859-1/books/handbook/Makefile
@@ -1,232 +1,262 @@
-#
+#
# $FreeBSD$
+# $FreeBSDnl: nl_NL.ISO8859-1/books/handbook/Makefile,v 1.11 2004/12/15 00:15:19 siebrand Exp $
+# Gebaseerd op: 1.91 (sortof)
#
# Build the FreeBSD Dutch Handbook.
#
+# ------------------------------------------------------------------------
+#
+# Handboekspecifieke variabelen
+#
+# WITH_PGPKEYS De gedrukte verie van het handboek geeft standaard
+# alleen PGP vingerafdrukken weer. Als het gewenst
+# is dat de complete sleutel wordt weergegeven dan
+# dient deze variabele insteld te worden. De optie
+# heeft geen invloed op de HTML formaten.
+#
+# Handboekspecifieke doelen
+#
+# pgpkeyring Dit doel leest de inhoud van pgpkeys/chapter.sgml
+# en schrijft dan alle PGP sleutels naar stdout.
+# De uitvoer kan omgeleid worden naar een bestand
+# en verspreid worden als een publieke sleutelring
+# van FreeBSD ontwikkelaars die eenvoudig in
+# PGP/GPG ingelezen kan worden.
+#
+# ------------------------------------------------------------------------
+
+.PATH: ${.CURDIR}/../../share/sgml/glossary/
+
MAINTAINER=remko@FreeBSD.org
DOC?= book
FORMATS?= html-split
+HAS_INDEX= true
+WITH_GLOSSARY?=
+
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
IMAGES_EN = advanced-networking/isdn-bus.eps
IMAGES_EN+= advanced-networking/isdn-twisted-pair.eps
IMAGES_EN+= advanced-networking/natd.eps
IMAGES_EN+= advanced-networking/net-routing.pic
IMAGES_EN+= advanced-networking/static-routes.pic
IMAGES_EN+= install/adduser1.scr
IMAGES_EN+= install/adduser2.scr
IMAGES_EN+= install/adduser3.scr
IMAGES_EN+= install/boot-mgr.scr
IMAGES_EN+= install/console-saver1.scr
IMAGES_EN+= install/console-saver2.scr
IMAGES_EN+= install/console-saver3.scr
IMAGES_EN+= install/console-saver4.scr
IMAGES_EN+= install/desktop.scr
IMAGES_EN+= install/disklabel-auto.scr
IMAGES_EN+= install/disklabel-ed1.scr
IMAGES_EN+= install/disklabel-ed2.scr
IMAGES_EN+= install/disklabel-fs.scr
IMAGES_EN+= install/disklabel-root1.scr
IMAGES_EN+= install/disklabel-root2.scr
IMAGES_EN+= install/disklabel-root3.scr
IMAGES_EN+= install/disk-layout.eps
IMAGES_EN+= install/dist-set.scr
IMAGES_EN+= install/dist-set2.scr
IMAGES_EN+= install/docmenu1.scr
IMAGES_EN+= install/ed0-conf.scr
IMAGES_EN+= install/ed0-conf2.scr
IMAGES_EN+= install/edit-inetd-conf.scr
IMAGES_EN+= install/fdisk-drive1.scr
IMAGES_EN+= install/fdisk-drive2.scr
IMAGES_EN+= install/fdisk-edit1.scr
IMAGES_EN+= install/fdisk-edit2.scr
IMAGES_EN+= install/ftp-anon1.scr
IMAGES_EN+= install/ftp-anon2.scr
IMAGES_EN+= install/hdwrconf.scr
IMAGES_EN+= install/keymap.scr
IMAGES_EN+= install/main1.scr
IMAGES_EN+= install/mainexit.scr
IMAGES_EN+= install/main-std.scr
IMAGES_EN+= install/main-options.scr
IMAGES_EN+= install/main-doc.scr
IMAGES_EN+= install/main-keymap.scr
IMAGES_EN+= install/media.scr
IMAGES_EN+= install/mouse1.scr
IMAGES_EN+= install/mouse2.scr
IMAGES_EN+= install/mouse3.scr
IMAGES_EN+= install/mouse4.scr
IMAGES_EN+= install/mouse5.scr
IMAGES_EN+= install/mouse6.scr
IMAGES_EN+= install/mta-main.scr
IMAGES_EN+= install/net-config-menu1.scr
IMAGES_EN+= install/net-config-menu2.scr
IMAGES_EN+= install/nfs-server-edit.scr
IMAGES_EN+= install/ntp-config.scr
IMAGES_EN+= install/options.scr
IMAGES_EN+= install/pkg-cat.scr
IMAGES_EN+= install/pkg-confirm.scr
IMAGES_EN+= install/pkg-install.scr
IMAGES_EN+= install/pkg-sel.scr
IMAGES_EN+= install/probstart.scr
IMAGES_EN+= install/routed.scr
IMAGES_EN+= install/security.scr
IMAGES_EN+= install/sysinstall-exit.scr
IMAGES_EN+= install/timezone1.scr
IMAGES_EN+= install/timezone2.scr
IMAGES_EN+= install/timezone3.scr
IMAGES_EN+= install/userconfig.scr
IMAGES_EN+= install/userconfig2.scr
IMAGES_EN+= install/xf86setup.scr
IMAGES_EN+= mail/mutt1.scr
IMAGES_EN+= mail/mutt2.scr
IMAGES_EN+= mail/mutt3.scr
IMAGES_EN+= mail/pine1.scr
IMAGES_EN+= mail/pine2.scr
IMAGES_EN+= mail/pine3.scr
IMAGES_EN+= mail/pine4.scr
IMAGES_EN+= mail/pine5.scr
IMAGES_EN+= install/example-dir1.eps
IMAGES_EN+= install/example-dir2.eps
IMAGES_EN+= install/example-dir3.eps
IMAGES_EN+= install/example-dir4.eps
IMAGES_EN+= install/example-dir5.eps
IMAGES_EN+= security/ipsec-network.pic
IMAGES_EN+= security/ipsec-crypt-pkt.pic
IMAGES_EN+= security/ipsec-encap-pkt.pic
IMAGES_EN+= security/ipsec-out-pkt.pic
IMAGES_EN+= vinum/vinum-concat.pic
IMAGES_EN+= vinum/vinum-mirrored-vol.pic
IMAGES_EN+= vinum/vinum-raid10-vol.pic
IMAGES_EN+= vinum/vinum-raid5-org.pic
IMAGES_EN+= vinum/vinum-simple-vol.pic
IMAGES_EN+= vinum/vinum-striped-vol.pic
IMAGES_EN+= vinum/vinum-striped.pic
# Images from the cross-document image library
IMAGES_LIB= callouts/1.png
IMAGES_LIB+= callouts/2.png
IMAGES_LIB+= callouts/3.png
IMAGES_LIB+= callouts/4.png
IMAGES_LIB+= callouts/5.png
IMAGES_LIB+= callouts/6.png
IMAGES_LIB+= callouts/7.png
IMAGES_LIB+= callouts/8.png
IMAGES_LIB+= callouts/9.png
IMAGES_LIB+= callouts/10.png
-#
+#
# SRCS lists the individual SGML files that make up the document. Changes
# to any of these files will force a rebuild
#
# SGML content
SRCS= book.sgml
SRCS+= colophon.sgml
+SRCS+= freebsd-glossary.sgml
SRCS+= advanced-networking/chapter.sgml
SRCS+= basics/chapter.sgml
SRCS+= bibliography/chapter.sgml
SRCS+= config/chapter.sgml
SRCS+= boot/chapter.sgml
SRCS+= cutting-edge/chapter.sgml
SRCS+= desktop/chapter.sgml
SRCS+= disks/chapter.sgml
SRCS+= eresources/chapter.sgml
+SRCS+= firewalls/chapter.sgml
SRCS+= install/chapter.sgml
SRCS+= introduction/chapter.sgml
SRCS+= kernelconfig/chapter.sgml
SRCS+= l10n/chapter.sgml
SRCS+= linuxemu/chapter.sgml
SRCS+= mac/chapter.sgml
SRCS+= mail/chapter.sgml
SRCS+= mirrors/chapter.sgml
SRCS+= multimedia/chapter.sgml
+SRCS+= network-servers/chapter.sgml
SRCS+= pgpkeys/chapter.sgml
SRCS+= ports/chapter.sgml
SRCS+= ppp-and-slip/chapter.sgml
SRCS+= preface/preface.sgml
SRCS+= printing/chapter.sgml
SRCS+= security/chapter.sgml
SRCS+= serialcomms/chapter.sgml
SRCS+= users/chapter.sgml
SRCS+= vinum/chapter.sgml
SRCS+= x11/chapter.sgml
# Entities
-SRCS+= chapters.ent
+SRCS+= chapters.ent
SYMLINKS= ${DESTDIR} index.html handbook.html
# Turn on all the chapters.
CHAPTERS?= ${SRCS:M*chapter.sgml}
SGMLFLAGS+= ${CHAPTERS:S/\/chapter.sgml//:S/^/-i chap./}
-.if defined(WITH_GLOSSARY) && !empty(WITH_GLOSSARY)
SGMLFLAGS+= -i chap.freebsd-glossary
-.endif
-# XXX The Handbook build currently overflows some internal, hardcoded
-# limits in pdftex. Until we split the Handbook up, build the PDF
+# XXX The Handbook build currently overflows some internal, hardcoded
+# limits in pdftex. Until we split the Handbook up, build the PDF
# version using ps2pdf instead of pdftex.
PS2PDF?= ${PREFIX}/bin/ps2pdf
book.tex-pdf:
${TOUCH} book.tex-pdf
book.pdf: book.ps
${PS2PDF} book.ps book.pdf
pgpkeyring: pgpkeys/chapter.sgml
@${JADE} -V nochunks ${JADEOPTS} -d ${DSLPGP} -t sgml ${MASTERDOC}
#
# Handbook-specific variables
#
.if defined(WITH_PGPKEYS)
JADEFLAGS+= -V withpgpkeys
.endif
+URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.for p in ftp cvsup
SRCS+= mirrors.sgml.${p}.inc
CLEANFILES+= mirrors.sgml.${p}.inc
CLEANFILES+= mirrors.sgml.${p}.inc.tmp
.endfor
SRCS+= eresources.sgml.www.inc
CLEANFILES+= eresources.sgml.www.inc
CLEANFILES+= eresources.sgml.www.inc.tmp
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
.for p in ftp cvsup
mirrors.sgml.${p}.inc: ${XML_MIRRORS} ${XSL_MIRRORS}
${XSLTPROC} ${XSLTPROCOPTS} \
-o $@.tmp \
--param 'type' "'$p'" \
--param 'proto' "'$p'" \
--param 'target' "'handbook/mirrors/chapter.sgml'" \
${XSL_MIRRORS} ${XML_MIRRORS}
${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>\1>,;s,,,'\
< $@.tmp > $@ || (${RM} -f $@ && false)
${RM} -f $@.tmp
.endfor
eresources.sgml.www.inc: ${XML_MIRRORS} ${XSL_MIRRORS}
${XSLTPROC} ${XSLTPROCOPTS} \
-o $@.tmp \
--param 'type' "'www'" \
--param 'proto' "'http'" \
--param 'target' "'handbook/eresources/chapter.sgml'" \
${XSL_MIRRORS} ${XML_MIRRORS}
${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>\1>,;s,,,'\
< $@.tmp > $@ || (${RM} -f $@ && false)
${RM} -f $@.tmp
diff --git a/nl_NL.ISO8859-1/books/handbook/advanced-networking/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/advanced-networking/chapter.sgml
index ef4289ba46..6371849f47 100644
--- a/nl_NL.ISO8859-1/books/handbook/advanced-networking/chapter.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/advanced-networking/chapter.sgml
@@ -1,1154 +1,795 @@
* Geavanceerde netwerken* Samenvatting
-
+ Wordt nog vertaald
+
+
+
+ Coranth
+ Gryphon
+ Bijgedragen door
+
+
+
+
* Gateways en routes
+ Wordt nog vertaald
+
* Een voorbeeld
-
+ Wordt nog vertaald* Standaard routes
-
+ Wordt nog vertaald
- * Hosts met meerdere netwerkkaarten
+ * Dual Homed machines
-
+ Wordt nog vertaald
- * Het bouwen van een router
+ * Een router bouwen
-
+ Wordt nog vertaald
- * Het opzetten van statische routes
+
+
+
+ Al
+ Hoang
+ Bijgedragen door
+
+
+
+
+ * Opzetten van statische routes
+
+ Wordt nog vertaald* Handmatige configuratie
-
+ Wordt nog vertaald
- * Vaste configuratie
+ * Persistente configuratie
-
+ Wordt nog vertaald
- * Propageren van routes
+ * Routes propageren
-
+ Wordt nog vertaald* Problemen oplossen
-
+ Wordt nog vertaald
- * Multicast routing
+ * Multicast routering
-
+ Wordt nog vertaald
+
+
+
+ Eric
+ Anderson
+ Geschreven door
+
+
+
+
* Draadloze netwerken
+ Wordt nog vertaald
+
* Introductie
-
+ Wordt nog vertaald
- * Draadloze verbindingsmethodes
+ * Draadloze operatie modes
+
+ Wordt nog vertaald
- * BSS Mode
+ * BSS mode
-
+ Wordt nog vertaald
- * IBSS Mode
+ * IBSS mode
-
+ Wordt nog vertaald
- * Infrastructuur Mode
+ * Infrastructuur mode
+
+ Wordt nog vertaald
- * Access Points
+ * Toegangspunten
-
+ Wordt nog vertaald
- * Bouwen van een &os; Access Point
+ * Een &os; toegangspunt bouwen
+
+ Wordt nog vertaald* Benodigdheden
-
+ Wordt nog vertaald
+ * Het opzetten
-
+ Wordt nog vertaald* Status informatie
-
+ Wordt nog vertaald
- * Clients
+ * Cliënten
+
+ Wordt nog vertaald* Benodigdheden
-
+ Wordt nog vertaald
- * Het opzetten van een draadloze &os; client
+ * Opzetten van een draadloze &os; cliënt
-
+ Wordt nog vertaald* Encryptie
+ Wordt nog vertaald
+
* WEP
-
+ Wordt nog vertaald* IPsec
-
+ Wordt nog vertaald* Hulpprogramma's
+ Wordt nog vertaald
- * De bsd-airtools
- Package
+ * Het bsd-airtools
+ pakket
-
+ Wordt nog vertaald* De wicontrol,
ancontrol en
- raycontrol hulpprogramma's
+ raycontrol programma's
-
+ Wordt nog vertaald* Het ifconfig commando
-
+ Wordt nog vertaald* Ondersteunde kaarten
+ Wordt nog vertaald
+
- * Access Points
+ * Toegangspunten
-
+ Wordt nog vertaald
- * Clients
+ * 802.11b cliënten
-
+ Wordt nog vertaald
+
+
+
+ * 802.11a & 802.11g cliënten
+
+ Wordt nog vertaald
+
+
+
+ Pav
+ Lucistnik
+ Geschreven door
+
+ pav@oook.cz
+
+
+
+
+
* Bluetooth
+ Wordt nog vertaald
+
* Introductie
-
+ Wordt nog vertaald
- * Inpluggen van het apparaat
+ * Het apparaat inprikken
-
+ Wordt nog vertaald* Host Controller Interface (HCI)
-
+ Wordt nog vertaald
- * Logical Link Control and Adaptation Protocol
- (L2CAP)
+ * Logical Link Control and Adaptation
+ Protocol (L2CAP)
-
+ Wordt nog vertaald
- * RFCOMM Protocol
+ * Het RFCOMM protocol
-
+ Wordt nog vertaald
- * Koppelen van apparaten
+ * Apparaatparen
-
+ Wordt nog vertaald* Service Discovery Protocol (SDP)
-
+ Wordt nog vertaald
- * Dial-Up netwerken (DUN) en netwerk toegang met PPP (LAN)
- profielen
+ * Dial-Up Networking (DUN) en netwerk toegang met PPP (LAN)
+ profielen
-
+ Wordt nog vertaald
- * OBEX Object Push (OPUSH) profiel
+ * Het OBEX Object Push (OPUSH) profiel
-
+ Wordt nog vertaald
- * Serial Port (SP) profiel
+ * Serial Port Profile (SPP)
-
+ Wordt nog vertaald* Problemen oplossen
+ Wordt nog vertaald
- * Een apparaat op afstand kan geen verbinding
+ * Een apparaat op afstand kan geen verbinding
maken
-
+ Wordt nog vertaald
- * Er is iets mis, kan ik precies zien wat er
+ * Er gaat iets mis, kan ik ergens precies zien wat er
gebeurd?
-
+ Wordt nog vertaald
+
+
+
+ Steve
+ Peterson
+ Geschreven door
+
+
+
+
* Bridging
+ Wordt nog vertaald
+
* Introductie
-
+ Wordt nog vertaald
- * Situaties waarin bridging de aangewezen manier is
+ * Situaties waarin bridging juist is
+
+ Wordt nog vertaald* Veel verkeer op een segment
-
+ Wordt nog vertaald
- * Filtering en bandbreedte beperkende firewall
+ * Filtering/Bandbreedte beheersende firewall
-
+ Wordt nog vertaald* Een bridge configureren
+ Wordt nog vertaald
+
- * Netwerk kaart keuze
+ * Netwerkkaart selectie
-
+ Wordt nog vertaald* Kernel configuratie wijzigingen
-
+ Wordt nog vertaald* Firewall ondersteuning
-
+ Wordt nog vertaald
- * Bandbreedte-beheer ondersteuning
+ * Bandbreedte beheersing ondersteuning
-
+ Wordt nog vertaald
- * De bridge activeren
+ * De bridge inschakelen
-
+ Wordt nog vertaald* Overige informatie
-
-
-
-
-
-
-
-
- Tom
- Rhodes
- Gereorganiseerd en verbeterd door
-
-
-
-
- Bill
- Swingle
- Geschreven door
-
-
-
- * NFS
-
-
- * Hoe NFS werkt
-
-
-
-
-
- * NFS configureren
-
-
-
-
-
- * Practische gebruiken
-
-
-
-
-
-
-
-
- Wylie
- Stilwell
- Bijgedragen door
-
-
-
-
- Chern
- Lee
- Herschreven door
-
-
-
- * Automatisch koppelen met
- amd
-
-
-
-
-
-
-
-
- John
- Lind
- Bijgedragen door
-
-
-
- * Integratie problemen met andere systemen
-
-
+ Wordt nog vertaald
-
- Jean-François
- Dockès
- Geupdate door
-
+
+ Jean-François
+ Dockès
+ Geupdate door
+ AlexDupreGereorganiseerd en uitgebreid door
- * Schijfloze operatie
+
+ * Diskloze operatie
+
+ Wordt nog vertaald* Achtergrond informatie
-
+ Wordt nog vertaald* Installatie instructies
+ Wordt nog vertaald
+
- * Configuratie met behulp van
- ISC DHCP
+ * Configuratie door gebruik van
+ ISC DHCP
-
+ Wordt nog vertaald
- * Configuratie met behulp van BOOTP
+ * Configuratie door gebruik van BOOTP
-
+ Wordt nog vertaald
- * Een boot programma voorbereiden met
+ * Een bootprogramma voorbereiden met
Etherboot
-
+ Wordt nog vertaald
- * Booten met PXE
+ * Opstarten met PXE
-
+ Wordt nog vertaald
- * Configureren van de TFTP en
- NFS Servers
+ * De TFTP en NFS
+ servers configureren
-
+ Wordt nog vertaald
- * Een schijfloze kernel bouwen
+ * Een diskloze kernel bouwen
-
+ Wordt nog vertaald* Het root bestandssysteem voorbereiden
+ Wordt nog vertaald
+
- * Het clone_root script
- gebruiken
+ * Het clone_root script gebruiken
-
+ Wordt nog vertaald
- * Gebruik maken van de standaard
- make world procedure
+ * De standaard make world
+ procedure gebruiken
-
+ Wordt nog vertaald
- * Wisselbestand configureren
+ * Swapruimte configureren
+
+ Wordt nog vertaald
- * NFS Wisselbestand met
+ * NFS swapruimte met
&os; 4.X
-
+ Wordt nog vertaald
- * NFS Wisselbestand met
+ * NFS swapruimte met
&os 5.X
-
-
+ Wordt nog vertaald
+
* Diverse problemen
+ Wordt nog vertaald
+
* Draaien met een alleen-lezen
/usr
-
+ Wordt nog vertaald
+
* Gebruik maken van een niet &os; server
-
+ Wordt nog vertaald* ISDN
-
-
- Hellmuth
- Michaelis
- Bijgedragen door
-
-
+
+
+ Hellmuth
+ Michaelis
+ Bijgedragen door
+
+
- * ISDN Cards
-
-
-
-
-
- * ISDN terminal adapters
-
-
-
-
-
- * Stand-alone ISDN Bridges/Routers
-
-
-
-
-
-
-
-
-
- Bill
- Swingle
- Geschreven door
-
-
-
-
- Eric
- Ogren
- Uitgebreid door
-
-
- Udo
- Erdelhoff
-
-
-
- * NIS/YP
-
-
- * Wat is het?
-
-
-
-
-
- * Termen en processen die je zou moeten kennen
-
-
-
-
-
- * Hoe werkt het?
-
-
- * Machine types
-
-
-
-
-
-
- * NIS/YP gebruiken
-
-
- * Planning
-
-
- * Een NIS domein naam kiezen
-
-
-
-
-
- * Fysieke server benodigdheden
-
-
-
-
-
-
- * NIS servers
-
-
- * Een NIS master server opzetten
-
-
-
-
-
- * NIS Maps initialiseren
-
-
-
-
-
- * Een NIS slave server opzetten
-
-
-
-
-
-
- * NIS clients
-
-
- * Een NIS client opzetten
-
-
-
-
-
-
-
- * NIS beveiliging
-
-
-
-
-
- * Sommige gebruikers uitsluiten van het aanloggen
-
-
-
-
-
-
-
-
- Udo
- Erdelhoff
- Bijgedragen door
-
-
-
- * Netgroepen gebruiken
-
-
-
-
-
- * Belangrijke dingen om te onthouden
-
-
-
-
-
- * NIS v1 compatibiliteit
-
-
-
-
- * NIS servers die ook NIS clients zijn
-
-
-
-
-
- * Wachtwoord formaat
-
-
-
-
-
-
-
-
-
- Greg
- Sutter
- Geschreven door
-
-
-
- * DHCP
-
-
- * Wat is DHCP?
-
-
-
-
-
- * Wat deze sectie behandeld
-
-
-
-
-
- * Hoe het werkt
-
-
-
-
-
- * &os; intregatie
-
-
-
-
-
- * Bestanden
-
-
-
-
-
- * Meer lezen
-
-
-
-
-
- * Installatie en configuratie van een DHCP server
-
-
- * Wat deze sectie behandeld
-
-
-
-
-
- * DHCP server installatie
-
-
-
-
-
- * De DHCP server configureren
-
-
-
-
-
- * Bestanden
-
-
-
-
-
-
-
-
-
-
- Chern
- Lee
- Bijgedragen door
-
-
-
- * DNS
-
-
- * Overzicht
-
-
-
-
-
- * Terminologie
-
-
-
-
-
- * Redenen om een Name Server te draaien
-
-
-
-
-
- * Hoe het werkt
-
-
-
-
-
- * BIND starten
-
-
-
-
-
- * Configuratie bestanden
-
-
- * make-localhost gebruiken
-
-
-
-
-
- * /etc/namedb/named.conf
-
-
-
-
-
- * Zone bestanden
-
-
-
-
-
-
- * Caching Name Server
-
-
-
-
-
- * named draaien in een
- zandbak
+ * ISDN kaarten
-
+ Wordt nog vertaald
- * Beveiliging
+ * ISDN Terminal Adapters
-
+ Wordt nog vertaald
- * Meer lezen
+ * Stand-alone ISDN Bridges/Routers
-
+ Wordt nog vertaald
-
+
-
- Tom
- Hukins
- Bijgedragen door
-
+
+ Chern
+ Lee
+ Bijgedragen door
+
- * NTP
-
-
- * Overzicht
-
-
-
-
-
- * Goede NTP servers kiezen
-
-
-
-
-
- * Je machine configureren
-
-
- * Basis configuratie
-
-
-
-
-
- * Algemene configuratie
-
-
-
-
- * Toegang tot je server configureren
-
-
-
-
-
-
- * De NTP server draaien
-
-
-
-
-
- * ntpd gebruiken met een tijdelijke
- internet verbinding
+ * Network Address Translation (NAT)
-
-
-
-
- * Meer informatie
-
-
-
-
-
-
-
-
-
- Chern
- Lee
- Bijgedragen door
-
-
-
- * Network Address Translation
+ Wordt nog vertaald* Overzicht
-
+ Wordt nog vertaald
- * Opzetten
+ * Installatie
-
+ Wordt nog vertaald* Configuratie
-
+ Wordt nog vertaald
- * Poorten omleiden
+ * Poorten opnieuw toewijzen
-
+ Wordt nog vertaald
- * Adressen omleiden
+ * Adressen opnieuw toewijzen
-
-
-
-
-
-
-
-
- Chern
- Lee
- Bijgedragen door
-
-
-
- * De inetd
- super-server
-
-
- * Overzicht
-
-
-
-
-
- * Instellingen
-
-
-
-
-
- * Command-line opties
-
-
-
-
-
- * inetd.conf
-
-
-
-
-
- * Beveiliging
-
-
-
-
-
- * Diversen
-
-
+ Wordt nog vertaald* Parallel Line IP (PLIP)
+ Wordt nog vertaald
+
- * Een parallele kabel creeëren
+ * Een paralelle kabel creeëren
-
+ Wordt nog vertaald
- * PLIP opzetten
+ * PLIP Opzetten
-
+ Wordt nog vertaaldAaronKaplanOrigineel geschreven door TomRhodes
- Herstructureerd en toegevoegd door
+ * Herstructureerd en toegevoegd door
+
+
+
+
+ Brad
+ Davis
+ Uitgebreid door
+
* IPv6
+ Wordt nog vertaald
+
- * Achtergrond op IPv6 adressen
+ * Achtergrond over IPv6 adressen
-
+ Wordt nog vertaald* IPv6 adressen lezen
-
+ Wordt nog vertaald* Verbinding krijgen
-
+ Wordt nog vertaald* DNS in de IPv6 wereld
-
+ Wordt nog vertaald
+
+
+
+ * De benodigde wijzigingen doorvoeren in
+ /etc/rc.conf
+
+ Wordt nog vertaald
+
+
+ * IPv6 cliënt instellingen
+
+ Wordt nog vertaald
+
+
+
+ * IPv6 Router/Gateway instellingen
+
+ Wordt nog vertaald
+
+
+
+
+ * Router advertentie en automatische host
+ configuratie
+
+ Wordt nog vertaaldHartiBrandtBijgedragen door
- * ATM op &os; 5.X
+
+ * Asynchronous Transfer Mode (ATM) op &os; 5.X
+
+ Wordt nog vertaald
- * Klassieke ip's configureren over ATM (PVCs)
+ * Klassiek IP configuren over ATM (PVCs)
+
+ Wordt nog vertaald
- * Volledig ingeschakelde configuraties
+ * Een volledig geschakelde configuratie
-
+ Wordt nog vertaald
diff --git a/nl_NL.ISO8859-1/books/handbook/book.sgml b/nl_NL.ISO8859-1/books/handbook/book.sgml
index a4786818d0..3afbeb9649 100644
--- a/nl_NL.ISO8859-1/books/handbook/book.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/book.sgml
@@ -1,260 +1,341 @@
-%man;
-
-%bookinfo;
-
-
-%freebsd;
+
+%books.ent;
+ %txtfiles;
%chapters;
-
-%authors;
-
-%teams;
- %mailing-lists;
- %newsgroups;
-
-%trademarks;
- %txtfiles;
-
-%urls;
+
+
%pgpkeys;
]>
- FreeBSD Handboek
+ &os; Handboek
- The FreeBSD Dutch Documentation Project
+ The &os; Dutch Documentation ProjectJuni 20041995199619971998199920002001200220032004
- The FreeBSD Dutch Documentation Project
+ The &os; Dutch Documentation Project
&bookinfo.legalnotice;
&tm-attrib.freebsd;
&tm-attrib.3com;
&tm-attrib.3ware;
&tm-attrib.arm;
&tm-attrib.adaptec;
&tm-attrib.adobe;
&tm-attrib.apple;
&tm-attrib.corel;
&tm-attrib.creative;
&tm-attrib.cvsup;
&tm-attrib.heidelberger;
&tm-attrib.ibm;
&tm-attrib.ieee;
&tm-attrib.intel;
&tm-attrib.intuit;
&tm-attrib.linux;
&tm-attrib.lsilogic;
&tm-attrib.m-systems;
&tm-attrib.macromedia;
&tm-attrib.microsoft;
&tm-attrib.netscape;
&tm-attrib.nexthop;
&tm-attrib.opengroup;
&tm-attrib.oracle;
&tm-attrib.powerquest;
&tm-attrib.realnetworks;
&tm-attrib.redhat;
&tm-attrib.sap;
&tm-attrib.sun;
&tm-attrib.symantec;
&tm-attrib.themathworks;
&tm-attrib.thomson;
&tm-attrib.usrobotics;
&tm-attrib.vmware;
&tm-attrib.waterloomaple;
&tm-attrib.wolframresearch;
&tm-attrib.xfree86;
&tm-attrib.xiph;
&tm-attrib.general;
Welkom bij &os;! Dit handboek behandelt de installatie en
- het dagelijks gebruik van
+ het dagelijks gebruik van
&os; &rel2.current;-RELEASE en
&os; &rel.current;-RELEASE. Aan deze
handleiding wordt nog gewerkt, en is het resultaat van het werk
van veel mensen. Veel hoofdstukken of paragrafen bestaan nog
- niet en wat bestaat dient soms nog bijgewerkt te worden. Als je
- mee wilt helpen aan dit project stuur dan een mail naar de
- &a.doc;. De meest recente versie van dit document kan je vinden
- op de
- &os; web site. Je kunt het ook downloaden in veel
- verschillende formaten en compressiewijzen van de &os; website. Het
+ kan ook gedownload worden in veel verschillende formaten en
+ compressiewijzen van de &os; FTP
- server
- of een van de vele
- mirror sites.
- Als je liever een gedrukt exemplaar van het handboek hebt, koop
- het dan bij de
- FreeBSD Mall.
- Je kunt het handboek ook
-
- doorzoeken.
+ server of een van de vele mirror sites. Een gedrukt
+ exemplaar van het handboek is te koop bij de &os; Mall
+ (Engels). Het handboek kan ook doorzocht
+ worden..
&chap.preface;
BeginnenDit deel van het &os; handboek is voor gebruikers en
- beheerders die net beginnen met &os;. Deze hoofdstukken:
+ beheerders die net beginnen met &os;. Deze
+ hoofdstukken:
- Geven je een inleiding in &os;.
+ Geven een inleiding in &os;;
- Leiden je door het installatieproces.
+ Lichten het installatieproces toe;
- Leren je de &unix; basisbegrippen en grondslag.
+ Bespreken de &unix; basisbegrippen en grondslag;
- Tonen je hoe je de vele aanvullende applicaties kan
- installeren die beschikbaar zijn voor FreeBSD.
+ Tonen hoe de vele aanvullende applicaties
+ voor &os; geïnstalleerd kunnen worden;
- Stellen je voor aan X, het venstersysteem van &unix;
- en gaan uitvoerig in op hoe je een desktop omgeving instelt
- die je helpt productiever te zijn.
+ Introduceren X, het venstersysteem van &unix;
+ en gaan uitvoerig in op hoe een bureaubladomgeving wordt
+ ingesteld die een gebruiker helpt productiever te
+ zijn.
- We hebben geprobeerd het aantal vooruitwijzingen tot een
- minimum te beperken zodat je het handboek van begin tot einde
- kunt lezen zonder dat je hoeft te bladeren.
+ Er is geprobeerd het aantal vooruitwijzingen tot een
+ minimum te beperken zodat het handboek van begin tot einde
+ gelezen kan worden zonder bladeren.
+
+
+
+
+
+
+
+
+
+
+ Algemene Taken
+
+
+ Na de inleiding gaat dit deel van het &os; handboek over
+ een aantal vaak gebruikte mogelijkheden van &os;. De volgende
+ hoofdstukken:
+
+
+
+ Geven een inleiding in populaire en handige desktop
+ toepassingen: browsers, productieviteitsgereedschappen,
+ documentviewers, etc;
+
+
+
+ Geven een inleiding in een aantal
+ multimediatoepassingen die in &os; beschikbaar zijn;
+
+
+
+ Geven uitleg over het proces waarmee een aangepaste
+ kernel voor &os; kan worden gemaakt om extra functionaliteit
+ aan een systeen toe te voegen;
+
+
+
+ Beschrijven gedetailleerd het afdruksysteem, zowel voor
+ met een desktop verbonden als met het netwerk verbinden
+ printers;
+
+
+
+ Beschrijven hoe applicaties voor Linux op &os; kunnen
+ draaien.
+
+
+
+
+ In een aantal van de hoofdstukken wordt voorkennis
+ aangeraden. Dit staat vermeld in de inleiding van ieder
+ hoofdstuk.
+
-
-
-
-
-
+
+
+
+
+
SysteembeheerDe verdere hoofdstukken van het &os; handboek beslaan alle
- aspecten van het &os; systeembeheer. Ieder hoofdstuk begint met
- een omschrijving van wat je leert als je dat hoofdstuk doorleest
- en ook wat je voorkennis moet zijn voor je die stof tot je kunt
- nemen.
+ aspecten van het &os; systeembeheer. Ieder hoofdstuk begint
+ met een omschrijving van wat de leerstof in een hoofdstuk is en
+ wat de verwachte voorkennis is.
De hoofdstukken zijn ook ontworpen om gelezen te worden als
- je die informatie nodig hebt. Je hoeft ze niet in een bepaalde
- volgorde te lezen en je hoeft ze ook niet gelezen te hebben
- voordat je met &os; aan de slag kunt.
+ de specifieke informatie nodig is. Ze hoeven niet in een
+ bepaalde volgorde gelezen te worden en ze hoeven ook niet
+ gelezen te zijn voordat een gebruiker met &os; aan de slag
+ kan.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+ Netwerkcommunicatie
+
+
+ Als het om servers gaat die hoge prestaties moeten leveren,
+ wordt wereldwijd vaak &os; toegepast. De hoofdstukken in dit
+ deel behandelen:
+
+
+
+ Seriëe communicatie;
+
+
+
+ PPP en PPP over Ethernet;
+
+
+
+ E-mail;
+
+
+
+ Netwerkdiensten;
+
+
+
+ Firewalls.
+
+
+
+ Overig Gevorderd Netwerken.
+
+
+
+ Deze hoofdstukken zijn geschreven om gelezen te worden als
+ de informatie nodig is. Ze hoeven niet allemaal in een
+ bepaalde volgorde gelezen te worden. Ze hoeven ook niet
+ allemaal gelezen te worden om &os; in een netwerkomgeving in te
+ zetten.
+
+
+
+
+
+
+
-
-
-
+
Appendix
-
-
-
-
+
+
+
+
-
-
+
+
&chap.colophon;
diff --git a/nl_NL.ISO8859-1/books/handbook/mac/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/mac/chapter.sgml
index 652c5aa5b2..c8303b345a 100644
--- a/nl_NL.ISO8859-1/books/handbook/mac/chapter.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/mac/chapter.sgml
@@ -1,248 +1,248 @@
TomRhodesGeschreven door * Mandatory Access Control* Samenvatting* Wat zal niet worden behandeld
-
+ * Sleutelwoorden in dit hoofdstuk* Uitleg van MAC* MAC labels begrijpen* Label configuratie* Gebruiker en label instellingen* Netwerk Interfaces en label instellingen* Singlelabel of Multilabel?* Mac beheren met aanpasbare instellingen* Module configuratie* De MAC seeotheruids module* De MAC bsdextended module* Voorbeelden* De MAC ifoff module* De MAC portacl module* Voorbeelden* MAC beleid met labeling mogelijkheden* Voorbereid op labeling beleid* De MAC partitie module* Voorbeelden* De MAC Multi-Level beveilings module* De MAC Biba module* De MAC LOMAC module* Voorbeelden* Implementatie van een beveiligde omgeving met MAC* Het maken van een onbeveiligde gebruikers klasse* Opstarten met de correcte modules* Alle gebruikers naar onveilig zetten* De configuratie afronden* De configuratie testen* Standaard labeling testen* MAC seeotheruids testen* MAC partitie test* Testen van Biba en MLS labels* Een ander voorbeeld: Mac gebruiken om een webserver te
beperken* Een voorbeeld van een MAC zandbak* MAC framework problemen oplossen* De optie kan niet ingesteld
worden voor /* &xfree86; kan niet gestart worden na
MAC
diff --git a/nl_NL.ISO8859-1/books/handbook/security/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/security/chapter.sgml
index 0581f1c695..921edc2da9 100644
--- a/nl_NL.ISO8859-1/books/handbook/security/chapter.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/security/chapter.sgml
@@ -1,615 +1,5312 @@
MatthewDillon
- Veel uit dit hoofdstuk is overgenomen uit de security(7) handboek pagina van
+ Veel uit dit hoofdstuk is overgenomen uit de
+ security(7) handboekpagina van SiebrandMazelandVertaald door
- * Beveiliging
-
- * Overzicht
+ Beveiliging
+
+ beveiliging
-
+
+ Overzicht
+
+ Dit hoofdstuk biedt een basisinleiding in
+ systeembeveiligingsconcepten, een aantal goede basisregels en
+ een paar gevorderde onderwerpen binnen &os;. Veel van de
+ onderwerpen die worden behandeld kunnen ook worden toegepast op
+ systemen en internet in het algemeen. Het internet is niet
+ langer een vriendelijke omgeving waar iedereen
+ een goede buur wil zijn. Het beveiligen van een systeem is
+ onontbeerlijk als gegevens, intellectueel eigendom, tijd en wat
+ dan ook uit de handen van hackers c.s. gehouden moeten
+ worden.
+
+ &os; biedt veel hulpmiddelen en mechanismen om te zorgen
+ voor de integriteit en veiligheid van een systeem en
+ netwerk.
+
+ Na het lezen van dit hoofdstuk weet de lezer:
+
+
+
+ Van basis systeembeveiligingsconcepten in relatie tot
+ &os;;
+
+
+
+ Meer over verschillende versleutelingsmechanismen die
+ beschikbaar zijn in &os; zoals DES en
+ MD5;
+
+
+
+ Hoe eenmalige wachtwoordauthenticatie opgezet kan
+ worden;
+
+
+
+ Hoe TCP Wrappers in te stellen voor
+ gebruik met inetd;
+
+
+
+ Hoe KerberosIV op &os;
+ releases eerder dan 5.0 opgezet kan worden;
+
+
+
+ Hoe Kerberos5 op &os; 5.0
+ release en verder opgezet kan worden;
+
+
+
+ Hoe IPsec wordt ingesteld en hoe een
+ VPN op te zetten tussen &os; en
+ µsoft.windows; machines;
+
+
+
+ Hoe OpenSSH, &os;'s
+ SSH implementatie, in te stellen en te
+ gebruiken;
+
+
+
+ Wat filesysteem ACLs zijn en hoe
+ die te gebruiken;
+
+
+
+ Hoe om te gaan met publicaties van &os;
+ beveiligingswaarschuwingen.
+
+
+
+ Er wordt aangenomen dat de lezer van dit hoofdstuk:
+
+
+
+ Basisbegrip heeft van &os; en internetconcepten.
+
+
+
+ In dit boek worden nog meer onderwerpen met betrekking tot
+ beveiliging beschreven. Zo wordt bijvoorbeeld Verplichte
+ Toegangscontrole (Mandatory Access Control) besproken in en Internet Firewalls in .
- * Introductie
-
-
+ Introductie
+
+ Beveiliging is een taak die begint en eindigt bij de
+ systeembeheerder. Hoewel alle BSD &unix; multi-user systemen
+ enige inherente beveiliging kennen, is het bouwen en onderhouden
+ van additionele beveiligingsmechanismen om de gebruikers
+ eerlijk te houden waarschijnlijk een van de
+ zwaarste taken voor de systeembeheerder. Machines zijn zo veilig
+ als ze gemaakt worden en beveiligingsoverwegingen staan altijd op
+ gespannen voet met de wens om gebruiksvriendelijkheid. &unix;
+ systemen zijn in het algemeen in staat tot het tegelijkertijd
+ uitvoeren van een enorm aantal processen en veel van die
+ processen acteren als server - daarmee wordt bedoeld dat externe
+ entiteiten er verbindingen mee kunnen maken en ertegen kunnen
+ praten. Nu de minicomputers en mainframes van gisteren de
+ desktops van vandaag zijn en computers onderdeel zijn van
+ netwerken en internetwerken, wordt beveiliging nog
+ belangrijker.
+
+ Beveiliging kan het beste ingesteld worden door een gelaagde
+ ui-aanpak. In een notendop zijn er het beste net
+ zoveel lagen van beveiliging als handig is en daarna dient het
+ systeem zorgvuldig gemonitord te worden op inbraken. Het is niet
+ wenselijk beveiliging te overontwerpen, want dat doet afbreuk aan
+ de detectiemogelijkheden en detectie is een van de belangrijkste
+ aspecten van beveiligingsmechanismen. Zo heeft het bijvoorbeeld
+ weinig zin om de schg vlaggen (zie
+ &man.chflags.1;) op ieder binair bestand op een systeem te
+ zetten, omdat het, hoewel dit misschien tijdelijk binaire
+ bestanden beschermt, een inbreker in een systeem ervan kan
+ weerhouden een eenvoudig te detecteren wijziging te maken
+ waardoor beveiligingsmaatregelen de inbreker misschien
+ helemaal niet ontdekken.
+
+ Systeembeveiliging heeft ook te maken met het omgaan met
+ verschillende vormen van aanvallen, zoals een poging om een
+ systeem te crashen of op een andere manier onstabiel te maken,
+ zonder te proberen de root account aan te
+ vallen (break root). Aandachtspunten voor
+ beveiliging kunnen opgesplitst worden in categorieën:
+
+
+
+ Ontzeggen van dienst aanvallen (Denial of
+ service).
+
+
+
+ Gebruikersaccounts compromitteren.
+
+
+
+ root compromitteren via
+ toegankelijke servers.
+
+
+
+ root compromitteren via
+ gebruikersaccounts.
+
+
+
+ Achterdeur creëren (Backdoor).
+
+
+
+
+ DoS aanvallen
+
+ Ontzegging van Dienst (DoS)
+
+
+
+ beveiliging
+
+ Ontzegging van Dienst DoS aanvallen
+
+ (DoS)
+
+
+ Ontzegging van Dienst (DoS)
+
+ Een ontzegging van dienst (DoS) aanval is een techniek die
+ de machine middelen ontneemt. In het algemeen zijn DoS aanvallen
+ brute kracht mechanismen die proberen de machine te crashen of op
+ een andere manier onbruikbaar te maken door de machine of de
+ netwerkcode te overvragen. Sommige DoS aanvallen proberen
+ misbruik te maken van bugs in de netwerkcode om een machine met
+ een enkel pakket te crashen. Zoiets kan alleen gerepareerd
+ worden door een aanpassing aan de kernel te maken. Aanvallen op
+ servers kunnen vaak hersteld worden door op de juiste wijze
+ opties in stellen om de belasting van servers te limiteren in
+ ongunstige omstandigheden. Omgaan met brute kracht aanvallen is
+ lastiger. Zo is een aanval met gefingeerde pakketten
+ (spoofed-packet) vrijwel niet te stoppen, behalve
+ dan door het systeem van internet los te koppelen. Misschien
+ gaat de machine er niet door plat, maar het kan wel een volledige
+ internetverbinding verzadigen.
+
+
+ beveiliging
+
+ account compromittering
+
+
+ Een gecompromitteerde gebruikersaccount komt nog veel vaker
+ voor dan een DoS aanval. Veel systeembeheerders draaien nog
+ steeds standaard telnetd,
+ rlogind,
+ rshd en
+ ftpd servers op hun machines. Deze
+ servers communiceren standaard niet over beveiligde verbindingen.
+ Het resultaat is dat als er een redelijk grote gebruikersgroep
+ is, er altijd wel van een of meer van de gebruikers die van
+ afstand op dat systeem aanmelden (wat toch de meest normale en
+ makkelijke manier is om op een systeem aan te melden) het
+ wachtwoord is afgeluisterd (sniffed). Een
+ oplettende systeembeheerder analyseert zijn logboekbestanden om
+ te zoeken naar verdachte bronadressen, zelfs als het om
+ succesvolle aanmeldpogingen gaat.
+
+ Uitgangspunt moet altijd zijn dat als een aanvaller toegang
+ heeft tot een gebruikersaccount, de aanvaller de
+ root account kan compromitteren. In
+ werkelijkheid is het wel zo dat voor een systeem dat goed
+ beveiligd is en goed wordt onderhouden, toegang tot een
+ gebruikersaccount niet automatisch betekent dat de aanvaller ook
+ root privileges kan krijgen. Het is van
+ belang dit onderscheid te maken, omdat een aanvaller zonder
+ toegang tot root in het algemeen zijn sporen
+ niet kan wissen en op z'n best wat kan rommelen met bestanden van
+ de gebruiker of de machine kan crashen. Gecompromitteerde
+ gebruikersaccounts zijn vrij normaal omdat gebruikers normaliter
+ niet de voorzorgsmaatregelen nemen die systeembeheerders
+ nemen.
+
+
+ beveiliging
+
+ achterdeuren
+
+
+ Systeembeheerders moeten onthouden dat er in potentie heel
+ veel manieren zijn om toegang tot root te
+ krijgen. Een aanvaller zou het
+ root wachtwoord kunnen kennen, een bug kunnen
+ ontdekken in een dienst die onder root
+ draait en daar via een netwerkverbinding op in kunnen breken of
+ een aanvaller zou een probleem kunnen met een suid-root programma
+ dat de aanvaller in staat stelt root te
+ worden als hij eenmaal toegang heeft tot een gebruikersaccount.
+ Als een aanvaller een manier heeft gevonden om
+ root te worden op een machine, dan hoeft
+ hij misschien geen achterdeur (backdoor) te
+ installeren. Veel bekende manieren die zijn gevonden om
+ root te worden, en weer zijn afgesloten,
+ vereisen veel werk van de aanvaller om zijn rommel achter zich op
+ te ruimen, dus de meeste aanvallers installeren een achterdeur.
+ Een achterdeur biedt de aanvaller een manier om makkelijk opnieuw
+ root toegang tot het systeem te krijgen, maar
+ dit geeft de slimme systeembeheerder ook een makkelijke manier om
+ de inbraak te ontdekken. Het onmogelijk maken een achterdeur te
+ installeren zou best wel eens nadelig kunnen zijn voor
+ beveiliging, omdat hiermee nog niet het gat gedicht is waardoor
+ er in eerste instantie is ingebroken.
+
+ Beveiligingsmaatregelen moeten altijd geïmplementeerd
+ worden in een meerlagenmodel en worden als volgt
+ gecategoriseerd:
+
+
+
+ Beveiligen van root en
+ medewerkersaccounts.
+
+
+
+ Beveiligen van root – servers
+ onder root en suid/sgid binaire
+ bestanden.
+
+
+
+ Beveiligen van gebruikersaccounts.
+
+
+
+ Beveiligen van het wachtwoordbestand.
+
+
+
+ Beveiligen van de kern van de kernel, ruwe devices
+ en bestandssystemen.
+
+
+
+ Snel detecteren van ongeoorloofde wijzigingen aan het
+ systeem.
+
+
+
+ Paranoia.
+
+
+
+ In het volgende onderdeel van dit hoofdstuk gaan we dieper in
+ op de bovenstaande punten.
- * &os; beveiligen
+ &os; Beveiligen
-
- * Beveiligen van root en
- medewerkersaccounts.
+
+ beveiliging
-
-
+ &os; beveiligen
+
-
- * Beveiligen van root — servers
- onder root en suid/sgid binaire bestanden
+
+ Commando vs. Protocol
-
-
+ In dit hele document gebruiken we
+ vette tekst om te verwijzen naar een
+ commando of applicatie en een monospaced
+ lettertype om te verwijzen naar specifieke commando's.
+ Protocollen staan vermeld in een normaal lettertype. Dit
+ typografische onderscheid is zinvol omdat bijvoorbeeld ssh
+ zowel een protocol als een commando is.
+
-
- * Beveiligen van gebruikersaccounts
+ In de volgende onderdelen behandelen we de methodes uit de
+ vorige paragraaf om een
+ &os; systeem te beveiligen.
-
+
+ Beveiligen van root en
+ Medewerkersaccounts.
+
+ su
+
+ Om te beginnen: doe geen moeite om medewerkersaccounts
+ te beveiligen als de root account niet
+ beveiligd is. Op de meeste systemen heeft de
+ root account een wachtwoord. Als eerste
+ moet aangenomen worden dat dit wachtwoord
+ altijd gecompromitteerd is. Dit betekent
+ niet dat het wachtwoord verwijderd moet worden. Het wachtwoord
+ is namelijk bijna altijd nodig voor toegang via het console van
+ de machine. Het betekent wel dat het niet mogelijk gemaakt
+ moet worden om het wachtwoord te gebruiken buiten het console
+ om en mogelijk zelfs niet via het &man.su.1; commando. Pty's
+ moeten bijvoorbeeld gemarkeerd staan als onveilig
+ (insecure) in het bestand
+ /etc/ttys zodat direct aanmelden met
+ root via telnet
+ of rlogin niet wordt toegestaan. Als andere
+ aanmelddiensten zoals sshd gebruikt
+ worden, dan hoort direct aanmelden via
+ root uitgeschakeld staat. Dit kan door
+ het bestand /etc/ssh/sshd_config te
+ bewerken en ervoor te zorgen dat
+ PermitRootLogin op NO
+ staat. Dit moet gebeuren voor iedere methode van toegang
+ – diensten zoals FTP worden vaak over het hoofd gezien.
+ Het direct aanmelden van root hoort alleen
+ te mogen via het systeemconsole.
+
+ wheel
+
+ Natuurlijk moet een systeembeheerder de mogelijkheid hebben
+ om root te worden. Daarvoor kunnen een
+ paar gaatjes geprikt worden. Maar dan moet ervoor gezorgd
+ worden dat er voor deze gaatjes extra aanmelden met een
+ wachtwoord nodig is. Eén manier om
+ root toegankelijk te maken is door het
+ toevoegen van de juiste medewerkersaccounts aan de
+ wheel groep (in
+ /etc/group). De medewerkers die lid zijn
+ van de groep wheel mogen
+ su–en naar root.
+ Maak medewerkers nooit native lid van de groep
+ wheel door ze in de groep
+ wheel te plaatsen in
+ /etc/group. Medewerkersaccounts horen lid
+ te zijn van de groep staff en horen dan
+ pas toegevoegd te worden aan de groep
+ wheel in het bestand
+ /etc/group. Alleen medewerkers die ook
+ echt toegang tot root nodig hebben horen
+ in de groep wheel geplaatst te worden.
+ Het is ook mogelijk, door een authenticatiemethode als Kerberos
+ te gebruiken, om het bestand .k5login van
+ Kerberos in de root account te gebruiken
+ om een &man.ksu.1; naar root toe te staan
+ zonder ook maar iemand lid te maken van de groep
+ wheel. Dit is misschien wel een
+ betere oplossing, omdat het
+ wheel-mechanisme het nog steeds mogelijk
+ maakt voor een inbreker root te breken als
+ de inbreker een wachtwoordbestand te pakken heeft gekregen en
+ toegang kan krijgen tot één van de
+ medewerkersaccounts. Hoewel het instellen van het
+ wheel-mechanisme beter is dan niets, is
+ het niet per se de meest veilige optie.
+
+
+
+ Een indirecte manier om de medewerkersaccounts te
+ beveiligen en uiteindelijk ook de toegang tot
+ root, is het gebruik van alternatieve
+ aanmeldmethodes en de wachtwoorden van de medewerkersaccounts,
+ zoals het heet uit te sterren. Met &man.vipw.8;
+ kan iedere instantie van een gecodeerd wachtwoord vervangen
+ worden door een enkel *
+ karakter. Met dit commando worden
+ /etc/master.passwd en de
+ gebruikers/wachtwoord database bijgewerkt om het aanmelden met
+ wachtwoord uit te schakelen.
+
+ Een regel voor een medewerkersaccount als:
+
+ foobar:R9DT/Fa1/LV9U:1000:1000::0:0:Foo Bar:/home/foobar:/usr/local/bin/tcsh
+
+ Zou veranderd moeten worden naar:
+
+ foobar:*:1000:1000::0:0:Foo Bar:/home/foobar:/usr/local/bin/tcsh
+
+ Door deze wijziging kan niet langer normaal aangemeld
+ worden omdat het gecodeerde wachtwoord nooit gelijk is aan de
+ *. Nu dit is gebeurd, moeten
+ medewerkers een ander mechanisme gebruiken om zich te
+ authenticeren zoals &man.kerberos.1; of &man.ssh.1; met een
+ publiek/privaat sleutelpaar. Bij het gebruik van iets als
+ Kerberos moeten gewoonlijk de machines waarop de Kerberos
+ server draait en het desktop werkstation beveiligd worden. Bij
+ het gebruik van een publiek/privaat sleutelpaar met ssh, moet
+ in het algemeen de machine van waar wordt
+ aangemeld beveiligd worden (meestal een werkstation). Het is
+ mogelijk nog een beveiligingslaag toe te voegen door het
+ sleutelpaar te beschermen met een wachtwoord als het aan te
+ maken met &man.ssh-keygen.1;. Door accounts van medewerkers
+ uit te sterren is het ook gegarandeerd dat ze
+ alleen aan kunnen melden door gebruik te maken van de veilige
+ toegangsmethodes die de beheerder heeft ingesteld. Hierdoor
+ worden alle medewerkers gedwongen veilige, gecodeerde
+ verbindingen te gebruiken voor al hun sessies. Daarmee wordt
+ een belangrijk beveiligingsgat gesloten dat veel indringers
+ gebruiken: snuffelen aan het netwerk vanaf een niet-relevante
+ minder veilige machine.
+
+ Meer indirecte beveiligingsmechanismen hebben ook als
+ uitgangspunt dat vanaf een zwaarder beveiligde machine wordt
+ aangemeld op een minder beveiligd systeem. Als een
+ hoofdserver bijvoorbeeld allerlei servers draait, zou het
+ werkstation er geen moeten draaien. Om een werkstation
+ redelijk veilig te laten zijn, dienen er zo min mogelijk
+ servers op te draaien, bij voorkeur zelfs geen en er zou een
+ schermbeveiliging met wachtwoordbeveiliging op moeten draaien.
+ Maar als een aanvaller fysieke toegang heeft tot een
+ werkstation, dan kan hij elke beveiliging die erop is
+ aangebracht omzeilen. Dit probleem dient echt overwogen te
+ worden, net als het feit dat de meeste aanvallen van een
+ afstand plaatsvinden, via het netwerk, door mensen die geen
+ fysieke toegang hebben tot werkstations of servers.
+
+ KerberosIV
+
+ Het gebruik van iets als Kerberos geeft de mogelijkheid
+ om het wachtwoord van de account van een medewerker buiten
+ gebruik te stellen of te wijzigen op één plaats,
+ waarbij het meteen actief is op alle machines waarop die
+ medewerker een account heeft. Als de account van een
+ medewerker gecompromitteerd raakt, moet vooral de mogelijkheid
+ om per direct het wachtwoord voor machines te kunnen aanpassen
+ niet onderschat worden. Met afzonderlijke wachtwoorden kan het
+ veranderen van wachtwoorden op N systemen een puinhoop worden.
+ Met Kerberos kunnen ook wachtwoordrestricties opgelegd worden:
+ het is niet alleen mogelijk om een Kerberos
+ ticket na een bepaalde tijd te laten verlopen,
+ maar het Kerberos systeem kan afdwingen dat de gebruiker na een
+ bepaalde tijd een nieuw wachtwoord kiest (na bijvoorbeeld een
+ maand).
- * Beveiligen van het wachtwoord bestand
+ Beveiligen van root – servers
+ onder root en suid/sgid Binaire
+ Bestanden
+
+ ntalk
+
+ comsat
+
+ finger
+
+ zandbakken
+
+ sshd
+
+ telnetd
+
+ rshd
+
+ rlogind
+
+ Een voorzichtige systeembeheerder draait alleen die servers
+ die nodig zijn, niets meer, niets minder. Bedenk dat
+ servers van derde partijen vaak de meeste neiging hebben tot
+ het vertonen van bugs. Zo staat bijvoorbeeld het draaien van
+ een oude versie van imapd of
+ popper gelijk aan het weggeven van
+ de root account aan de hele wereld. Draai
+ nooit een server die niet zorgvuldig is onderzocht. Veel
+ servers hoeven niet te draaien als root.
+ Zo kunnen de ntalk,
+ comsat en
+ finger daemons bijvoorbeeld draaien
+ in speciale gebruikerszandbakken
+ (sandboxes). Een zandbak
+ is niet perfect, tenzij er heel veel moeite gedaan wordt, maar
+ de meerlagenbenadering blijft bestaan: als iemand via een
+ server die in een zandbak draait weet in te breken, dan moeten
+ ze eerst nog uit de zandbak komen. Hoe groter het aantal lagen
+ is waar een inbreker doorheen moet, hoe kleiner de kans op
+ succes is. root gaten zijn historisch
+ gezien aanwezig geweest in vrijwel iedere server die ooit als
+ root gedraaid heeft, inclusief de
+ basisservers van een systeem. Op een machine waarop mensen
+ alleen aanmelden via sshd en nooit
+ via telnetd of
+ rshd of
+ rlogind dienen die servers
+ uitgeschakeld te worden!
+
+ &os; draait ntalkd,
+ comsat en
+ finger tegenwoordig standaard in een
+ zandbak. Een ander programma dat misschien beter in een
+ zandbak kan draaien is &man.named.8;. In
+ /etc/defaults/rc.conf staat als commentaar
+ welke parameters er nodig zijn om
+ named in een zandbak te draaien.
+ Afhankelijk van of het een nieuwe systeeminstallatie of het
+ bijwerken van een bestaand systeem betreft, worden de speciale
+ gebruikersaccounts die bij die zandbakken horen misschien niet
+ geïnstalleerd. Een voorzichtige systeembeheerder
+ onderzoekt en implementeert zandbakken voor servers waar dat
+ ook maar mogelijk is.
+
+ sendmail
+
+ Er zijn een aantal diensten die vooral niet in een zandbak
+ draaien: sendmail,
+ popper,
+ imapd,
+ ftpd en andere. Voor sommige
+ servers zijn alternatieven, maar dat kost misschien meer tijd
+ dan er te besteden is (gemak dient de mens). Het kan voorkomen
+ dat deze servers als root moeten draaien
+ en dat er vertrouwd moet worden op andere mechanismen om een
+ inbraak via die servers te detecteren.
+
+ De andere grote mogelijkheid voor root
+ gaten in een systeem zijn de suid-root en sgid binaire
+ bestanden die geïnstalleerd zijn op een systeem. Veel van
+ die bestanden, zoals rlogin, staan
+ in /bin, /sbin,
+ /usr/bin of
+ /usr/sbin. Hoewel het niet 100% veilig
+ is, mag aangenomen worden dat de suid en sgid binaire bestanden
+ van een standaardsysteem redelijk veilig zijn. Toch worden er
+ nog wel eens root gaten gevonden in deze
+ bestanden. Zo is er in 1998 een root gat
+ gevonden in Xlib waardoor
+ xterm (die normaliter suid is)
+ kwetsbaar bleek. Een voorzichtige systeembeheerder kiest voor
+ better to be safe than sorry door de suid
+ bestanden die alleen medewerkers hoeven uit te voeren aan een
+ speciale groep toe te wijzen en de suid bestanden die niemand
+ gebruikt te lozen (chmod 000). Een server
+ zonder monitor heeft normaal gezien
+ xterm niet nodig. Sgid bestanden
+ kunnen bijna net zo gevaarlijk zijn. Als een inbreker een
+ sgid-kmem stuk kan krijgen, dan kan hij wellicht
+ /dev/kmem lezen en dus het gecodeerde
+ wachtwoordbestand, waardoor mogelijk ieder account met
+ een wachtwoord besmet is. Een inbreker toegang tot de groep
+ kmem kan krijgen, zou bijvoorbeeld mee
+ kunnen kijken met de toetsaanslagen die ingegeven worden via de
+ pty's, inclusief die pty's die gebruikt worden door gebruikers
+ die via beveiligde methodes aanmelden. Een inbreker die
+ toegang krijgt tot de groep tty kan naar
+ bijna alle tty's van gebruikers schrijven. Als een gebruiker
+ een terminalprogramma of een terminalemulator met een
+ toetsenbordsimulatieoptie draait, dan kan de inbreker in
+ potentie een datastroom genereren die ervoor zorgt dat de
+ terminal van de gebruiker een commando echot, dat dan wordt
+ uitgevoerd door die gebruiker.
+
-
+
+ Beveiligen van Gebruikersaccounts
+
+ Gebruikersaccounts zijn gewoonlijk het meest lastig om te
+ beveiligen. Hoewel er allerlei Draconische maatregelen genomen
+ kunnen worden met betrekking tot de medewerkers en hun
+ wachtwoorden weggesterd kunnen worden, gaat dat
+ waarschijnlijk niet lukken met de gewone gebruikersaccounts.
+ Als er toch voldoende vrijheid is, dan prijst de beheerder zich
+ gelukkig en is het misschien toch mogelijk de accounts
+ voldoende te beveiligen. Als die vrijheid er niet is, dan
+ moeten die accounts gewoon netter gemonitord worden. Het
+ gebruik van ssh en
+ Kerberos voor gebruikersaccounts is
+ problematischer vanwege het extra beheer en de ondersteuning,
+ maar nog steeds een prima oplossing in vergelijking met een
+ gecodeerd wachtwoordbestand.
- * Beveiligen van de kern van de kernel, ruwe devices
- en bestandssystemen
+ Beveiligen van het Wachtwoordbestand
+
+ De enige echte oplossing is zoveel mogelijk wachtwoorden
+ * maken en ssh
+ of Kerberos gebruiken voor toegang
+ tot die accounts. Hoewel een gecodeerd wachtwoordbestand
+ (/etc/spwd.db) alleen gelezen kan worden
+ door root, is het wel mogelijk dat een
+ inbreker leestoegang krijgt tot dat bestand zonder dat de
+ aanvaller root-schrijftoegang krijgt.
+
+ Beveiligingsscripts moeten altijd controleren op en
+ rapporteren over wijzigingen in het wachtwoordbestand (zie ook
+ Bestandsintegriteit
+ Controleren hieronder).
+
-
+
+ Beveiligen van de Kern van de Kernel, Ruwe Devices en
+ Bestandssystemen
+
+ Als een aanvaller toegang krijgt tot
+ root dan kan hij ongeveer alles, maar er
+ zijn een paar slimmigheidjes. Zo hebben bijvoorbeeld de meeste
+ moderne kernels een ingebouwde pakketsnuffeldriver
+ (packet sniffing). Bij &os; is dat het
+ bpf device. Een inbreker zal in het
+ algemeen proberen een pakketsnuffelaar te draaien op een
+ gecompromitteerde machine. De inbreker hoeft deze mogelijkheid
+ niet te hebben en bij de meeste systemen is het niet verplicht
+ het bpf device mee te
+ compileren.
+
+ sysctl
+
+ Maar zelfs als het bpf
+ device is uitgeschakeld, dan zijn er nog
+ /dev/mem en
+ /dev/kmem. De inbreker kan namelijk nog
+ schrijven naar ruwe diskdevices. En er is ook nog een optie
+ in de kernel die modulelader (module loader)
+ heet, &man.kldload.8;. Een ondernemende inbreker kan een KLD
+ module gebruiken om zijn eigen bpf
+ device of een ander snuffeldevice te installeren in een
+ draaiende kernel. Om deze problemen te voorkomen, moet de
+ kernel op een hoger veiligheidsniveau draaien, ten minste
+ securelevel 1. Het securelevel wordt ingesteld met
+ sysctl op de
+ kern.securelevel variabele. Als securelevel
+ op 1 staat, is het niet langer mogelijk te schrijven naar ruwe
+ devices en speciale chflags vlaggen als
+ schg worden dan afgedwongen. Ook dient de
+ vlag schg gezet te worden op kritische
+ opstartbestanden, mappen en scriptbestanden. Alles dat wordt
+ uitgevoerd voordat het securelevel wordt ingesteld. Dit is
+ misschien wat overdreven en het wordt lastiger een systeem te
+ vernieuwen als dat in een hoger securelevel draait. Er is een
+ compromis mogelijk door het systeem in een hoger securelevel te
+ draaien maar de schg vlag niet op alle
+ systeembestanden en mappen te zetten die maar te vinden zijn.
+ / en /usr zouden ook
+ als alleen-lezen gemount kunnen worden. Het is nog belangrijk
+ om op te merken dat als de beheerder te Draconisch omgaat
+ met dat wat hij wil beschermen, hij daardoor kan veroorzaken
+ dat die o-zo belangrijke detectie van een inbraak wordt
+ misgelopen.
- * Bestandsintegriteit Controleren: Binaire Bestanden,
- Configuratie Bestanden, Etc.
-
-
+ Bestandsintegriteit Controleren: Binaire Bestanden,
+ Instellingenbestanden, Etc.
+
+ Als puntje bij paaltje komt kan de kern van een systeem
+ maar tot een bepaald punt beveiligd worden zonder dat het
+ minder prettig werken wordt. Zo werk het zetten van de
+ schg bit met chflags op
+ de meeste bestanden in / en
+ /usr waarschijnlijk averechts, omdat,
+ hoewel de bestanden beschermd zijn, ook het venster waarin
+ detectie plaats kan vinden is gesloten. De laatste laag van
+ beveiliging is waarschijnlijk de meest belangrijke: detectie.
+ Alle overige beveiliging is vrijwel waardeloos (of nog erger:
+ geeft een vals gevoel van veiligheid) als een mogelijke inbraak
+ niet gedetecteerd kan worden. Een belangrijk doel van het
+ meerlagenmodel is het vertragen van een aanvaller, nog meer dan
+ hem te stoppen, om de detectiekant van de vergelijking de kans
+ te geven hem op heterdaad te betrappen.
+
+ De beste manier om te zoeken naar een inbraak is zoeken
+ naar gewijzigde, missende of onverwachte bestanden. De beste
+ manier om te zoeken naar gewijzigde bestanden is vanaf een
+ ander (vaak gecentraliseerd) systeem met beperkte toegang.
+ Met zelfgeschreven scripts op dat extra beveiligde systeem met
+ beperkte toegang ben is een beheerder vrijwel onzichtbaar voor
+ mogelijke aanvallers en dat is belangrijk. Om het nut te
+ maximaliseren moeten in het algemeen dat systeem met beperkte
+ toegang best veel rechten gegeven worden op de andere machines
+ in het netwerk, vaak via een alleen-lezen NFS export van de
+ andere machines naar het systeem met beperkte toegang of door
+ ssh sleutelparen in te stellen om
+ het systeem met beperkte toegang een
+ ssh verbinding te laten maken met de
+ andere machines. Buiten het netwerkverkeer, is NFS de minst
+ zichtbare methode. Hierdoor kunnen de bestandssystemen
+ op alle client machines vrijwel ongezien gemonitord worden.
+ Als de server met beperkte toegang verbonden is met de client
+ machines via een switch, dan is de NFS methode vaak de beste
+ keus. Als de server met beperkte toegang met de andere
+ machines is verbonden via een hub of door meerdere routers, dan
+ is de NFS methode wellicht niet veilig genoeg (vanuit een
+ netwerk standpunt) en kan beter ssh
+ gebruikt worden, ondanks de audit-sporen die
+ ssh achterlaat.
+
+ Als de machine met beperkte toegang eenmaal minstens
+ leestoegang heeft tot een clientsysteem dat het moet gaan
+ monitoren, dan moeten scripts gemaakt worden om dat monitoren
+ ook echt uit te voeren. Uitgaande van een NFS mount, kunnen
+ de scripts gebruik maken van eenvoudige systeem hulpprogramma's
+ als &man.find.1; en &man.md5.1;. We adviseren minstens
+ één keer per dag een md5 te maken van alle
+ bestanden op de clientmachine en van instellingenbestanden als
+ in /etc en
+ /usr/local/etc zelfs vaker. Als er
+ verschillen worden aangetroffen ten opzichte van de basis md5
+ informatie op het systeem met beperkte toegang, dan hoort het
+ script te gillen om een beheerder die het moet gaan uitzoeken.
+ Een goed beveiligingsscript controleert ook op onverwachte suid
+ bestanden en op nieuwe en verwijderde bestanden op
+ systeempartities als / en
+ /usr.
+
+ Als ssh in plaats van NFS wordt
+ gebruikt, dan is het schrijven van het script lastiger. Dan
+ moeten de scripts met scp naar de client
+ verplaatst worden om ze uit te voeren, waardoor ze zichtbaar
+ worden. Voor de veiligheid dienen ook de binaire bestanden die
+ het script gebruikt, zoals &man.find.1;, gekopieerd te
+ worden. De ssh client op de client
+ zou al gecompromitteerd kunnen zijn. Het is misschien
+ noodzakelijk ssh te gebruiken over onveilige verbindingen, maar
+ dat maakt alles een stuk lastiger.
+
+ Een goed beveiligingsscript voert ook controles uit op de
+ instellingenbestanden van gebruikers en medewerkers:
+ .rhosts, .shosts,
+ .ssh/authorized_keys, enzovoort…
+ Dat zijn bestanden die buiten het bereik van de
+ MD5 controle vallen.
+
+ Als gebruikers veel diskruimte hebben, dan kan het te lang
+ duren om alle bestanden op deze partitie te controleren. In dat
+ geval is het verstandig de mount vlaggen zo in te stellen dat
+ suid binaire bestanden en devices op die partities niet zijn
+ toegestaan. Zie daarvoor de nodev en
+ nosuid opties (zie &man.mount.8;). Die
+ partities moeten wel toch nog minstens eens per week doorzocht
+ worden, omdat het doel van deze beveiligingslaag het ontdekken
+ van een inbraak is, of die nu succesvol is of niet.
+
+ Procesverantwoording (zie &man.accton.8;) kost relatief
+ gezien weinig en kan bijdragen aan een evaluatie mechanisme
+ voor na inbraken. Het is erg handig om uit te zoeken hoe
+ iemand precies heeft ingebroken op het systeem, mits het
+ bestand nog onbeschadigd is na de inbraak.
+
+ Tenslotte horen beveiligingsscripts de logboekbestanden te
+ verwerken en de logboekbestanden zelf horen zo veilig mogelijk
+ tot stand te komen. remote syslog kan erg
+ zinvol zijn. Een aanvaller probeert zijn sporen uit te wissen
+ en logboekbestanden zijn van groot belang voor een
+ systeembeheerder als het gaat om uitzoeken wanneer en hoe er is
+ ingebroken. Een manier om logboekbestanden veilig te stellen
+ is door het systeemconsole via een seriële poort aan te
+ sluiten op een veilige machine en zo continu informatie te
+ verzamelen.
- * Paranoia
-
-
+ Paranoia
+
+ Een beetje paranoia is niet verkeerd. Eigenlijk kan de
+ systeembeheerder zoveel beveiligingsopties inschakelen als hij
+ wil, als deze maar geen impact hebben op het gebruiksgemak en
+ de beveiligingsopties die wel impact
+ hebben op het gebruiksgemak kunnen ingeschakeld worden als daar
+ zorgvuldig mee wordt omgegaan. Nog belangrijker is misschien
+ dat er een juiste combinatie wordt gevonden. Als de
+ aanbevelingen uit dit document woord voor woord worden
+ opgevolgd, dan worden daarmee de methodes aan een toekomstige
+ aanvaller verraden, die ook toegang heeft tot dit
+ document.
- * Ontzeggen van dienst aanvallen (Denial of
- service)
-
-
+ Ontzeggen van Dienst Aanvallen
+
+ Ontzegging van Dienst (DoS)
+
+ In deze paragraaf worden Ontzeggen van Dienst aanvallen
+ (Denial of Service of DoS) behandeld. Een DoS
+ aanval wordt meestal uitgevoerd als pakketaanval. Hoewel er
+ weinig gedaan kan worden tegen de huidige aanvallen met
+ gefingeerde pakketten die een netwerk kunnen verzadigen, kan
+ de schade geminimaliseerd worden door ervoor te zorgen dat
+ servers er niet door plat gaan.
+
+
+
+ Limiteren van server forks.
+
+
+
+ Limiteren van springplank (springboard)
+ aanvallen (ICMP response aanvallen, ping broadcast,
+ etc.).
+
+
+
+ Kernel Route Cache.
+
+
+
+ Een veelvoorkomende DoS aanval tegen een server die forkt
+ is er een die probeert processen, file descriptors en geheugen
+ te gebruiken tot de machine het opgeeft.
+ inetd (zie &man.inetd.8;) kent een
+ aantal instellingen om dit type aanval af te zwakken. Hoewel
+ het mogelijk is ervoor te zorgen dat een machine niet plat
+ gaat, is het in het algemeen niet mogelijk te voorkomen dat de
+ dienstverlening door de aanval wordt verstoord. Meer is te
+ lezen in de handleiding van inetd
+ en het advies is in het bijzonder aandacht aan de
+ , en
+ opties te besteden. Aanvallen met gefingeerde
+ IP adressen omzeilen de
+ optie naar inetd, dus in het
+ algemeen moet een combinatie van opties gebruikt worden.
+ Sommige op zichzelf staande servers hebben parameters waarmee
+ het aantal forks gelimiteerd kan worden.
+
+ Sendmail heeft de optie
+ die veel beter blijkt te
+ werken dan het gebruik van de opties van sendmail waarmee de
+ werklast gelimitteerd kan worden. De parameter
+ MaxDaemonChildren moet zodanig ingesteld
+ worden dat als sendmail start, hij
+ hoog genoeg is om de te verwachten belasting aan te kunnen,
+ maar niet zo hoog is dat de computer het aantal instanties van
+ sendmails niet aankan zonder plat te
+ gaan. Het is ook verstandig om sendmail in de wachtrij modus
+ () te draaien en de
+ daemon (sendmail -bd) los te koppelen van de
+ verwerking van de wachtrij (sendmail -q15m).
+ Als de verwerking van wachtrij real-time moet, kunnen de
+ tussenpozen voor verwerking verkort worden door deze
+ bijvoorbeeld op in te stellen, maar dan
+ is een redelijke instelling van
+ MaxDaemonChildren van belang om
+ die sendmail te beschermen tegen
+ trapsgewijze fouten (cascade failures).
+
+ Syslogd kan direct aangevallen
+ worden en het is sterk aan te raden de
+ optie te gebruiken waar dat ook maar mogelijk is en anders de
+ optie.
+
+ Er dient voorzichtig omgesprongen te worden met diensten
+ die terugverbinden zoals
+ tcpwrapper's reverse-identd die
+ direct aangevallen kan worden. In het algemeen is het hierom
+ onverstandig gebruik te maken van de reverse-ident optie van
+ tcpwrappers.
+
+ Het is een goed idee om interne diensten af te schermen
+ voor toegang van buitenaf door ze te firewallen op de routers
+ aan de rand van een netwerk (border routers).
+ Dit heeft als achtergrond dat verzadigingsaanvallen voorkomen
+ van buiten het LAN voorkomen kunnen worden. Daarmee wordt geen
+ aanval op root via het netwerk en die
+ diensten daaraan voorkomen. Er dient altijd een exclusieve
+ firewall te zijn, d.w.z. firewall alles
+ behalve poorten A, B, C, D en M-Z.
+ Zo worden alle lage poorten gefirewalled behalve die voor
+ specifieke diensten als named (als
+ er een primary is voor een zone),
+ ntalkd,
+ sendmail en andere diensten die
+ vanaf internet toegankelijk moeten zijn. Als de firewall
+ andersom wordt ingesteld, als een inclusieve of tolerante
+ firewall, dan is de kans groot dat er wordt vergeten een aantal
+ diensten af te sluiten of dat er een nieuwe
+ interne dienst wordt toegevoegd en de firewall niet wordt
+ bijgewerkt. Er kan nog steeds voor gekozen worden de hoge
+ poorten open te zetten, zodat een tolerante situatie ontstaat,
+ zonder de lage poorten open te stellen. &os; biedt ook de
+ mogelijkheid een reeks poortnummers die gebruikt worden voor
+ dynamische verbindingen in te stellen via de verscheidene
+ net.inet.ip.portrange
+ sysctls (sysctl -a | fgrep
+ portrange), waardoor ook de complexiteit van de
+ firewall instellingen kan vereenvoudigen. Zo kan bijvoorbeeld
+ een normaal begin tot eindbereik ingesteld worden van 4000 tot
+ 5000 en een hoog poortbereik van 49152 tot 65535. Daarna kan
+ alles onder 4000 op de firewall geblokkeerd worden (met
+ uitzondering van bepaalde poorten die vanaf internet bereikbaar
+ moeten zijn natuurlijk).
+
+ ICMP_BANDLIM
+
+ Een andere veelvoorkomende DoS aanval is de springplank
+ aanval: een server zo aanvallen dat de respons van die server
+ de server zelf, het lokale netwerk of een andere machine
+ overbelast. De meest voorkomende aanval van dit type is de
+ ICMP ping broadcast aanval. De aanvaller
+ fingeert ping pakketten die naar het broadcast adres van het
+ LAN worden gezonden met als bron het IP adres
+ van de machine die hij eigenlijk aan wil vallen. Als de routers
+ aan de rand van het netwerk niet zijn ingesteld om een ping aan
+ een broadcast adres te blokkeren, dan kan het LAN genoeg
+ antwoorden produceren om de verbinding van het slachtoffer (het
+ gefingeerde bronadres) te verzadigen, zeker als de aanvaller
+ hetzelfde doet met tientallen andere netwerken.
+ Broadcastaanvallen met een volume van meer dan 120 megabit zijn
+ al voorgekomen. Een tweede springplank aanval is er een tegen
+ het ICMP foutmeldingssysteem. Door een pakket te maken waarop
+ een ICMP foutmelding komt, kan een aanvaller de inkomende
+ verbinding van een server verzadigen en de uitgaande verbinding
+ wordt verzadigd door de foutmeldingen. Dit type aanval kan een
+ server ook laten crashen, zeker als de server de ICMP
+ antwoorden niet zo snel kwijt kan als ze ontstaan. De kernel
+ van &os; kent een nieuwe compileeroptie
+ waarmee de effectiviteit van dit
+ type aanvallen afneemt. De laatste belangrijke klasse
+ springplankaanvallen hangt samen met een aantal interne
+ diensten van inetd zoals de UDP echo
+ dienst. Een aanvaller fingeert eenvoudigweg een UDP pakket met
+ als bronadres de echopoort van Server A en als bestemming de
+ echopoort van Server B, waar Server A en B allebei op een LAN
+ staan. Die twee servers gaan dat pakket dan heen en weer
+ kaatsen. Een aanvaller kan beide servers overbelasten door een
+ aantal van deze pakketten te injecteren. Soortgelijke problemen
+ kunnen ontstaan met de chargen
+ poort. Een competente systeembeheerder zal al deze interne
+ inetd test-diensten
+ uitschakelen.
+
+ Gefingeerde pakketten kunnen ook gebruikt worden om de
+ kernel route cache te overbelasten. Raadpleeg daarvoor de
+ net.inet.ip.rtexpire,
+ rtminexpire en rtmaxcache
+ sysctl parameters. Een aanval met
+ gefingeerde pakketten met een willekeurig bron IP zorgt ervoor
+ dat de kernel een tijdelijke cached route maakt in de
+ routetabel, die uitgelezen kan worden met netstat -rna
+ | fgrep W3. Deze routes hebben een levensduur van
+ ongeveer 1600 seconden. Als de kernel merkt dat de cached
+ routetabel te groot is geworden, dan wordt
+ rtexpire dynamisch verkleind, maar deze
+ waarde wordt nooit lager dan rtminexpire.
+ Er zijn twee problemen:
+
+
+
+ De kernel reageert niet snel genoeg als een laag
+ belaste server wordt aangevallen.
+
+
+
+ rtminexpire is niet laag genoeg om
+ de kernel de aanval te laten overleven.
+
+
+
+ Als servers verbonden zijn met het internet via een E3
+ of sneller, dan is het verstandig om handmatig
+ rtexpire en rtminexpire
+ aan te passen via &man.sysctl.8;. Als de een van de parameters
+ op nul wordt gezet, dan crasht de machine. Het instellen van
+ beide waarden op 2 seconden is voldoende om de routetabel
+ tegen een aanval te beschermen.
- * Aandachtspunten voor Toegang met Kerberos en SSH
-
-
+ Aandachtspunten voor Toegang met
+ Kerberos en
+ SSH
+
+ ssh
+
+ KerberosIV
+
+ Er zijn een aantal aandachtspunten die in acht genomen
+ moeten worden als Kerberos of ssh gebruikt worden. Kerberos V
+ is een prima authenticatieprotocol, maar er zitten bugs in de
+ kerberos versies van telnet en
+ rlogin waardoor ze niet geschikt
+ zijn voor binair verkeer. Kerberos codeert standaard sessie
+ niet, tenzij de optie wordt gebruikt.
+ ssh codeert standaard wel
+ alles.
+
+ ssh werkt prima, maar het stuurt coderingssleutels
+ standaard door. Dit betekent dat als gegeven een veilig
+ werkstation met sleutels die toegang geven tot de rest van het
+ systeem en ssh wordt gebruikt om verbinding te maken met een
+ onveilige machine, die sleutels gebruikt kunnen worden. De
+ sleutels zelf zijn niet bekend, maar ssh stelt een
+ doorstuurpoort in zolang als een gebruikers aangemeld blijft.
+ Als de aanvaller roottoegang heeft op de
+ onveilige machine, dan kan hij die poort gebruiken om toegang
+ te krijgen tot alle machines waar de sleutels van de gebruiker
+ toegang toe geven.
+
+ Het advies is ssh in combinatie met Kerberos te gebruiken
+ voor het aanmelden door medewerkers wanneer dat ook maar
+ mogelijk is. ssh kan gecompileerd
+ worden met Kerberos ondersteuning. Dit vermindert de kans op
+ blootstelling van ssh sleutels en beschermt tegelijkertijd
+ de wachtwoorden met Kerberos. ssh sleutels zouden alleen
+ gebruikt moeten worden voor geautomatiseerde taken vanaf
+ veilige machines (iets waar Kerberos ongeschikt voor is). Het
+ advies is om het doorsturen van sleutels uit te schakelen in de
+ ssh instellingen of om de from=IP/DOMAIN
+ optie te gebruiken die ssh in staat stelt het bestand
+ authorized_keys te gebruiken om de
+ sleutel alleen bruikbaar te maken voor entiteiten die zich
+ aanmelden vanaf vooraf aangewezen machines.BillSwingleDelen geschreven en herschreven door
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
+
+
- * DES, MD5 en Crypt
-
- * Je Crypt Mechanisme Herkennen
+ DES, MD5 en Crypt
+
+
+ beveiliging
+
+ crypt
+
+
+ crypt
+
+ DES
+
+ MD5
+
+ Iedere gebruiker op een &unix; systeem heeft een wachtwoord
+ bij zijn account. Het lijkt voor de hand liggend dat deze
+ wachtwoorden alleen bekend horen te zijn bij de gebruiker en het
+ eigenlijke besturingssysteem. Om deze wachtwoorden geheim te
+ houden, zijn ze gecodeerd in een eenweg hash
+ (one-way hash), wat betekent dat ze eenvoudig
+ gecodeerd kunnen worden maar niet gedecodeerd. Met andere
+ woorden, wat net gesteld werd is helemaal niet waar: het
+ besturingssysteem kent het echte wachtwoord
+ niet. De enige manier om een wachtwoord in
+ platte tekst te verkrijgen, is door er met brute
+ kracht naar te zoeken in alle mogelijke wachtwoorden.
+
+ Helaas was DES, de Data Encryption Standard, de enige
+ manier om wachtwoorden veilig te coderen toen &unix; ontstond.
+ Dit was geen probleem voor gebruikers in de VS, maar omdat
+ de broncode van DES niet geëxporteerd mocht worden moest
+ &os; een manier vinden om zowel te gehoorzamen aan de wetten van
+ de VS als aansluiting te houden bij alle andere &unix; varianten
+ die nog steeds DES gebruikten.
+
+ De oplossing werd gevonden in het splitsen van de
+ coderingsbibliotheken zodat gebruikers in de VS de DES
+ bibliotheken konden installeren en gebruiken en internationale
+ gebruikers een coderingsmethode konden gebruiken die
+ geëxporteerd mocht worden. Zo is het gekomen dat &os; MD5
+ is gaan gebruiken als coderingsmethode. Van MD5 wordt aangenomen
+ dat het veiliger is dan DES, dus de mogelijkheid om DES te
+ installeren is vooral beschikbaar om aansluiting te kunnen
+ houden.
-
+
+ Het Crypt Mechanisme Herkennen
+
+ Voor &os; 4.4 was libcrypt.a een
+ symbolic link die wees naar de bibliotheek die gebruikt werd voor
+ codering. In &os; 4.4 veranderde libcrypt.a
+ zodat er een instelbare wachtwoordhash bibliotheek kwam. Op dit
+ moment ondersteunt de bibliotheek DES, MD5 en Blowfish
+ hashfuncties. Standaard gebruikt &os; MD5 om wachtwoorden te
+ coderen.
+
+ Het is vrij makkelijk om uit te vinden welke
+ coderingsmethode &os; op een bepaald moment gebruikt. De
+ gecodeerde wachtwoorden in
+ /etc/master.passwd bekijken is een manier.
+ Wachtwoorden die gecodeerd zijn met MD5 zijn langer dan wanneer
+ ze gecodeerd zijn met DES hash. Daarnaast beginnen ze met de
+ karakters $1$. Wachtwoorden
+ die beginnen met $2a$ zijn
+ gecodeerd met de Blowfish hashfunctie. DES password strings
+ hebben geen bijzondere kenmerken, maar ze zijn korter dan MD5
+ wachtwoorden en gecodeerd in een 64-karakter alfabet waar geen
+ $ karakter in zit. Een relatief korte
+ string die niet begint met een dollar teken is dus
+ waarschijnlijk een DES wachtwoord.
+
+ Het wachtwoord formaat voor nieuwe wachtwoorden wordt
+ ingesteld met de passwd_format
+ aanmeldinstelling in /etc/login.conf waar
+ des, md5 of
+ blf mag staan. Zie de &man.login.conf.5;
+ handboekpagina voor meer informatie over
+ aanmeldinstellingen.
- * Eenmalige Wachtwoorden
+ Eenmalige Wachtwoorden
+
+ eenmalige wachtwoorden
+
+
+ beveiliging
+
+ eenmalige wachtwoorden
+
+
+ S/Key is een eenmalige wachtwoord methode die gebaseerd is op
+ de eenweg hashfunctie. &os; gebruikt een MD4 hash om aansluiting
+ te houden, maar andere systemen gebruiken ook wel MD5 en DES-MAC.
+ S/Key is al een onderdeel van het &os; basissysteem vanaf versie
+ 1.1.5 en wordt ook in een groeiend aantal andere
+ besturingssystemen gebruikt. S/Key is een geregistreerd
+ handelsmerk van Bell Communications Research, Inc.
+
+ Vanaf versie 5.0 van &os; is S/Key vervangen door OPIE
+ (Eenmalige Wachtwoorden in Alles - One-time Passwords In
+ Everything). OPIE gebruikt standaard een MD5 hash.
+
+ Hier worden drie verschillende soorten wachtwoorden
+ besproken. De eerste is het normale &unix; of Kerberos
+ wachtwoord. Dit heet het &unix; wachtwoord. Het
+ tweede type is een eenmalig wachtwoord dat wordt gemaakt met het
+ S/Key programma key of het OPIE
+ programma &man.opiekey.1; en dat wordt geaccepteerd door
+ keyinit of &man.opiepasswd.1; en de
+ aanmeldprocedure. Dit heet het eenmalige
+ wachtwoord. Het laatste type wachtwoord is het
+ wachtwoord dat wordt opgegeven aan de key/
+ opiekey programma's (en soms aan de
+ keyinit / opiepasswd
+ programma's) die gebruikt worden om eenmalige wachtwoorden te
+ maken. Dit type heet geheim wachtwoord of gewoon
+ een wachtwoord zonder toevoeging.
+
+ Het geheime wachtwoord heeft niets te maken met het &unix;
+ wachtwoord; ze kunnen hetzelfde zijn, dat wordt afgeraden. S/Key
+ en OPIE geheime wachtwoorden kennen niet de beperking van 8
+ karakters als de oude &unix; wachtwoorden.
+
+
+ Bij &os; mag het wachtwoord voor aanmelden tot 128
+ karakters lang zijn.
+
+
+ Het mag onbeperkt lang zijn. Wachtwoorden van een zes of zeven
+ woorden lange zin zijn niet ongewoon. Voor het overgrote deel
+ werkt het S/Key of OPIE systeem volledig onafhankelijk van het
+ &unix; wachtwoordsysteem.
+
+ Buiten het wachtwoord zijn er nog twee stukjes data die van
+ belang zijn voor S/Key en OPIE. Het eerste wordt
+ zaad (seed) of
+ sleutel (key) genoemd en bestaat
+ uit twee letters en vijf cijfers. Het tweede stukje data heet de
+ iteratieteller (iteration count),
+ een nummer tussen 1 en 100. S/Key maakt een eenmalig wachtwoord
+ door het zaad en het geheime wachtwoord aaneen te schakelen en
+ daarop het door de iteratieteller aangegeven keren MD4/MD5 hash
+ toe te passen. Daarna wordt het resultaat omgezet in zes korte
+ Engelse woorden. Die zes woorden zijn een eenmalige wachtwoord.
+ Het authenticatiesysteem (hoofdzakelijk PAM) houdt bij welk
+ eenmalig wachtwoord het laatst is gebruikt en de gebruiker wordt
+ geauthenticeerd als de hash van het door de gebruiker ingegeven
+ wachtwoord gelijk is aan het vorige wachtwoord. Omdat er een
+ eenweg hash wordt gebruikt, is het onmogelijk om toekomstige
+ eenmalige wachtwoorden te maken als iemand toch een eenmalig
+ wachtwoord heeft afgevangen. De iteratieteller wordt verlaagd na
+ iedere succesvolle aanmelding om de gebruiker en het
+ aanmeldprogramma synchroon te houden. Als de iteratieteller op 1
+ staat, moeten S/Key en OPIE opnieuw ingesteld worden.
+
+ Er zijn drie programma's bij ieder systeem betrokken die
+ hieronder worden besproken. De key en
+ opiekey programma's hebben een iteratieteller,
+ zaad en een geheim wachtwoord nodig en maken dan een eenmalig
+ wachtwoord of een lijst van opeenvolgende eenmalige wachtwoorden.
+ De programma's keyinit en
+ opiepasswd worden gebruikt om respectievelijk
+ S/Key en OPIE te initialiseren en om wachtwoorden,
+ iteratietellers en zaad te wijzigen. Ze accepteren zowel
+ wachtwoordzinnen als een iteratieteller, zaad en een eenmalig
+ wachtwoord. De programma's keyinfo en
+ opieinfo bekijken de relevante bestanden
+ waarin de eigenschappen staan (/etc/skeykeys
+ of /etc/opiekeys) en tonen de huidige
+ iteratieteller en zaad van de gebruiker die het commando
+ uitvoert.
+
+ Nu worden vier verschillende acties besproken. Bij de eerste
+ worden keyinit of
+ opiepasswd gebruikt in een beveiligde
+ verbinding om voor het eerst eenmalige wachtwoorden in te stellen
+ of om een wachtwoord of zaad aan te passen. Bij de tweede worden
+ keyinit of opiepasswd
+ gebruikt in een niet-beveiligde verbinding samen met
+ key of opiekey over een
+ beveiligde verbinding om hetzelfde te bereiken. In een derde
+ scenario wordt key/opiekey
+ gebruikt om te melden over een onveilige verbinding. Het vierde
+ scenario behandelt het gebruik van key of
+ opiekey om een aantal sleutels aan te maken
+ die opgeschreven of afgedrukt kunnen worden, zodat ze meegenomen
+ kunnen worden naar een plaats van waar geen enkele veilige
+ verbinding opgezet kan worden.
- * Veilige Verbinding Initialiseren
+ Veilige Verbinding Initialiseren
+
+ Om S/Key voor de eerste keer te initialiseren, een
+ wachtwoord te wijzigen of zaad te veranderen over een
+ beveiligde verbinding (bv. op het console van een machine of
+ via ssh), moet het commando
+ keyinit gebruikt worden zonder parameters
+ terwijl een gebruiker als zichzelf is aangemeld:
+
+ &prompt.user; keyinit
+Adding unfurl:
+Reminder - Only use this method if you are directly connected.
+If you are using telnet or rlogin exit with no password and use keyinit -s.
+Enter secret password:
+Again secret password:
+
+ID unfurl s/key is 99 to17757
+DEFY CLUB PRO NASH LACE SOFT
+
+ Bij OPIE wordt opiepasswd
+ gebruikt:
+
+ &prompt.user; opiepasswd -c
+[grimreaper] ~ $ opiepasswd -f -c
+Adding unfurl:
+Only use this method from the console; NEVER from remote. If you are using
+telnet, xterm, or a dial-in, type ^C now or exit with no password.
+Then run opiepasswd without the -c parameter.
+Using MD5 to compute responses.
+Enter new secret pass phrase:
+Again new secret pass phrase:
+ID unfurl OTP key is 499 to4268
+MOS MALL GOAT ARM AVID COED
+
+ Als Enter new secret pass phrase: of
+ Enter secret password: op het scherm verschijnt,
+ dient een wachtwoord of wachtwoordzin ingevoerd te worden. Dit
+ is dus niet het aanmeldwachtwoord is, maar dat dit wordt gebruikt
+ om eenmalige wachtwoorden te maken. De ID regel
+ geeft de parameters van het verzoek weer: de aanmeldnaam, de
+ iteratieteller en zaad. Bij het aanmelden kent het systeem deze
+ parameters en worden deze weergegeven zodat ze niet onthouden
+ hoeven te worden. Op de laatste regel staat het eenmalige
+ wachtwoord dat overeenkomt met die parameters en het geheime
+ wachtwoord. Als de gebruiker direct opnieuw zou aanmelden, zou
+ hij dat eenmalige wachtwoord moeten gebruiken.
+
-
+
+ Onveilige Verbinding Initialiseren
+
+ Om te initialiseren of een wachtwoord te wijzigen over een
+ onveilige verbinding, moet er al ergens een veilige verbinding
+ bestaand de gebruiker key of
+ opiekey kan uitvoeren. Dit kan een desktop
+ programma zijn op een &macintosh; of een shell prompt op een
+ machine die vertrouwd wordt. De gebruiker moet ook een
+ iteratieteller verzinnen (100 is wellicht een prima getal) en
+ moet een eigen zaad bedenken of er een laten fabriceren. Over
+ de onveilige verbinding (naar de machine die de gebruiker wil
+ initialiseren) wordt het commando keyinit -s
+ gebruikt:
+
+ &prompt.user; keyinit -s
+Updating unfurl:
+Old key: to17758
+Reminder you need the 6 English words from the key command.
+Enter sequence count from 1 to 9999: 100
+Enter new key [default to17759]:
+s/key 100 to 17759
+s/key access password:
+s/key access password:CURE MIKE BANE HIM RACY GORE
+
+ Bij OPIE is dat opiepasswd:
+
+ &prompt.user; opiepasswd
+
+Updating unfurl:
+You need the response from an OTP generator.
+Old secret pass phrase:
+ otp-md5 498 to4268 ext
+ Response: GAME GAG WELT OUT DOWN CHAT
+New secret pass phrase:
+ otp-md5 499 to4269
+ Response: LINE PAP MILK NELL BUOY TROY
+
+ID mark OTP key is 499 gr4269
+LINE PAP MILK NELL BUOY TROY
+
+ Om het standaard zaad te accepteren (dat het programma
+ keyinit nogal verwarrend een
+ key) noemt, is de invoer
+ Return. Voor een toegangswachtwoord wordt
+ ingevoerd, dient eerst gewisseld te worden naar de veilige
+ verbinding of het S/Key desktop programma en dienen dezelfde
+ parameters ingegeven te worden:
+
+ &prompt.user; key 100 to17759
+Reminder - Do not use this program while logged in via telnet or rlogin
+Enter secret password: <secret password>
+CURE MIKE BANE HIM RACY GORE
+
+ Of bij OPIE:
+
+ &prompt.user; opiekey 498 to4268
+Using the MD5 algorithm to compute response.
+Reminder: Don't use opiekey from telnet or dial-in sessions.
+Enter secret pass phrase:
+GAME GAG WELT OUT DOWN CHAT
+
+ In de onveilige verbinding wordt nu het eenmalige
+ wachtwoord in het relevante programma
+ gekopieerd.
- * Onveilige Verbinding Initialiseren
+ Een Enkel Eenmalig Wachtwoord Maken
+
+ Als S/Key of OPIE eenmaal is ingesteld staat er bij het
+ aanmelden iets als het volgende:
+
+&prompt.user; telnet example.com
+Trying 10.0.0.1...
+Connected to example.com
+Escape character is '^]'.
+
+FreeBSD/i386 (example.com) (ttypa)
+
+login: <username>
+s/key 97 fw13894
+Password:
+
+ Of bij OPIE:
+
+&prompt.user; telnet example.com
+Trying 10.0.0.1...
+Connected to example.com
+Escape character is '^]'.
+
+FreeBSD/i386 (example.com) (ttypa)
-
+login: <username>
+otp-md5 498 gr4269 ext
+Password:
+
+ NB: de S/Key en OPIE meldingen hebben een erg zinvolle
+ optie (die hier niet te zien is): als er op
+ Return wordt gedrukt bij de wachtwoordregel,
+ wordt de echo aangezet, zodat de invoer zichtbaar is. Dit is
+ erg handig als er met de hand een wachtwoord wordt ingegeven,
+ zoals wanneer het wordt ingevoerd vanaf een afdruk.
+
+ MS-DOS
+
+ Windows
+
+ MacOS
+
+ Nu moet het eenmalige wachtwoord gemaakt worden om het
+ aanmeldprompt mee te antwoorden. Dit moet gedaan worden op een
+ vertrouwd systeem waarop key of
+ opiekey beschikbaar is. Er zijn ook
+ versies voor DOS, &windows; en &macos;. Voor beide commando's
+ moet zowel de iteratieteller als het zaad ingeven worden op de
+ commandoregel. Deze kan zo overgenomen worden vanaf het
+ aanmeldprompt op de machine waarop de gebruiker wil
+ aanmelden.
+
+ Op het vertrouwde systeem:
+
+ &prompt.user; key 97 fw13894
+Reminder - Do not use this program while logged in via telnet or rlogin.
+Enter secret password:
+WELD LIP ACTS ENDS ME HAAG
+
+ Bij OPIE:
+
+ &prompt.user; opiekey 498 to4268
+Using the MD5 algorithm to compute response.
+Reminder: Don't use opiekey from telnet or dial-in sessions.
+Enter secret pass phrase:
+GAME GAG WELT OUT DOWN CHAT
+
+ Nu het eenmalige wachtwoord er is, kan het aanmelden
+ doorgang vinden:
+
+ login: <username>
+s/key 97 fw13894
+Password: <return to enable echo>
+s/key 97 fw13894
+Password [echo on]: WELD LIP ACTS ENDS ME HAAG
+Last login: Tue Mar 21 11:56:41 from 10.0.0.2 ...
- * Een Enkel Eenmalig Wachtwoord Maken
-
-
+ Meerdere Eenmalige Wachtwoorden Maken
+
+ Soms moet is een gebruiker ergens waarvandaan er geen
+ toegang is tot een vertrouwde machine of een beveiligde
+ verbinding. In dat geval is het mogelijk om met de
+ key en opiekey commando's
+ een aantal eenmalige wachtwoorden te maken om uit te printen en
+ deze mee te nemen:
+
+ &prompt.user; key -n 5 30 zz99999
+Reminder - Do not use this program while logged in via telnet or rlogin.
+Enter secret password: <secret password>
+26: SODA RUDE LEA LIND BUDD SILT
+27: JILT SPY DUTY GLOW COWL ROT
+28: THEM OW COLA RUNT BONG SCOT
+29: COT MASH BARR BRIM NAN FLAG
+30: CAN KNEE CAST NAME FOLK BILK
+
+ Of bij OPIE:
+
+ &prompt.user; opiekey -n 5 30 zz99999
+Using the MD5 algorithm to compute response.
+Reminder: Don't use opiekey from telnet or dial-in sessions.
+Enter secret pass phrase: <secret password>
+26: JOAN BORE FOSS DES NAY QUIT
+27: LATE BIAS SLAY FOLK MUCH TRIG
+28: SALT TIN ANTI LOON NEAL USE
+29: RIO ODIN GO BYE FURY TIC
+30: GREW JIVE SAN GIRD BOIL PHI
+
+ Met worden vijf opeenvolgende
+ sleutels aangevraagd, geeft aan wat het
+ laatste iteratiegetal moet zijn. Deze wachtwoorden worden
+ weergegeven in omgekeerde volgorde voor
+ gebruik. Als de gebruiker echt paranoïde bent kan hij ze
+ opschrijven of hij kan er ook voor kiezen ze af te drukken met
+ lpr. Op iedere regel staat dus de
+ iteratieteller en het eenmalige wachtwoord, maar misschien is
+ het toch handig om ze na gebruik af te strepen.
- * Meerdere Eenmalige Wachtwoorden Maken
+ Gebruik van &unix; Wachtwoorden Beperken
+
+ S/Key kan beperkingen plaatsen op het gebruik van &unix;
+ wachtwoorden gebaseerd op hostnaam, gebruikersnaam,
+ terminalpoort of IP adres van een
+ aanmeldsessie. Deze beperkingen staan in het
+ instellingenbestand /etc/skey.access.
+ De handboekpagina voor &man.skey.access.5; bevat meer
+ informatie over de inhoud van het bestand en bevat ook details
+ over een aantal aandachtspunten voor beveiliging voordat
+ besloten wordt dit bestand te gebruiken in de
+ beveiliging.
+
+ Als het bestand /etc/skey.access niet
+ bestaat (dat mag in &os; 4.X systemen), dan mogen alle
+ gebruikers hun &unix; wachtwoord gebruiken. Maar als het
+ bestand wel bestaat, dan moeten alle gebruikers S/Key
+ gebruiken, tenzij iets anders expliciet wordt toegestaan door
+ instellingen in het bestand skey.access.
+ In alle gevallen worden &unix; wachtwoorden op het console wel
+ toegestaan.
+
+ Nu volgt een voorbeeld met instellingen in het bestand
+ skey.access waarin de drie meest gebruikte
+ instellingen terugkomen:
+
+ permit internet 192.168.0.0 255.255.0.0
+permit user fnord
+permit port ttyd0
+
+ In de eerste regel (permit internet)
+ staat dat gebruikers met een bron IP adres
+ (wat gefingeerd kan worden) dat past binnen de aangegeven
+ waarde en masker altijd &unix; wachtwoorden mogen gebruiken.
+ Dit mag niet gezien worden als beveiligingsmechanisme, maar
+ eerder als een mogelijkheid om gebruikers aan wie het wordt
+ toegestaan eraan te herinneren dat ze op een onveilig netwerk
+ zitten en gebruik moeten maken van S/Key bij het aanmelden.
+
+ De tweede regel (permit user) staat de
+ gebruiker fnord toe om altijd &unix;
+ wachtwoorden te gebruiken. In het algemeen dient dit alleen
+ gebruikt te worden voor gebruikers die niet in staat zijn het
+ programma key te gebruiken, zoals gebruikers
+ met domme terminals of gebruikers die totaal niet op te voeden
+ zijn.
+
+ De derde regel (permit port) staat
+ gebruikers die aanmelden vanaf een aangegeven
+ terminalverbinding toe om &unix; wachtwoorden te gebruiken.
+ Dit kan gebruikt worden voor inbellers.
+
+ Met OPIE kan ook paal en perk gesteld worden aan het
+ gebruik van &unix; wachtwoorden op basis van het
+ IP adres van een aanmeldsessie, net als met
+ S/Key. Dat kan met het bestand
+ /etc/opieaccess dat standaard aanwezig is
+ op &os; 5.0 en latere systemen. Bij &man.opieaccess.5; staat
+ meer informatie over dit bestand en welke
+ beveiligingsoverwegingen bestaan bij het gebruik.
+
+ Hieronder een voorbeeld voor een
+ opieaccess bestand:
+
+ permit 192.168.0.0 255.255.0.0
+
+ In deze regel (permit internet) staat
+ dat gebruikers met een bron IP adres (wat
+ gefingeerd kan worden) dat past binnen de aangegeven waarde en
+ masker altijd &unix; wachtwoorden mogen gebruiken.
+
+ Als geen van de regels uit opieaccess
+ van toepassing is, worden standaard pogingen zonder OPIE
+ geweigerd.
+
+
+
+
+
+
+
+ Tom
+ Rhodes
+ Geschreven door
+
+
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
+
+
+
-
+ TCP Wrapper
+
+ TCP Wrappers
+
+ Iedereen die bekend is met &man.inetd.8; heeft waarschijnlijk
+ wel eens van TCP Wrappers gehoord. Maar
+ slechts weinigen lijken volledig te begrijpen hoe ze in een
+ netwerkomgeving toegepast kunnen worden. Het schijnt dat
+ iedereen een firewall wil hebben om netwerkverbindingen af te
+ handelen. Ondanks dat een firewall veel kan, zijn er toch dingen
+ die hij niet kan, zoals tekst terugsturen naar ontstaansplaats
+ van een verbinding. De TCP software kan dat
+ en nog veel meer. In dit onderdeel worden de
+ TCP Wrappers mogelijkheden besproken en, waar
+ dat van toepassing is, worden ook voorbeelden voor implementatie
+ gegeven.
+
+ De TCP Wrappers software vergroot de
+ mogelijkheden van inetd door de mogelijkheid
+ al zijn serverdaemons te controleren. Met deze methode is het
+ mogelijk om te loggen, berichten te zenden naar verbindingen, een
+ daemon toe te staan alleen interne verbindingen te accepteren,
+ etc. Hoewel een aantal van deze mogelijkheden ook ingesteld
+ kunnen worden met een firewall, geeft deze manier niet alleen een
+ extra laag beveiliging, maar gaat dit ook verder dan wat een
+ firewall kan bieden.
+
+ De toegevoegde waarde van TCP Wrappers
+ is niet dat het een goede firewall vervangt. Het moet samen
+ met een firewall en andere beveiligingsinstellingen gebruikt
+ worden om een extra laag van beveiliging voor het systeem te
+ bieden.
+
+ Omdat dit een uitbreiding is op de instellingen van
+ inetd, wordt aangenomen dat de lezer het
+ onderdeel inetd configuration heeft
+ gelezen.
+
+
+ Hoewel programma's die onder &man.inetd.8; draaien niet
+ echt daemons zijn, heten ze traditioneel wel zo.
+ Deze term wordt hier dus ook gebruikt.
+
+
+
+ Voor het Eerst Instellen
+
+ De enige voorwaarde voor het gebruiken van
+ TCP Wrappers in &os; is ervoor te zorgen
+ dat de inetd gestart wordt vanuit
+ rc.conf met de optie .
+ Dit is de standaardinstelling. Er wordt vanuit gegaan dat
+ /etc/hosts.allow juist is ingesteld, maar
+ als dat niet zo is, dan zal &man.syslogd.8; dat melden.
+
+
+ In tegenstelling tot bij andere implementaties van
+ TCP Wrappers is het gebruik van
+ hosts.deny niet langer mogelijk. Alle
+ instellingen moeten in /etc/hosts.allow
+ staan.
+
+
+ In de meest eenvoudige instelling worden verbindingen naar
+ daemons toegestaan of geweigerd afhankelijk van de opties in
+ /etc/hosts.allow. De standaardinstelling
+ in &os; is verbindingen toe te staan naar iedere daemon die met
+ inetd is gestart. Na de basisinstelling
+ wordt aangegeven hoe dit gewijzigd kan worden.
+
+ De basisinstelling heeft meestal de vorm
+ daemon : adres : actie.
+ daemon is de daemonnaam die
+ inetd heeft gestart. Het
+ adres kan een geldige hostnaam, een
+ IP adres of een IPv6 adres tussen
+ blokhaken ([ ]) zijn. Het veld actie kan
+ allow of deny zijn, afhankelijk van of toegang toegestaan of
+ geweigerd moet worden. De instellingen werken zo dat ze
+ worden doorlopen van onder naar boven om te kijken welke regel
+ als eerste van toepassing is. Als een regel van toepassing is
+ gevonden, dan stop het zoekproces.
+
+ Er zijn nog andere mogelijkheden, maar die worden elders
+ toegelicht. Een eenvoudige instelling kan al van met deze
+ informatie worden gemaakt. Om bijvoorbeeld
+ POP3 verbindingen toe te staan via de
+ mail/qpopper daemon,
+ zouden de volgende instellingen moeten worden toegevoegd aan
+ hosts.allow:
+
+ # This line is required for POP3 connections:
+qpopper : ALL : allow
+
+ Nadat deze regel is toegevoegd moet
+ inetd herstart worden. Dit gaat met het
+ &man.kill.1; commando of met de restart
+ parameter met /etc/rc.d/inetd.
- * Gebruik van &unix; Wachtwoorden Beperken
+ Gevorderde Instellingen
+
+ TCP Wrappers hebben ook gevorderde
+ instellingen. Daarmee komt meer controle over de wijze waarop
+ er met verbindingen wordt omgegaan. Soms is het een goed idee
+ om commentaar te sturen naar bepaalde hosts of
+ daemonverbindingen. In andere gevallen moet misschien iets
+ in een logboekbestand geschreven worden of een e-mail naar de
+ beheerder gestuurd worden. Dit kan allemaal met instellingen
+ die wildcards, uitbreidingskarakters
+ (expansion characters) en het uitvoeren van externe commando's
+ heten. De volgende twee paragrafen beschrijven deze
+ mogelijkheden.
+
+
+ Externe Commando's
+
+ Stel dat zich de situatie voordoet waar een verbinding
+ geweigerd moet worden, maar er een reden gestuurd moet
+ worden naar het individu dat die verbinding probeerde op te
+ zetten. Hoe gaat dat? Dat is mogelijk door gebruik te
+ maken van de optie . Als er een
+ poging tot verbinding wordt gedaan, wordt er met
+ een shellcommando of script
+ uitgevoerd. Er staat al een voorbeeld in
+ hosts.allow:
+
+ # De andere daemons zijn beschermd.
+ALL : ALL \
+ : severity auth.info \
+ : twist /bin/echo "You are not welcome to use %d from %h."
+
+ Dit voorbeeld geeft aan dat het bericht You are
+ not allowed to use daemon from
+ hostname. wordt teruggestuurd
+ voor iedere daemon die niet al is ingesteld in het
+ toegangsbestand. Het is erg handig om een antwoord terug
+ te sturen naar degene die een verbinding op heeft willen
+ zetten meteen nadat een tot stand gekomen verbinding is
+ verbroken. Let wel dat alle berichten die gezonden worden
+ moeten staan tussen "
+ karakters. Hier zijn geen uitzonderingen op.
+
+
+ Het is mogelijk een ontzegging van dienst aanval uit
+ te voeren op de server als een aanvaller, of een groep
+ aanvallers, deze daemons kan overstromen met verzoeken om
+ verbindingen te maken.
+
+
+ Het is ook mogelijk hier de optie
+ te gebruiken. Net als weigert
+ impliciet de verbinding en kan het
+ gebruikt worden om shellcommando's of scripts uit te voeren.
+ Anders dan bij stuurt
+ geen bericht aan degene die de
+ verbinding wilde maken. Zie bijvoorbeeld de volgende
+ instelling:
+
+ # Geen verbindingen van example.com:
+ALL : .example.com \
+ : spawn (/bin/echo %a from %h attempted to access %d >> \
+ /var/log/connections.log) \
+ : deny
+
+ Hiermee worden alle verbindingen van het domein
+ *.example.com geweigerd.
+ Tegelijkertijd worden ook hostnaam, IP
+ adres en de daemon waarmee verbinding werd gemaakt naar
+ /var/log/connections.log
+ geschreven.
+
+ Naast de vervangingskarakters die al zijn toegelicht,
+ zoals %a, bestaan er nog een paar andere. In de
+ handboekpagina van &man.hosts.access.5; staat een volledige
+ lijst.
+
-
+
+ Wildcard Opties
+
+ Tot nu toe is in ieder voorbeeld ALL
+ gebruikt. Er bestaan nog andere opties waarmee de
+ mogelijkheden nog verder gaan. Zo kan ALL
+ gebruikt worden om van toepassing te zijn op iedere instantie
+ van een daemon, domein of een IP adres.
+ Een andere wildcard die gebruikt kan worden is
+ PARANOID. Daarmee wordt iedere host die
+ een IP adres geeft dat gefingeerd kan zijn
+ aangeduid. In andere woorden: paranoid
+ kan gebruikt worden om een actie aan te geven als er een
+ IP adres gebruikt wordt dat verschilt van
+ de hostnaam. Het volgende voorbeeld kan wat verheldering
+ brengen:
+
+ # Weiger mogelijke gespoofte verzoeken aan sendmail:
+sendmail : PARANOID : deny
+
+ In het voorgaande voorbeeld worden alle
+ verbindingsverzoeken aan sendmail met een
+ IP adres dat verschilt van de hostnaam
+ geweigerd.
+
+
+ Het gebruik van PARANOID kan nogal
+ wat schade aanrichten als de client of de server kapotte
+ DNS instellingen heeft. Voorzichtigheid
+ van de beheerder is geboden.
+
+
+ De handboekpagina van &man.hosts.access.5; geeft meer
+ uitleg over wildcards en de mogelijkheden die ze
+ bieden.
+
+ Voordat de bovenstaande instellingen werken, dient de
+ eerste regels in hosts.allow als
+ commentaar gemarkeerd te worden.
+ MarkMurrayBijgedragen door MarkDapoz
- Gebaseerd op een bijdrage door
+ Gebaseerd op een bijdrage van
+
+
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
- * KerberosIV
-
- * KerberosIV installeren
+ KerberosIV
-
-
+ Kerberos is een netwerkdienst,
+ protocol en systeem waarmee gebruikers zich kunnen aanmelden met
+ behulp van een dienst op een veilige server. Diensten als op een
+ andere server aanmelden, op afstand kopiëren, veilig tussen
+ systemen kopiëren en andere taken met een hoog risico worden
+ aanmerkelijk veiliger en beter controleerbaar.
-
- * Maken van de Initiele Database
-
-
-
+ De onderstaande instructies kunnen gebruikt worden als
+ handleiding voor het opzetten van Kerberos op &os;. Voor een
+ volledige beschrijving wordt verwezen naar de relevante
+ handboekpagina's.
- * Help Het aan de Praat
-
-
+ KerberosIV Installeren
+
+ MIT
+
+
+ KerberosIV
+
+ Installeren
+
+
+ Kerberos is een optioneel component van &os;. De meest
+ eenvoudige manier om de software te installeren is het
+ selecteren van de krb4 of
+ krb5 distributie in
+ sysinstall tijdens de initiële
+ installatie van &os;. Hierdoor wordt de eBones
+ (KerberosIV) of Heimdal (Kerberos5)
+ implementatie van Kerberos geïnstalleerd. Deze
+ implementaties zijn beschikbaar omdat ze ontwikkeld zijn buiten
+ de VS/Canada en dus zijn ze beschikbaar voor systeemeigenaren
+ buiten die landen in dit tijdperk waarin er beperkingen gelden
+ ten aanzien van de export van coderingsprogramma's uit de
+ VS.
+
+ Het is ook mogelijk te kiezen voor de MIT implementatie van
+ Kerberos via de ports collectie: security/krb5.
- * Aanmaken van het Serverbestand
-
-
+ Maken van de Initiële Database
+
+ Dit hoeft alleen op de Kerberos gedaan te worden. Er
+ dienen geen oude Kerberos databases rond te slingeren.
+ Controleer in de map /etc/kerberosIV of de
+ volgende bestanden aanwezig zijn:
+
+ &prompt.root; cd /etc/kerberosIV
+&prompt.root; ls
+README krb.conf krb.realms
+
+ Als er nog meer bestanden zijn (zoals
+ principal.* of
+ master_key), dan kan met het programma
+ kdb_destroy de oude Kerberos database
+ vernietigd worden of de overige bestanden kunnen verwijderd
+ worden als Kerberos niet draait.
+
+ Nu moeten de bestanden krb.conf en
+ krb.realms gewijzigd om de Kerberos wereld
+ te definiëren. In dit geval heet de wereld
+ EXAMPLE.COM en de server heet
+ grunt.example.com. Wijzig of
+ creëer het bestand krb.conf:
+
+ &prompt.root; cat krb.conf
+EXAMPLE.COM
+EXAMPLE.COM grunt.example.com admin server
+CS.BERKELEY.EDU okeeffe.berkeley.edu
+ATHENA.MIT.EDU kerberos.mit.edu
+ATHENA.MIT.EDU kerberos-1.mit.edu
+ATHENA.MIT.EDU kerberos-2.mit.edu
+ATHENA.MIT.EDU kerberos-3.mit.edu
+LCS.MIT.EDU kerberos.lcs.mit.edu
+TELECOM.MIT.EDU bitsy.mit.edu
+ARC.NASA.GOV trident.arc.nasa.gov
+
+ In dit geval hoeven de andere werelden er niet te zijn. Ze
+ staan er als voorbeeld van hoe een machine attent gemaakt kan
+ worden op het bestaan van meerdere werelden. In een eigen test
+ kan ervoor gekozen worden ze weg te laten.
+
+ De eerste regel benoemt de wereld waarin het systeem
+ opereert. De andere regels bevatten werelden/hosts. Het
+ eerste deel van een regel bevat de wereld en het tweede deel is
+ een host in die wereld die fungeert als sleutel
+ distributiecentrum. De woorden admin
+ server achter een hostnaam betekenen dat een host
+ ook administratieve database server is. In de handboekpagina's
+ van Kerberos wordt hierover meer uitleg gegeven.
+
+ Nu moet grunt.example.com aan
+ de wereld EXAMPLE.COM toegevoegd worden en
+ er moet ook een instelling gemaakt worden voor alle hosts uit
+ het .example.com domein in
+ de wereld EXAMPLE.COM. Het bestand
+ krb.realms dient dan als volgt gewijzigd
+ te worden:
+
+ &prompt.root; cat krb.realms
+grunt.example.com EXAMPLE.COM
+.example.com EXAMPLE.COM
+.berkeley.edu CS.BERKELEY.EDU
+.MIT.EDU ATHENA.MIT.EDU
+.mit.edu ATHENA.MIT.EDU
+
+ Nogmaals: de andere werelden hoeven er niet te staan. Ze
+ staan er als voorbeeld hoe een machine van het bestaan van
+ andere werelden op de hoogte gebracht kan worden. Om het
+ overzichtelijker te maken, kan mogen ze verwijderd
+ worden.
+
+ De eerste regel plaatst het specifieke
+ systeem in de genoemde wereld. De rest van de regels geeft aan
+ hoe standaardsystemen uit een bepaald subdomein in een wereld
+ plaatst worden.
+
+ Nu kan de database aangemaakt worden. Dit hoeft alleen op
+ de Kerberos server gedaan te worden (of Sleutel Distributie
+ Centrum) met het commando kdb_init:
+
+ &prompt.root; kdb_init
+Realm name [default ATHENA.MIT.EDU ]:EXAMPLE.COM
+You will be prompted for the database Master Password.
+It is important that you NOT FORGET this password.
+
+Enter Kerberos master key:
+
+ Nu moet de sleutel opgeslagen worden zodat diensten op de
+ lokale machine er gebruik van kunnen maken met het commando
+ kstash:
+
+ &prompt.root; kstash
+
+Enter Kerberos master key:
+
+Current Kerberos master key version is 1.
+
+Master key entered. BEWARE!
+
+ Nu is de gecodeerde hoofdsleutel opgeslagen in
+ /etc/kerberosIV/master_key.
- * De Database Vullen
+ Help Het aan de Praat
-
-
+
+ KerberosIV
-
- * Alles Testen
+ Eerste keer starten
+
-
-
+ Voor ieder systeem dat met Kerberos
+ wordt beveiligd moeten twee principals worden aangemaakt. Die
+ heten kpasswd en rcmd.
+ Deze twee principals worden aangemaakt voor iedere systeem en
+ de instantie is de naam van het systeem.
-
- * su Rechten Toewijzen
+ Deze daemons, kpasswd en
+ rcmd, staan andere systemen toe om
+ Kerberos wachtwoorden te wijzigen en commando's als
+ &man.rcp.1;, &man.rlogin.1; en &man.rsh.1; uit te
+ voeren.
-
-
+ Deze worden nu toegevoegd:
-
- * Andere Commando's Gebruiken
+ &prompt.root; kdb_edit
+Opening database...
-
-
-
+Enter Kerberos master key:
-
-
-
-
- Tillman
- Hodgson
- Bijgedragen door
-
-
-
-
- Mark
- Murray
- Gebaseerd op een bijdrage door
-
-
-
- * Kerberos5
+Current Kerberos master key version is 1.
-
- * Geschiedenis
+Master key entered. BEWARE!
+Previous or default values are in [brackets] ,
+enter return to leave the same, or new value.
-
-
+Principal name:passwd
+Instance:grunt
-
- * Opzetten van een Heimdal KDC
+<Not found>, Create [y] ?y
-
-
+Principal: passwd, Instance: grunt, kdc_key_ver: 1
+New Password: <---- enter RANDOM here
+Verifying password
-
- * Kerberos server gebruiken met
- Heimdal services
+New Password: <---- enter RANDOM here
-
-
+Random password [y] ?y
-
- * Kerberos client gebruiken
- met Heimdal
+Principal's new key version = 1
+Expiration date (enter yyyy-mm-dd) [ 2000-01-01 ] ?
+Max ticket lifetime (*5 minutes) [ 255 ] ?
+Attributes [ 0 ] ?
+Edit O.K.
+Principal name:rcmd
+Instance:grunt
-
-
+<Not found>, Create [y] ?
-
- * Gebruikers configuratie bestanden:
- .k5login and
- .k5users
+Principal: rcmd, Instance: grunt, kdc_key_ver: 1
+New Password: <---- enter RANDOM here
+Verifying password
-
-
+New Password: <---- enter RANDOM here
-
- * Kerberos tips, trucks, en
- problemen oplossen
+Random password [y] ?
-
+Principal's new key version = 1
+Expiration date (enter yyyy-mm-dd) [ 2000-01-01 ] ?
+Max ticket lifetime (*5 minutes) [ 255 ] ?
+Attributes [ 0 ] ?
+Edit O.K.
+Principal name: <---- null entry here will cause an exit
- * Verschillen met de MIT port
-
-
+ Aanmaken van het Serverbestand
+
+ Nu moeten alle instanties die de diensten op iedere server
+ definiëren geëxtraheerd worden. Dat kan met het
+ commando ext_srvtab. Dit commando maakt een
+ bestand aan dat veilig gekopieerd moet
+ worden naar de map /etc/kerberosIV van
+ iedere Kerberos client. Dit bestand moet aanwezig zijn op
+ iedere server en op iedere client en is van doorslaggevend
+ belang voor de werking van Kerberos.
+
+ &prompt.root; ext_srvtab grunt
+Enter Kerberos master key:
+
+Current Kerberos master key version is 1.
+
+Master key entered. BEWARE!
+Generating 'grunt-new-srvtab'....
+
+ Het bovenstaande commando maakt een tijdelijk bestand aan
+ dat hernoemd moet worden naar srvtab zodat
+ alle diensten erbij kunnen. Met &man.mv.1; kan het op de
+ juiste plaats op het originele systeem gezet worden:
+
+ &prompt.root; mv grunt-new-srvtab srvtab
+
+ Als het bestand voor een clientsysteem is en het netwerk is
+ niet veilig, dan kan het bestand
+ client-new-srvtab
+ dan naar een verwijderbaar medium gekopieerd worden en dan
+ fysiek veilig getransporteerd worden. Op de client dient het
+ bestand srvtab te heten in de map
+ /etc/kerberosIV en in mode 600 te
+ staan:
+
+ &prompt.root; mv grumble-new-srvtab srvtab
+&prompt.root; chmod 600 srvtab
- * Het verlichten van beperkingen gevonden in
- Kerberos
+ De Database Vullen
-
- * Kerberos is een alles of
- niets aanpak
+ Nu moeten de gebruikers in de database. In dit voorbeeld
+ wordt de gebruiker jane als eerste
+ ingevoerd. Hiervoor is het commando
+ kdb_edit:
-
-
+ &prompt.root; kdb_edit
+Opening database...
-
- * Kerberos is bedoeld voor
- enkele-gebruikers werkstationen
+Enter Kerberos master key:
-
-
+Current Kerberos master key version is 1.
-
- * De KDC is een enkel punt van falen
+Master key entered. BEWARE!
+Previous or default values are in [brackets] ,
+enter return to leave the same, or new value.
-
-
+Principal name:jane
+Instance:
-
- * Kerberos
- tekortkomingen
+<Not found>, Create [y] ?y
-
-
+Principal: jane, Instance: , kdc_key_ver: 1
+New Password: <---- enter a secure password here
+Verifying password
+
+New Password: <---- re-enter the password here
+Principal's new key version = 1
+Expiration date (enter yyyy-mm-dd) [ 2000-01-01 ] ?
+Max ticket lifetime (*5 minutes) [ 255 ] ?
+Attributes [ 0 ] ?
+Edit O.K.
+Principal name: <---- null entry here will cause an exit
- * Bronnen en verdere informatie
-
-
+ Alles Testen
+
+ Eerst moeten de Kerberos daemons gestart worden. Als de
+ juiste wijziging in /etc/rc.conf zijn
+ gemaakt, dan gebeurt dit automatisch na een herstart. Dit
+ hoeft alleen ingesteld te worden op de Kerberos server.
+ Kerberos clients vinden automatisch wat ze zoeken in de
+ map /etc/kerberosIV.
+
+ &prompt.root; kerberos &
+Kerberos server starting
+Sleep forever on error
+Log file is /var/log/kerberos.log
+Current Kerberos master key version is 1.
+
+Master key entered. BEWARE!
+
+Current Kerberos master key version is 1
+Local realm: EXAMPLE.COM
+&prompt.root; kadmind -n &
+KADM Server KADM0.0A initializing
+Please do not use 'kill -9' to kill this job, use a
+regular kill instead
+
+Current Kerberos master key version is 1.
+
+Master key entered. BEWARE!
+
+ Nu kunnen kan er getest worden of met het commando
+ kinit een ticket (kaartje) gekregen kan
+ worden voor het ID jane dat net is
+ aangemaakt:
+
+ &prompt.user; kinit jane
+MIT Project Athena (grunt.example.com)
+Kerberos Initialization for "jane"
+Password:
+
+ Met klist kan gecontroleerd worden of de
+ tokens er echt zijn:
+
+ &prompt.user; klist
+Ticket file: /tmp/tkt245
+Principal: jane@EXAMPLE.COM
+
+ Issued Expires Principal
+Apr 30 11:23:22 Apr 30 19:23:22 krbtgt.EXAMPLE.COM@EXAMPLE.COM
+
+ Nu wordt het wachtwoord gewijzigd met &man.passwd.1; om
+ te controleren of de kpasswd daemon
+ autorisatie krijgt van de Kerberos database:
+
+ &prompt.user; passwd
+realm EXAMPLE.COM
+Old password for jane:
+New Password for jane:
+Verifying password
+New Password for jane:
+Password changed.
-
-
-
-
-
- Gary
- Palmer
- Bijgedragen door
-
-
- Alex
- Nash
-
-
-
+
+ su Rechten Toewijzen
- * Firewalls
+ Kerberos biedt mogelijkheid iedere
+ gebruiker die rootrechten nodig heeft zijn
+ eigen afzonderlijke &man.su.1; wachtwoord
+ te geven. Nu wordt een ID toegevoegd dat geautoriseerd is om
+ &man.su.1; te gebruiken naar root. Dit
+ wordt geregeld door een instantie van root
+ te verbinden met een principal. Met
+ kdb_edit kan jane.root
+ gemaakt worden in de Kerberos database:
-
- * Wat is een firewall?
+ &prompt.root; kdb_edit
+Opening database...
-
- * Pakket filterende routers
+Enter Kerberos master key:
-
-
+Current Kerberos master key version is 1.
-
- * Proxyservers
+Master key entered. BEWARE!
+Previous or default values are in [brackets] ,
+enter return to leave the same, or new value.
-
-
-
+Principal name:jane
+Instance:root
-
- * Wat staat IPFW me toe om te doen??
+<Not found>, Create [y] ? y
-
-
+Principal: jane, Instance: root, kdc_key_ver: 1
+New Password: <---- enter a SECURE password here
+Verifying password
-
- * Gebruik maken van IPFW op &os;
+New Password: <---- re-enter the password here
-
-
+Principal's new key version = 1
+Expiration date (enter yyyy-mm-dd) [ 2000-01-01 ] ?
+Max ticket lifetime (*5 minutes) [ 255 ] ?12 <--- Keep this short!
+Attributes [ 0 ] ?
+Edit O.K.
+Principal name: <---- null entry here will cause an exit
-
- * IPFW configureren
+ Een lijst van de tokens kan bevestigen als alles werkt
+ zoals verwacht:
-
- * Wijzigen van IPFW regels
+ &prompt.root; kinit jane.root
+MIT Project Athena (grunt.example.com)
+Kerberos Initialization for "jane.root"
+Password:
-
-
+ Nu dient de gebruiker toegevoegd te worden aan het
+ bestand .klogin van
+ root:
-
- * Weergeven van IPFW regels
+ &prompt.root; cat /root/.klogin
+jane.root@EXAMPLE.COM
-
-
+ Na een &man.su.1;:
-
- * Weggooien van IPFW regels
+ &prompt.user; su
+Password:
-
-
+ kan de lijst met tokens bekeken worden:
-
- * Legen van de IPFW pakket tellers
+ &prompt.root; klist
+Ticket file: /tmp/tkt_root_245
+Principal: jane.root@EXAMPLE.COM
-
-
+ Issued Expires Principal
+May 2 20:43:12 May 3 04:43:12 krbtgt.EXAMPLE.COM@EXAMPLE.COM
- * Voorbeeld commando's voor
- ipfw
-
-
+ Andere Commando's Gebruiken
+
+ In een eerder voorbeeld is een principal met de naam
+ jane gemaakt met een instantie
+ root. Dit was gebaseerd op een gebruiker met
+ dezelfde naam als de principal en dit is de standaard binnen
+ Kerberos: een
+ <principal>.<instantie> in de
+ vorm van <gebruikersnaam>.
+ root staat die
+ <gebruikersnaam> het gebruik van
+ &man.su.1; naar root toe als de benodigde
+ instellingen in het bestand .klogin in de
+ home directory van root zijn
+ gemaakt:
+
+ &prompt.root; cat /root/.klogin
+jane.root@EXAMPLE.COM
+
+ Zo werkt het ook als een gebruiker in zijn eigen home
+ directory iets als volgt heeft opgenomen:
+
+ &prompt.user; cat ~/.klogin
+jane@EXAMPLE.COM
+jack@EXAMPLE.COM
+
+ Hierdoor mag iedereen die zich in de wereld
+ EXAMPLE.COM heeft geauthenticeerd als
+ jane of jack (via
+ kinit, zie boven) bij
+ jane's account of de bestanden op dit
+ systeem (grunt) met &man.rlogin.1;,
+ &man.rsh.1; of &man.rcp.1;.
+
+ Nu meldt bijvoorbeeld jane zich aan
+ op een ander systeem met Kerberos:
+
+ &prompt.user; kinit
+MIT Project Athena (grunt.example.com)
+Password:
+&prompt.user; rlogin grunt
+Last login: Mon May 1 21:14:47 from grumble
+Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
+ The Regents of the University of California. All rights reserved.
+
+FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995
+
+ Of jack meldt zich aan op
+ jane's account op dezelfde machine
+ (jane heeft het bestand
+ .klogin ingesteld zoals hierboven en de
+ beheerder van Kerberos heeft een principal
+ jack aangemaakt zonder instantie):
+
+ &prompt.user; kinit
+&prompt.user; rlogin grunt -l jane
+MIT Project Athena (grunt.example.com)
+Password:
+Last login: Mon May 1 21:16:55 from grumble
+Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
+ The Regents of the University of California. All rights reserved.
+FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995
+
-
- * Bouwen van een pakket filterende firewall
+
+
+
+
+ Tillman
+ Hodgson
+ Bijgedragen door
+
+
+
+
+ Mark
+ Murray
+ Gebaseerd op een bijdrage van
+
+
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
+
+
+
-
-
+ Kerberos5
+
+ Iedere &os; release hoger dan &os;-5.1 bevat alleen
+ ondersteuning voor Kerberos5. Daarom
+ is Kerberos5 de enige versie die erbij
+ zit. De instellingen zijn op veel gebieden gelijk aan die van
+ KerberosIV. De nu volgende informatie
+ geldt alleen voor &os;-5.0 releases en verder. Gebruikers die
+ het KerberosIV package willen
+ gebruiken kunnen dat installeren uit de
+ security/krb4 port.
+
+ Kerberos is een netwerkdienst,
+ protocol en systeem waarmee gebruikers zich kunnen aanmelden
+ met behulp van een dienst op een veilige server. Diensten als
+ op een andere server aanmelden, op afstand kopiëren, veilig
+ tussen systemen kopiëren en andere taken met een hoog risico
+ worden aanmerkelijk veiliger en beter controleerbaar.
+
+ Kerberos kan omschrijven worden
+ als identiteitbevestigend proxy systeem. Het kan ook
+ omschreven worden als een vertrouwd authenticatiesysteem van een
+ derde partij. Kerberos vervult maar
+ één taak: het veilig authenticeren van gebruikers
+ op het netwerk. Het vervult geen autorisatietaken (wat
+ gebruikers mogen) en controleert ook niets (wat gebruikers hebben
+ gedaan). Nadat een client en server
+ Kerberos hebben gebruikt om hun
+ identiteit vast te stellen kunnen ze ook al hun communicatie
+ coderen om hun privacy en data-integriteit te garanderen.
+
+ Daarom wordt het sterk aangeraden om
+ Kerberos samen met andere
+ beveiligingsmechanismen te gebruiken die autorisatie en
+ controlemogelijkheden bieden.
+
+ De aanwijzingen die nu volgen kunnen gebruikt worden als
+ werkinstructie om Kerberos in te
+ stellen zoals dat wordt meegeleverd met &os;. Een complete
+ beschrijving staat in de handboekpagina.
+
+ Voor demonstratie van de installatie van
+ Kerberos wordt gebruik gemaakt van de
+ volgende naamgeving:
+
+
+
+ Het DNS domein (zone)
+ is example.org.
+
+
+
+ De Kerberos wereld is
+ EXAMPLE.ORG.
+
+
+
+
+ Het advies is voor installaties van
+ Kerberos echte domeinnamen te
+ gebruiken, zelfs als het alleen intern wordt gebruikt. Hiermee
+ worden DNS problemen voorkomen is een
+ goede samenwerking met andere
+ Kerberos werelden verzekerd.
+
-
- * IPFW overhead en optimalisatie
+
+ Geschiedenis
+
+
+ Kerberos5
+
+ Geschiedenis
+
+
+ Kerberos is ontworpen door
+ MIT als oplossing voor
+ netwerkbeveiligingsproblemen. Het
+ Kerberos protocol gebruikt sterke
+ codering zodat een client zijn identiteit kan bewijzen aan een
+ server (en andersom) over een onveilige
+ netwerkverbinding.
+
+ Kerberos is zowel de naam van
+ een netwerkautorisatieprotocol als een bijvoeglijk naamwoord om
+ de programma's te beschrijven die gebruik maken van het
+ programma (zoals Kerberos telnet).
+ De huidige versie van het protocol is versie 5 en is beschreven
+ in RFC 1510.
+
+ Er zijn een aantal vrij beschikbare implementaties van dit
+ protocol beschikbaar voor veel systemen. Het Massachusetts
+ Institute of Technology (MIT), waar
+ Kerberos ooit is ontwikkeld,
+ ontwikkelt nog steeds door aan hun
+ Kerberos pakket. Het wordt in de
+ VS veel gebruikt als coderingspakket en
+ daarom wordt het ook geraakt door de exportwetgeving van de
+ VS. Kerberos
+ van MIT is beschikbaar als port
+ (security/krb5). Heimdal
+ Kerberos is een andere implementatie
+ van versie 5 die expliciet buiten de VS is
+ ontwikkeld om de exportwetgeving de omzeilen (en wordt daarom
+ vaak gebruikt in niet-commerciële &unix; varianten). De
+ Heimdal Kerberos distributie is
+ beschikbaar als port (security/heimdal) en er zit een
+ minimale installatie in de basisinstallatie van &os;.
+
+ Om het grootst mogelijke publiek te bereiken gaan deze
+ instructies ervan uit dat de Heimdal distributie die bij &os;
+ zit wordt gebruikt.
+
-
+
+ Opzetten van een Heimdal KDC
+
+
+ Kerberos5
+
+ Sleutel Distributie Centrum Instellingen
+
+
+ Het Sleutel Distributie Centrum (KDC,
+ voluit Key Distribution Center) is de
+ gecentraliseerde authenticatiedienst die
+ Kerberos levert. Het is de computer
+ die Kerberos tickets uitgeeft. Het
+ KDC wordt vertrouwd door
+ alle andere computer in de Kerberos
+ wereld en daarom dient er een strenger beveiligingsregime op
+ van kracht te zijn.
+
+ Hoewel het draaien van de
+ Kerberos dienst erg weinig van een
+ systeem vraagt, wordt het wel aangeraden om een machine in te
+ richten exclusief voor het KDC om
+ beveiligingsredenen.
+
+ Het opzetten van een KDC begint met de
+ controle of de instellingen in
+ /etc/rc.conf juist zijn om te functioneren
+ als KDC (misschien moeten paden veranderd
+ worden voor een eigen systeem):
+
+ kerberos5_server_enable="YES"
+kadmind5_server_enable="YES"
+kerberos_stash="YES"
+
+
+ is alleen beschikbaar in
+ &os; 4.X.
+
+
+ Daarna wordt het Kerberos
+ instellingenbestand /etc/krb5.conf
+ aangemaakt:
+
+ [libdefaults]
+ default_realm = EXAMPLE.ORG
+[realms]
+ EXAMPLE.ORG = {
+ kdc = kerberos.example.org
+ admin_server = kerberos.example.org
+ }
+[domain_realm]
+ .example.org = EXAMPLE.ORG
+
+ /etc/krb5.conf gaat ervan uit dat de
+ KDC de fully-qualified hostname kerberos.example.org heeft. Als de
+ KDC een andere hostname heeft, moet er nog
+ een CNAME (alias) toevoegd aan de zonefile.
+
+
+ Voor grotere netwerken met een juist ingestelde
+ BIND DNS server kan
+ het bovenstaande voorbeeld ingekort worden tot:
+
+ [libdefaults]
+ default_realm = EXAMPLE.ORG
+
+ Door de volgende regels toe te voegen aan de zonefile
+ voor example.org:
+
+ _kerberos._udp IN SRV 01 00 88 kerberos.example.org.
+_kerberos._tcp IN SRV 01 00 88 kerberos.example.org.
+_kpasswd._udp IN SRV 01 00 464 kerberos.example.org.
+_kerberos-adm._tcp IN SRV 01 00 749 kerberos.example.org.
+_kerberos IN TXT EXAMPLE.ORG.
+
+
+
+ Om clients de Kerberos
+ diensten te kunnen laten vinden, moet
+ er een volledig ingestelde
+ /etc/krb5.conf zijn of een minimaal
+ ingestelde /etc/krb5.conf
+ en een correct ingestelde DNS
+ server.
+
+
+ Nu wordt de Kerberos
+ database aangemaakt. Deze database bevat de sleutels voor
+ alle principals en zijn versleuteld met een hoofdwachtwoord.
+ Dit wachtwoord hoeft niet onthouden te worden omdat het wordt
+ opgeslagen in (/var/heimdal/m-key). De
+ hoofdsleutel wordt aangemaakt door kstash
+ te starten en een wachtwoord in te voeren.
+
+ Als de hoofdsleutel is gemaakt, kan de database
+ ingeschakeld worden met kadmin
+ met de optie -l (die staat voor
+ local). Deze optie geeft
+ kadmin de opdracht om de databasebestanden
+ direct te wijzigingen in plaats van via de
+ kadmind netwerkdienst. Hiermee wordt het
+ kip-ei probleem opgelost waarbij een verbinding wordt gemaakt
+ met de database voordat hij bestaat. Op het prompt van
+ kadmin kan met init
+ de database met de werelden aangemaakt worden.
+
+ Tenslotte, nog steeds in kadmin, kan
+ de eerste principal gemaakt worden met
+ add. De standaardopties voor de principal
+ worden nu aangehouden. Deze kunnen later altijd
+ nog gewijzigd worden met modify. Met
+ het commando ? kunnen alle beschikbare
+ mogelijkheden getoond worden.
+
+ Hieronder een sessie waarin een voorbeelddatabase wordt
+ aangemaakt:
+
+ &prompt.root; kstash
+Master key: xxxxxxxx
+Verifying password - Master key: xxxxxxxx
+
+&prompt.root; kadmin -l
+kadmin> init EXAMPLE.ORG
+Realm max ticket life [unlimited]:
+kadmin> add tillman
+Max ticket life [unlimited]:
+Max renewable life [unlimited]:
+Attributes []:
+Password: xxxxxxxx
+Verifying password - Password: xxxxxxxx
+
+ Nu kan de KDC dienst gestart worden
+ met /etc/rc.d/kerberos start en
+ /etc/rc.d/kadmind start. Op dit moment
+ draait er nog geen enkele daemon die gebruik maakt van
+ Kerberos. Bevestiging dat
+ KDC draait is te krijgen door een ticket te
+ vragen en dat uit te lezen voor de principal (user)
+ die zojuist is aangemaakt vanaf de commandoregel van het
+ KDC zelf:
+
+ &prompt.user; k5init tillman
+tillman@EXAMPLE.ORG's Password:
+
+&prompt.user; k5list
+Credentials cache: FILE:/tmp/krb5cc_500
+ Principal: tillman@EXAMPLE.ORG
+
+ Issued Expires Principal
+Aug 27 15:37:58 Aug 28 01:37:58 krbtgt/EXAMPLE.ORG@EXAMPLE.ORG
+
+
+
+ Kerberos inschakelen op een
+ Server met Heimdal diensten
+
+
+ Kerberos5
+
+ Diensten Inschakelen
+
+
+ Als eerste is een kopie van het instellingenbestand van
+ Kerberos nodig,
+ /etc/krb5.conf. Dit bestand kan
+ eenvoudigweg op een veilige manier (met netwerkprogramma's
+ als &man.scp.1;, of fysiek via een floppy) naar de
+ clientcomputer gekopieerd worden vanaf de
+ KDC.
+
+ Hierna is het /etc/krb5.keytab
+ nodig. Dit is het belangrijkste verschil tussen een server
+ die een daemons met Kerberos
+ aanbiedt en een werkstation: de server heeft het bestand
+ keytab nodig. Dit bestand bevat de
+ hostsleutel van de server waardoor het werkstation en de
+ KDC elkaars identiteit kunnen bevestigen.
+ Dit bestand dient veilig overgebracht te worden omdat de
+ beveiliging van de server doorbroken kan worden als de
+ sleutel openbaar wordt gemaakt. Dit betekent expliciet dat
+ overdracht via een protocol dat platte tekst gebruikt,
+ bv. FTP, een slecht idee is.
+
+ Meestal wordt keytab naar de
+ server gebracht met kadmin. Dat
+ werkt handig omdat ook de host principal (het
+ KDC onderdeel van
+ krb5.keytab) aangemaakt moet
+ worden met kadmin.
+
+ Let wel op dat er al een ticket moet zijn en dat dit
+ ticket de kadmin interface moet mogen
+ gebruiken in kadmind.acl. Zie
+ Beheer op Afstand in de Heimdal
+ informatiepagina's (info heimdal) voor
+ details over het ontwerpen van toegangscontrole. Als
+ kadmin via het netwerk geen toegang mag
+ hebben, dan kan ook op een veilige verbinding gemaakt worden
+ met de KDC (via het lokale console,
+ &man.ssh.1; of Kerberos
+ &man.telnet.1;) zodat alles lokaal uitgevoerd kan worden met
+ kadmin -l.
+
+ Na het installeren van
+ /etc/krb5.conf kan
+ kadmin van de
+ Kerberos server gebruikt worden.
+ Met add --random-key kan de host
+ principal toegevoegd worden en met ext kan
+ de host principal van de server naar zijn eigen keytab
+ getrokken worden. Bijvoorbeeld:
+
+ &prompt.root; kadmin
+kadmin> add --random-key host/myserver.example.org
+Max ticket life [unlimited]:
+Max renewable life [unlimited]:
+Attributes []:
+kadmin> ext host/myserver.example.org
+kadmin> exit
+
+ Let op: ext slaat de sleutel standaard
+ op in /etc/krb5.keytab.
+
+ Als kadmind niet beschikbaar is op de
+ KDC (wellicht om beveiligingsredenen) en
+ er via het netwerk dus geen toegang is tot
+ kadmin, dan kan de host principal
+ (host/myserver.EXAMPLE.ORG) ook direct
+ aan de KDC toegevoegd worden en daarna in
+ een tijdelijk bestand gezet worden. Het volgende kan
+ gebruikt worden om te voorkomen dat
+ /etc/krb5.keytab op de
+ KDC) wordt overschreven:
+
+ &prompt.root; kadmin
+kadmin> ext --keytab=/tmp/example.keytab host/myserver.example.org
+kadmin> exit
+
+ Hierna kan de keytab veilig gekopieerd worden naar de
+ server (met scp of een floppy). Geef
+ een niet-standaard naam op voor de keytab om te voorkomen
+ dat de keytab op de KDC wordt
+ overschreven.
+
+ Nu kan de server communiceren met de
+ KDC (vanweg
+ krb5.conf) en zijn identiteit bewijzen
+ (vanwege krb5.keytab). Nu is de server
+ klaar om er een aantal Kerberos
+ diensten op te activeren. In dit voorbeeld wordt de dienst
+ telnet geactiveerd door de volgende regel
+ in /etc/inetd.conf te zetten en dan
+ &man.inetd.8; te herstarten met
+ /etc/rc.d/inetd restart:
+
+ telnet stream tcp nowait root /usr/libexec/telnetd telnetd -a user
+
+ Het belangrijkste is dat de typering
+ -a (van authenticatie) op user staat. Meer
+ details zijn in &man.telnetd.8; te vinden.
+
+
+
+ Kerberos Activeren op een
+ Client met Heimdal
+
+
+ Kerberos5
+
+ Clientinstellingen
+
+
+ Het opzetten van een clientcomputer is eigenlijk
+ kinderlijk eenvoudig. Wat betreft de
+ Kerberos instelling is alleen het
+ Kerberos instellingenbestand
+ (/etc/krb5.conf) nodig. Dat kan
+ eenvoudigweg naar de clientcomputer gekopieerd worden vanaf
+ de KDC.
+
+ Test de client met kinit,
+ klist en kdestroy
+ vanaf de client om een ticket te krijgen, te bekijken en
+ daarna te verwijderen voor de principal die hierboven is
+ aangemaakt. Nu moeten ook
+ Kerberos applicaties gebruikt
+ kunnen worden om verbindingen te maken met servers waarop
+ Kerberos is geactiveerd. Als dat
+ niet lukt en het verkrijgen van een ticket is wel mogelijk,
+ dan ligt dat hoogstwaarschijnlijk aan de server en niet aan
+ de client of de KDC.
+
+ Bij het testen van een applicatie als
+ telnet kan het beste een pakketsnuffelaar
+ (bv. &man.tcpdump.1;) gebruikt worden om te bevestigen dat
+ een wachtwoord niet als tekst wordt verzonden. Gebruik
+ telnet met de optie -x.
+ Dan wordt de complete datastroom versleuteld (vergelijkbaar
+ met ssh).
+
+ De Kerberos sleutelapplicaties
+ op de client (meestal kinit,
+ klist, kdestroy en
+ kpasswd) zitten in de basisinstallatie
+ van &os;. Let wel dat ze in &os; versies van voor 5.0
+ hernoemd zijn naar k5init,
+ k5list, k5destroy,
+ k5passwd en k5stash
+ (deze commando's worden gewoonlijk maar een keer
+ gebruikt).
+
+ Er worden standaard ook andere
+ Kerberos applicaties op de client
+ geïnstalleerd. Hier komt de
+ minimalistische natuur van de Heimdal
+ basisinstallatie boven drijven: telnet is
+ de enige dienst waarvoor Kerberos
+ geactiveerd is.
+
+ De Heimdal port voegt een aantal missende
+ clientapplicaties toe: versies met ondersteuning voor
+ Kerberos van
+ ftp, rsh,
+ rcp, rlogin en een paar
+ minder gebruikelijke programma's. De MIT
+ port bevat ook een volledig gamma aan
+ Kerberos clientapplicaties.
+
+
+
+ Instellingenbestanden voor Gebruikers:
+ .k5login en
+ .k5users
+
+
+ Kerberos5
+
+ Bestanden met Gebruikersinstellingen
+
+
+ Voor gebruikers binnen een wereld wijst hun
+ Kerberos principal (bv.
+ tillman@EXAMPLE.ORG) gewoonlijk naar
+ een lokale gebruikeraccount (bv. een lokale account met de
+ naam tillman). Voor Clientapplicaties
+ als telnet is gewoonlijk geen
+ gebruikersnaam of principal nodig.
+
+ Soms moet iemand zonder bijpassende
+ Kerberos principal toch toegang
+ hebben tot een lokale gebruikersaccount.
+ tillman@EXAMPLE.ORG zou bijvoorbeeld
+ toegang nodig kunnen hebben tot de lokale gebruikersaccount
+ webdevelopers. Andere principals zouden
+ die toegang wellicht ook nodig kunnen hebben.
+
+ De bestanden .k5login en
+ .k5users uit de gebruikersmap kunnen op
+ eenzelfde manier gebruikt worden als
+ .hosts en .rhosts.
+ Zo wordt het voorgaande probleem opgelost. Als bijvoorbeeld
+ een .k5login met de volgende
+ inhoud:
+
+ tillman@example.org
+jdoe@example.org
+
+ in de thuismap van de lokale gebruiker
+ webdevelopers gezet wordt dan zouden
+ beide principals toegang hebben tot die account zonder dat
+ ze een wachtwoord hoeven te delen.
+
+ We raden aan de handboekpagina's voor deze commando's
+ te lezen. Let op dat de ksu handboekpagina
+ .k5users behandelt.
+
+
+
+ Kerberos Tips, Trucs en
+ Problemen Oplossen
+
+
+ Kerberos5
+
+ Problemen Oplossen
+
+
+
+
+ Als de Heimdal of MIT
+ Kerberos port wordt gebruikt
+ dan dient de PATH omgevingsvariabele
+ de Kerberos versies van de
+ clientapplicaties te tonen voor de systeemversies.
+
+
+
+ Hebben alle computers in de wereld hun tijd
+ gesynchroniseerd? Als dat niet zo is, dan slaagt de
+ authenticatie wellicht niet.
+ beschrijft hoe klokken
+ met NTP gesynchroniseerd kunnen
+ worden.
+
+
+
+ MIT en Heimdal werken prima samen.
+ Dit geldt niet voor kadmin omdat
+ daarvoor geen protocolstandaard is.
+
+
+
+ Als een hostnaam wordt gewijzigd, dan moet ook de
+ host/ principal aangepast en de
+ keytab. Dit geldt ook voor bijzondere instellingen
+ in de keytab zoals de www/ principal
+ voor www/mod_auth_kerb van
+ Apache.
+
+
+
+ Alle hosts in een wereld moeten oplosbaar
+ (resolvable) zijn (zowel vooruit als achteruit) in de
+ DNS (of tenminste in
+ /etc/hosts). CNAMEs werken wel,
+ maar de A en PTR records moeten juist en actief zijn. De
+ foutmelding is niet erg duidelijk: Kerberos5
+ refuses authentication because Read req failed: Key table
+ entry not found.
+
+
+
+ Sommige besturingssystemen van clients voor een
+ KDC zetten wellicht geen setuid
+ root voor ksu.
+ Dit betekent dat ksu niet werkt. Dat
+ is vanuit beveiligingsoogpunt een prima idee, maar wel
+ lastig. Dit is dus geen KDC
+ fout.
+
+
+
+ Als met MIT
+ Kerberos een principal een
+ ticket moet krijgen dat langer geldig is dan de standaard
+ van tien uur, dan moet
+ modify_principal in
+ kadmin gebruikt worden om de maximale
+ geldigheidsduur (maxlife) van zowel de principal waar het
+ om gaat als de krbtgt principal aan
+ te passen. Dan kan de principal kinit
+ -l gebruiken om een ticket met een
+ langere levensduur aan te vragen.
+
+
+
+
+ Als een pakketsnuffelaar op de
+ KDC draait bij om te helpen bij het
+ oplossen van problemen en dan kinit
+ vanaf een werkstation wordt gestart, dan wordt zichtbaar
+ dat de TGT meteen wordt verstuurd als
+ kinit start, zelfs nog voor het
+ wachtwoord! De reden hiervoor is dat de
+ Kerberos server vrijelijk een
+ TGT (Ticket Granting
+ Ticket) verstuurt op iedere niet geautoriseerd verzoek.
+ Maar iedere TGT is versleuteld met een
+ sleutel die is afgeleid van het wachtwoord van de
+ gebruiker. Als een gebruiker zijn wachtwoord ingeeft,
+ wordt dat dus niet naar de KDC
+ gezonden, maar ontcijfert het de TGT
+ die kinit al heeft ontvangen. Als de
+ ontcijfering resulteert in een geldige ticket met een
+ geldige tijdstempel, dan heeft de gebruiker geldige
+ Kerberos rechten. Deze
+ rechten bevatten ook een sessiesleutel voor het opzetten
+ van beveiligde communicatie met de
+ Kerberos server in de toekomst
+ en de eigenlijke ticket-granting ticket, die is
+ versleuteld met de sleutel van de
+ Kerberos server zelf. Deze
+ tweede laag van versleuteling is niet bekend voor de
+ gebruiker, maar het stelt de
+ Kerberos server in staat om de
+ juistheid van iedere TGT te
+ bevestigen.
+
+
+
+
+ Als tickets worden gebruik die lang geldig zijn (bv.
+ een week) en OpenSSH wordt
+ gebruikt om een verbinding te maken met de machine waarop
+ het ticket staat, zorg er dan voor dat de
+ Kerberos optie
+ op no
+ staat in sshd_config want anders
+ worden tickets verwijderd bij afmelden.
+
+
+
+ Host principals kunnen ook een langere levensduur
+ hebben. Als een gebruikers principal een levensduur van
+ een week heeft, maar de host waar de verbinding mee
+ gemaakt wordt heeft een levensduur van negen uur,
+ dan heb staat er een verlopen host principal in de cache
+ en dan werkt e.e.a. niet zoals verwacht.
+
+
+
+ Een krb5.dict bestand om het
+ gebruik van bepaalde slechte wachtwoorden te voorkomen
+ (dit wordt kort behandeld in de handboekpagina voor
+ kadmind) heeft alleen betrekking op
+ principals waar een wachtwoordbeleid voor geldt. De
+ opmaak van krb5.dict is eenvoudig:
+ een rij tekens per regel. Een symbolic link maken naar
+ /usr/share/dict/words is misschien
+ handig.
+
+
+
+
+
+ Verschillen met de MIT port
+
+ Het belangrijkste verschil tussen de
+ MIT en Heimdal installatie heeft
+ betrekking op kadmin, dat een andere (maar
+ gelijkwaardige) set commando's kent en een andere protocol
+ gebruikt. Dit betekent nogal wat als een
+ KDC MIT is, omdat
+ dan de kadmin van Heimdal niet gebruikt
+ kan worden om de KDC vanaf afstand te
+ beheren (dat geldt trouwens ook vice versa).
+
+ De clientapplicaties kunnen ook commandoregelopties
+ gebruiken die een beetje verschillen, maar waarmee wel
+ hetzelfde wordt bereikt. We raden aan de instructies op de
+ MIT Kerberos
+ website () te volgen.
+ Wees voorzichtig met paden: de MIT port
+ installeert standaard in
+ /usr/local/ en dus kunnen de
+ normale systeemapplicaties gestart worden in
+ plaats van die van MIT als de
+ PATH omgevingsvariabele de systeemmappen als
+ eerste weergeeft.
+
+
+ Als de MIT
+ security/krb5 port die
+ bij &os; zit wordt gebruikt, dan zorgt het lezen van
+ /usr/local/share/doc/krb5/README.FreeBSD
+ dat bij de port wordt geïnstalleerd voor een beter
+ begrip over waarom het aanmelden via
+ telnetd en klogind
+ soms wat vreemd verloopt. Als belangrijkste wijzen we erop
+ dat het bij het corrigeren van
+ onjuiste rechten op het cachebestand
+ noodzakelijk is dat het binaire bestand
+ login.krb5 wordt gebruikt voor
+ authenticatie zodat het op de juiste wijze eigenaarschap kan
+ wijzigen voor de doorgegeven rechten.
+
+
+
+
+ Beperkingen in
+ Kerberos
+
+
+ Kerberos5
+
+ Beperkingen en Tekortkomingen
+
+
+
+ Kerberos is een alles of
+ niets aanpak
+
+ Iedere ingeschakelde dienst op het netwerk moet
+ aangepast worden om met Kerberos
+ te werken (of op een andere manier beschermd zijn tegen
+ netwerkaanvallen), want anders kunnen gebruikersrechten
+ worden gestolen en hergebruikt. Een voorbeeld hier van is
+ het inschakelen van Kerberos
+ voor alle shells op afstand (via rsh en
+ telnet bijvoorbeeld), maar de
+ POP3 mailserver die wachtwoorden als
+ platte tekst verzend ongemoeid laten.
+
+
+
+ Kerberos is bedoeld voor
+ werkstations met een gebruiker
+
+ In een multi-user omgeving is
+ Kerberos minder veilig. Dit komt
+ doordat de tickets worden opgeslagen in de map
+ /tmp, waar gelezen kan worden door
+ alle gebruikers. Als een gebruiker een computer deelt met
+ andere gebruikers op hetzelfde moment (dus multi-user), dan
+ is het mogelijk dat een ticket van een gebruiker wordt
+ gestolen (gekopieerd) door een andere gebruiker.
+
+ Dit kan voorkomen worden met de commandoregeloptie
+ -c bestandsnaam of (bij
+ voorkeur) de omgevingsvariabele KRB5CCNAME,
+ maar dat wordt zelden gedaan. In principe kan het opslaan
+ van een ticket in de thuismap van een gebruiker in
+ combinatie met eenvoudige bestandsrechten dit probleem
+ verhelpen.
+
+
+
+ De KDC is een single point of failure
+
+ Zoals het is ontworpen, moet de KDC
+ zo goed mogelijk beveiligd zijn, omdat de hoofd
+ wachtwoorddatabase erop staat. De KDC
+ hoort geen enkele andere dienst aan te bieden en moet ook
+ fysiek afgeschermd worden. Het gevaar is groot, omdat
+ Kerberos alle wachtwoorden
+ versleutelt met dezelfde sleutel (de master
+ sleutel) die als een bestand op de KDC
+ staat.
+
+ Toch is een gecompromitteerde master sleutel niet zo'n
+ groot probleem als wellicht wordt verondersteld. De
+ mastersleutel wordt alleen gebruikt om de
+ Kerberos database te
+ versleutelen en als zaad voor de generator van willekeurige
+ nummers. Zo lang als de toegang tot de
+ KDC is beveiligd, kan een aanvaller niet
+ echt iets doen met de mastersleutel.
+
+ Als de KDC niet beschikbaar is
+ (misschien door een ontzeggen van dienst aanval of
+ netwerkproblemen) kunnen de netwerkdiensten niet gebruikt
+ worden omdat er geen authenticatie uitgevoerd kan worden;
+ een recept voor een ontzeggen van dienst aanval. Dit
+ risico kan omzeild worden door meerdere
+ KDC's (één master en
+ één of meer slaves) en een zorgvuldige
+ implementatie van secundaire of fall-back authenticatie.
+ PAM is hier uitermate geschikt
+ voor.
+
+
+
+ Tekortkomingen van
+ Kerberos
+
+ Kerberos stelt gebruikers,
+ hosts en diensten in staat om elkaar te authenticeren.
+ Maar het heeft geen mechanisme om de KDC
+ te authenticeren aan de gebruikers, hosts of diensten. Dit
+ betekent dat bijvoorbeeld een vervalste
+ kinit alle gebruikersnamen en
+ wachtwoorden zou kunnen afluisteren. Iets als
+ security/tripwire of
+ andere controle-instrumenten voor de integriteit van
+ bestandssystemen kunnen hier verlichting brengen.
+
+
+
+
+ Bronnen en Verdere Informatie
+
+
+ Kerberos5
+
+ Externe Bronnen
+
+
+
+
+
+ De Kerberos FAQ
+ (Engels)
+
+
+
+ Een
+ Authenticatiesysteem Ontwerpen: een Dialoog in Vier
+ Scenes (Engels)
+
+
+
+
+ RFC 1510, De Kerberos Netwerk
+ Authenticatie Dienst (V5) (Engels)
+
+
+
+
+ MIT
+ Kerberos
+ homepage
+
+
+
+ Heimdal
+ Kerberos homepage
+
+
- * OpenSSL
+
+
+
+ Tom
+ Rhodes
+ Geschreven door
+
+
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
+
+
+
-
- * Broncode installaties
+ OpenSSL
+
+
+ beveiliging
+
+ OpenSSL
+
+
+ OpenSSL
+
+ Een toepassing die bij &os; zit die veel gebruikers over het
+ hoofd zien is OpenSSL.
+ OpenSSL biedt een versleutelde
+ transportlaag bovenop de normale communicatielaag. Daardoor
+ biedt het de mogelijkheid met veel netwerktoepassingen en
+ diensten verweven te raken.
+
+ Een aantal toepassingen van
+ OpenSSL zijn versleutelde
+ authenticatie van mailclients, webgebaseerde transacties als
+ creditcardbetalingen en nog veel meer. Veel ports zoals
+ www/apache13-ssl en
+ mail/sylpheed-claws
+ bieden tijdens het compileren ondersteuning om
+ OpenSSL in te bouwen.
+
+
+ In de meeste gevallen zal de portscollectie proberen
+ security/openssl te bouwen,
+ tenzij de make variabele WITH_OPENSSL_BASE
+ expliciet naar yes is gezet.
+
+
+ De versie van OpenSSL die bij &os;
+ zit ondersteunt Secure Sockets Layer v2/v3 (SSLv2/SSLv3),
+ Transport Layer Security v1 (TLSv1) netwerk
+ beveiligingsprotocollen en kan gebruikt worden als generieke
+ versleutelingsbibliotheek voor applicaties.
+
+
+ Hoewel OpenSSL ondersteuning
+ biedt voor het IDEA algoritme, is dat
+ standaard uitgeschakeld in verband met patenten in de VS. Om
+ het te gebruiken dient de licentie gelezen te worden en, als
+ de restricties aanvaardbaar zijn, dient de make variabele
+ MAKE_IDEA ingesteld te worden in
+ make.conf.
+
+
+ Een van de meest gebruikte toepassingen van
+ OpenSSL is het leveren van
+ certificaten voor gebruik met softwaretoepassingen. Deze
+ certificaten verzekeren dat de eigenschappen van een bedrijf
+ of individu geldig zijn en niet vervalst. Als het certificaat
+ in kwestie niet geldig verklaard is door een van de
+ Certificate Authorities of CA's, dan komt er
+ een waarschuwing. Een Certificate Authority is een bedrijf,
+ zoals VeriSign, dat certificaten ondertekent zodat de
+ eigenschappen van een bedrijf of individu geldig verklaard kunnen
+ worden. Dit proces kost geld en het is zeker geen voorwaarde
+ voor het gebruik van certificaten. Het stelt wel de meer
+ paranoïde gebruikers gerust.
-
+
+ Certificaten Maken
+
+
+ OpenSSL
+
+ certificaten maken
+
+
+ Voor het maken van certificaten is het volgende commando
+ beschikbaar:
+
+ &prompt.root; openssl req -new -nodes -out req.pem -keyout cert.pem
+Generating a 1024 bit RSA private key
+................
+.......................................
+writing new private key to 'cert.pem'
+-----
+You are about to be asked to enter information that will be incorporated
+into your certificate request.
+What you are about to enter is what is called a Distinguished Name or a DN.
+There are quite a few fields but you can leave some blank
+For some fields there will be a default value,
+If you enter '.', the field will be left blank.
+-----
+Country Name (2 letter code) [AU]:US
+State or Province Name (full name) [Some-State]:PA
+Locality Name (eg, city) []:Pittsburgh
+Organization Name (eg, company) [Internet Widgits Pty Ltd]:My Company
+Organizational Unit Name (eg, section) []:Systems Administrator
+Common Name (eg, YOUR name) []:localhost.example.org
+Email Address []:trhodes@FreeBSD.org
+
+Please enter the following 'extra' attributes
+to be sent with your certificate request
+A challenge password []:SOME PASSWORD
+An optional company name []:Another Name
+
+ Let op dat het antwoord direct na Common
+ Name een domeinnaam weergeeft. De prompt wil
+ dat er een servernaam wordt ingegeven voor het
+ verificatieproces. Het plaatsen van iets anders dan een
+ domeinnaam zorgt ervoor dat het certificaat waardeloos wordt.
+ Er zijn ook andere opties als verloopdatum, andere
+ versleutelingsalgoritmen, etc, beschikbaar. Een volledige
+ lijst is na te lezen in de handboekpagina van
+ &man.openssl.1;.
+
+ Er zou nu een bestand cert.pem moeten
+ bestaan in de map waar het voorgaande commando is uitgevoerd.
+ Dit is het certificaat dat naar een van de
+ CA's ter ondertekening gezonden kan
+ worden.
+
+ In gevallen waar ondertekening door een
+ CA niet vereist is, kan een zelfondertekend
+ certificaat gemaakt worden. Maak als eerste de
+ RSA sleutel:
+
+ &prompt.root; openssl dsaparam -rand -genkey -out
+ myRSA.key 1024
+
+ Hierna kan de CA sleutel gemaakt
+ worden:
+
+ &prompt.root; openssl gendsa -des3 -out \
+ myca.key
+ myRSA.key
+
+ Deze sleutel kan gebruikt worden om een certificaat te
+ maken:
+
+ &prompt.root; openssl req -new -x509 -days 365 -key
+myca.key -out new.crt
+
+ Er zouden nu twee bestanden bijgekomen moeten zijn in de
+ map: een certificate authority ondertekeningsbestand
+ myca.key en new.crt,
+ het certificaat zelf. Deze moeten in een map geplaatst worden,
+ bij voorkeur onder /etc
+ waar alleen root kan lezen. De rechten
+ 0700 zijn hier prima en die kunnen ingesteld worden met
+ chmod.
+
+
+ Certificate Gebruiken: een Voorbeeld
+
+ En wat kunnen deze bestanden? Een prima toepassing zou
+ het versleutelen van verbindingen naar de
+ Sendmail MTA
+ kunnen zijn. Daardoor zouden gebruikers niet langer platte
+ tekst hoeven te authenticeren om mail te sturen via de lokale
+ MTA.
+
+
+ Dit is niet de best denkbare toepassing omdat sommige
+ MUA's de gebruiker een foutmelding geven
+ als ze het certificaat niet lokaal geïnstalleerd hebben.
+ De documentatie bij de software geeft meer informatie over
+ het installeren van certificaten.
+
+
+ De volgende regels moeten opgenomen worden in het lokale
+ .mc bestand:
+
+ dnl SSL Options
+define(`confCACERT_PATH',`/etc/certs')dnl
+define(`confCACERT',`/etc/certs/new.crt')dnl
+define(`confSERVER_CERT',`/etc/certs/new.crt')dnl
+define(`confSERVER_KEY',`/etc/certs/myca.key')dnl
+define(`confTLS_SRV_OPTIONS', `V')dnl
+
+ /etc/certs/ is de
+ map die gebruikt wordt voor het lokaal opslaan van certificaten
+ en sleutels. De laatste voorwaarde het is opnieuw aanmaken van
+ het lokale .cf bestand. Dit gaat door
+ eenvoudigweg make<
+ install te typen in de map
+ /etc/mail. Laat dat
+ volgen door een make
+ restart waardoor de
+ Sendmail daemon herstart zou moeten
+ worden.
+
+ Als alles goed is gegaan, dan staan er geen foutmeldingen
+ /var/log/maillog en is
+ Sendmail zichtbaar in de
+ proceslijst.
+
+ Maak als eenvoudige test een verbinding met de mailserver
+ met &man.telnet.1;:
+
+ &prompt.root; telnet example.com 25
+Trying 192.0.34.166...
+Connected to example.com.
+Escape character is '^]'.
+220 example.com ESMTP Sendmail 8.12.10/8.12.10; Tue, 31 Aug 2004 03:41:22 -0400 (EDT)
+ehlo example.com
+250-example.com Hello example.com [192.0.34.166], pleased to meet you
+250-ENHANCEDSTATUSCODES
+250-PIPELINING
+250-8BITMIME
+250-SIZE
+250-DSN
+250-ETRN
+250-AUTH LOGIN PLAIN
+250-STARTTLS
+250-DELIVERBY
+250 HELP
+quit
+221 2.0.0 example.com closing connection
+Connection closed by foreign host.
+
+ Als de regel STARTTLS verschijnt in de
+ uitvoer dan werkt alles correct.NikClaytonnik@FreeBSD.org
- Geschreven door
+ Gerschreven door
+
+
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
- * VPN over IPsec
+
+ VPN via IPsec
+
+ Een VPN opzetten met &os; gateways tussen twee netwerken die
+ gescheiden zijn door internet.Hiten M.Pandyahmp@FreeBSD.orgGeschreven door
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
+
+
- * IPsec begrijpen
-
-
+ IPsec Begrijpen
+
+ Deze paragraaf is een gids in het proces van het opzetten,
+ en gebruiken van IPsec en het veilig laten communiceren van
+ machines in een omgeving die bestaat uit &os; en
+ µsoft.windows; 2000/XP.
+ Voordat IPsec opgezet kan worden dient de lezer bekend te zijn
+ met de concepten die nodig zijn om een aangepaste kernel te
+ bouwen (zie ).
+
+ IPsec is een protocol dat bovenop de
+ Internet Protocol (IP) laag ligt. Hiermee kunnen twee of meer
+ host op een veilige manier communiceren (vandaar de naam). De
+ &os; IPsec netwerk wachtrij (stack) is gebaseerd
+ op de KAME
+ implementatie, die zowel de IPv4 als de IPv6 protocolfamilies
+ ondersteunt.
+
+
+ &os; 5.X bevat een door hardware
+ geaccelereerde IPsec wachtrij die Fast
+ IPsec heet en uit OpenBSD komt. Die kan gebruik
+ maken van cryptografische hardware (waar mogelijk) via het
+ &man.crypto.4; subsysteem om de prestaties van IPsec te
+ optimaliseren. Dit subsysteem is nieuw en ondersteunt niet
+ alle opties die beschikbaar zijn in de KAME versie van
+ IPsec. Voordat er gebruik gemaakt kan worden van door
+ hardware versnelde IPsec, moet de volgende optie in het
+ kernelinstellingenbestand worden gezet:
+
+ options FAST_IPSEC # new IPsec (cannot define w/ IPSEC)
+
+ Het is op dit moment niet mogelijk om het
+ Fast IPsec subsysteem samen met de KAME
+ implementatie van IPsec te gebruiken. Zie
+ &man.fast.ipsec.4; voor meer informatie.
+
+
+ IPsec bestaat uit twee subprotocollen:
+
+
+
+ Encapsulated Security Payload
+ (ESP) beschermt de IP pakketdata tegen
+ inmenging door een derde partij door de inhoud te
+ versleutelen met symmetrische
+ versleutelingsalgoritmen (als Blowfish en 3DES).
+
+
+
+ Authentication Header (AH)
+ beschermt de IP pakketkop tegen inmenging door een derde
+ partij en spoofing door een cryptografische checksum te
+ berekenen en de IP pakketkopvelden te hashen met een
+ veilige hashfunctie. Hierna wordt een extra kop ingevoegd
+ die de hash bevat zodat de informatie in het pakket
+ geauthenticeerd kan worden.
+
+
+
+ ESP en AH kunnen
+ samen of apart gebruikt worden, afhankelijk van de
+ omgeving.
+
+ IPsec kan gebruikt worden om het verkeer tussen twee hosts
+ direct te versleutelen (dat heet Transport
+ Mode) of door virtuele tunnels te
+ bouwen tussen twee subnetten die gebruikt kunnen worden voor
+ veilige communicatie tussen twee bedrijfsnetwerken (dat heet
+ Tunnel Mode). De laatste versie staat
+ beter bekend als Virtual Private Network
+ (VPN). In &man.ipsec.4; staat gedetailleerde
+ informatie over het IPsec subsysteem in &os;.
+
+ Voor ondersteuning voor IPsec in de kernel zijn de
+ volgende opties nodig in het
+ kernelinstellingenbestand:
+
+ options IPSEC #IP security
+options IPSEC_ESP #IP security (crypto; define w/ IPSEC)
+
+ Als er ook fouten in IPsec (debugging) verwijderd moeten
+ kunnen worden, dan is de volgende optie ook nodig:
+
+ options IPSEC_DEBUG #debug for IP security
- * Het probleem
-
-
+ Het Probleem
+
+ Er bestaat geen standaard voor wat een VPN is. VPN's
+ kunnen opgezet worden met behulp van een aantal verschillende
+ technologieën die allemaal hun eigen voor- en nadelen
+ hebben. Dit onderdeel bevat een scenario en de
+ strategieën die gebruikt kunnen worden voor het
+ implementeren van een VPN in iedere situatie.
- * Scenario #1: Twee netwerken verbonden met het internet
- werken als één
-
-
- * Stap 1: Maken en testen van een virtuele
- netwerk link
-
-
-
+ Het Scenario: twee netwerken die één moeten
+ lijken en via internet verbonden zijn
+
+ Dit is het uitgangspunt:
+
+
+
+ Er zijn tenminste twee locaties
+
+
+
+ Beide locaties gebruiken IP
+
+
+
+ Beide locaties hebben een internetverbinding via een
+ gateway waarop &os; draait.
+
+
+
+ De gateway op ieder netwerk heeft tenminste
+ één publiek IP
+ adres.
+
+
+
+ De interne adressen van de twee netwerken mogen
+ publieke of private IP adressen zijn,
+ dat maakt niet uit. Er mag NAT draaien op de gateway als
+ dat nodig is.
+
+
+
+ De interne IP adressen van de twee
+ netwerken mogen niet conflicteren.
+ Hoewel dit in theorie mogelijk is een combinatie van VPN en
+ NAT te gebruiken om dit te laten werken, wordt het vast een
+ drama om dit in te stellen.
+
+
+
+ Als de twee netwerken die met elkaar verbonden moeten
+ worden intern dezelfde private IP
+ adresreeksen gebruiken (beiden gebruiken bijvoorbeeld 192.168.1.x), dan moet een van de
+ netwerken hernummerd worden.
+
+ De netwerk topologie zou er zo uit kunnen zien:
+
+
+
+
+
+
+
+Netwerk #1 [ Interne Hosts ] Privaat Net, 192.168.1.2-254
+ [ Win9x/NT/2K ]
+ [ UNIX ]
+ |
+ |
+ .---[fxp1]---. Privaat IP, 192.168.1.1
+ | FreeBSD |
+ `---[fxp0]---' Publiek IP, A.B.C.D
+ |
+ |
+ -=-=- Internet -=-=-
+ |
+ |
+ .---[fxp0]---. Publiek IP, W.X.Y.Z
+ | FreeBSD |
+ `---[fxp1]---' Privaat IP, 192.168.2.1
+ |
+ |
+Netwerk #2 [ Internal Hosts ]
+ [ Win9x/NT/2K ] Privaat Net, 192.168.2.2-254
+ [ UNIX ]
+
+
+
+ Let op de twee publieke IP adressen.
+ In de rest van dit onderdeel worden de letters gebruikt
+ om ze aan te duiden. Overal waar die letters staan, kunnen ze
+ vervangen worden door eigen publieke IP
+ adressen. Zo hebben ook de twee gateway machines intern .1
+ IP adressen en de twee netwerken hebben
+ andere IP adressen (respectievelijk 192.168.1.x en 192.168.2.x). Alle machines op de
+ private netwerken zijn zo ingesteld dat ze de .1 machine als hun standaard gateway
+ gebruiken.
+
+ Het is de bedoeling dat, vanuit het netwerkstandpunt, ieder
+ netwerk de machines in het andere netwerk kan zien alsof ze
+ beiden aan dezelfde router zouden zitten; wel een router die
+ een beetje langzaam is en af een toe een pakketje laat
+ vallen.
+
+ Dit betekent dat (bijvoorbeeld) op machine 192.168.1.20:
+
+ ping 192.168.2.34
+
+ uitgevoerd kan worden en dat werkt, transparant.
+ µsoft.windows; machines moeten het andere netwerk kunnen
+ zien, gedeelde bestanden kunnen benaderen, enzovoort, op
+ dezelfde manier als ze dat kunnen op het lokale netwerk.
+
+ En dat alles moet veilig zijn. Dat betekent dat verkeer
+ tussen de twee netwerken versleuteld moet zijn.
+
+ Het opzetten van een VPN tussen twee netwerken is een
+ proces dat uit meerdere stappen bestaat:
+
+
+
+ Het maken van een virtuele
+ netwerkverbinding tussen de twee netwerken over het
+ internet. Testen met gereedschappen als &man.ping.8; om te
+ bevestigen dat het werkt.
+
+
+
+ Het instellen van beveiligingsbeleid om te verzekeren
+ dat het verkeer tussen de twee netwerken transparant wordt
+ versleuteld en ontsleuteld wanneer dat nodig is. Testen
+ met gereedschappen als &man.tcpdump.1; om te bevestigen dat
+ het werkt.
+
+
+
+ Additionele software instellen op de &os; gateways om
+ µsoft.windows; machines de andere kant van het VPN te
+ laten zien.
+
+
-
- * Stap 2: De link beveiligen
+
+ Stap 1: De virtuele netwerkverbinding
+ maken en testen
+
+ Stel dat een gebruiker is aangemeld op de gatewaymachine
+ in netwerk #1 (met publiek IP adres
+ A.B.C.D en privaat
+ IP adres 192.168.1.1) en de voert
+ ping 192.168.2.1 uit, naar het private
+ adres van de machine met IP adres W.X.Y.Z. Wat moet er gebeuren om
+ dat te laten werken?
+
+
+
+ De gateway host moet weten hoe hij 192.168.2.1 kan bereiken. Met
+ andere woorden: hij moet een route hebben naar 192.168.2.1.
+
+
+
+ Private IP adressen als de reeks
+ 192.168.x horen in het
+ algemeen niet thuis op internet. Ieder pakket naar
+ 192.168.2.1 moet dus
+ ingepakt worden in een ander pakket. Dit pakket moet
+ afkomstig lijken van A.B.C.D en moet naar
+ W.X.Y.Z verstuurd worden.
+ Dit proces heet inkapseling
+ (encapsulation).
+
+
+
+ Als dit pakket aankomt bij W.X.Y.Z dan moet het
+ uitgekapseld (unencapsulated) worden en
+ afgeleverd worden aan 192.168.2.1.
+
+
+
+ Dit is alsof er een tunnel moet bestaan
+ tussen de twee netwerken. De twee
+ tunnelopeningen zijn de IP
+ adressen A.B.C.D en
+ W.X.Y.Z en de tunnel moet op de
+ hoogte zijn van de private IP adressen die
+ door de tunnel mogen. De tunnel wordt gebruikt om verkeer
+ met private IP adressen over het internet
+ te leiden.
+
+ Deze tunnel wordt gemaakt door gebruik te maken van de
+ generieke interface of gif devices
+ op &os;. De gif interface moet op
+ iedere gatewaymachine ingesteld zijn met vier
+ IP adressen: twee voor de publieke
+ IP adressen en twee voor de private
+ IP adressen.
+
+ Ondersteuning voor het gif
+ device moet in de &os; kernel van beide machine gecompileerd
+ worden. Dit kan door de volgende optie toe te voegen aan de
+ kernelinstellingenbestanden op beide machines, dan de kernel
+ te compileren, te installeren en dan gewoon te
+ herstarten:
+
+ pseudo-device gif
+
+ Het instellen van de tunnel gaat in twee stappen. Eerst
+ moet de tunnel verteld worden wat de IP
+ adressen aan de buitenkant (publiek) zijn met
+ &man.gifconfig.8;. Daarna moeten de private
+ IP adressen ingesteld worden met
+ &man.ifconfig.8;.
+
+
+ In &os; 5.X is de functionaliteit van &man.gifconfig.8;
+ opgenomen in &man.ifconfig.8;.
+
+
+ Op de gatewaymachine op netwerk #1 moeten de volgende
+ commando's uitgevoerd worden om te tunnel in te
+ stellen.
+
+ gifconfig gif0 A.B.C.D W.X.Y.Z
+ifconfig gif0 inet 192.168.1.1 192.168.2.1 netmask 0xffffffff
+
+ Op de andere gatewaymachine moeten dezelfde commando's
+ uitgevoerd worden met omgedraaide IP
+ adressen.
+
+ gifconfig gif0 W.X.Y.Z A.B.C.D
+ifconfig gif0 inet 192.168.2.1 192.168.1.1 netmask 0xffffffff
+
+ Daarna toont:
+
+ gifconfig gif0
+
+ de instellingen. Op netwerk #1 zou dat het volgende
+ zijn:
+
+ &prompt.root; gifconfig gif0
+gif0: flags=8011<UP,POINTTOPOINT,MULTICAST> mtu 1280
+inet 192.168.1.1 --> 192.168.2.1 netmask 0xffffffff
+physical address inet A.B.C.D --> W.X.Y.Z
+
+ Er is nu een tunnel gemaakt tussen de fysieke adressen
+ A.B.C.D en
+ W.X.Y.Z en het verkeer dat
+ door de tunnel mag is dat tussen 192.168.1.1 en
+ 192.168.2.1.
+
+ Hiermee is ook een regel gemaakt in de routetabel op
+ beide machines die te bekijken zijn met netstat
+ -rn. Deze uitvoer komt van de gatewayhost op
+ netwerk #1.
+
+ &prompt.root; netstat -rn
+Routing tables
+
+Internet:
+Destination Gateway Flags Refs Use Netif Expire
+...
+192.168.2.1 192.168.1.1 UH 0 0 gif0
+...
+
+ De Flags waarde geeft aan dat dit een
+ hostroute is, wat betekent dat iedere gateway weet hoe hij de
+ andere gateway kan bereiken, maar dat ze niet weten hoe ze
+ bij de rest van elkaars netwerk kunnen komen. Dat probleem
+ wordt snel opgelost.
+
+ Het is waarschijnlijk dat op beide machines een firewall
+ draait. Die moet omzeild worden voor VPN verkeer. Het is
+ mogelijk al het verkeer tussen de beide netwerken toestaan of
+ firewallregels toe te voegen waarmee de beide netwerken die
+ het VPN met elkaar verbindt tegen elkaar beschermd
+ worden.
+
+ Het testen wordt een stuk eenvoudiger als de firewall zo
+ is ingesteld dat al het verkeer door het VPN wordt
+ doorgelaten. Laten kunnen nog restricties toegevoegd worden.
+ Met &man.ipfw.8; wordt met
+
+ ipfw add 1 allow ip from any to any via gif0
+
+ al het verkeer tussen de twee eindstations van het VPN
+ toegestaan zonder dat dit de andere regels van de firewall
+ beïnvloedt. Dit commando moet natuurlijk wel op beide
+ gatewayhosts uitgevoerd worden.
+
+ Deze instelling is toereikend om elke gateway machine het
+ recht te geven de ander te pingen. Op 192.168.1.1 kan nu:
+
+ ping 192.168.2.1
+
+ gedraaid worden en moet een antwoord komen. Op de andere
+ machine kan dezelfde test gedaan worden.
+
+ Maar nu zijn de andere machines op het interne netwerk
+ nog niet te bereiken. Dat komt door de routering: hoewel de
+ gateway machines elkaar nu weten te vinden, weten ze nog niet
+ hoe ze het netwerk achter elkaar kunnen bereiken.
+
+ Om dat probleem op te lossen moet een statische route
+ worden toevoegd op iedere gateway machine. Het commando
+ daarvoor is:
+
+ route add 192.168.2.0 192.168.2.1 netmask 0xffffff00
+
+ Dit betekent: om hosts op het netwerk 192.168.2.0 te bereiken moeten
+ pakketten naar de host 192.168.2.1 sturen. Een
+ zelfde dient op de andere gateway uitgevoerd te worden, maar
+ dan met de 192.168.1.x
+ adressen.
+
+ IP verkeer van hosts op het ene netwerk kan nu hosts op
+ het andere netwerk bereiken.
+
+ Hiermee is tweederde van het VPN tussen twee netwerken
+ aangelegd in de zin dat het virtueel is en er een
+ netwerk is. Maar het is nog niet privaat.
+ Dit wordt aangetoond met &man.ping.8; en &man.tcpdump.1;.
+ Voer op de gateway host het volgende commando uit:/para>
+
+ tcpdump dst host 192.168.2.1
+
+ Voer vanuit een andere sessie op de host het onderstaande
+ commando uit:
+
+ ping 192.168.2.1
+
+ De uitvoer is ongeveer als volgt:
+
+ 16:10:24.018080 192.168.1.1 > 192.168.2.1: icmp: echo request
+16:10:24.018109 192.168.1.1 > 192.168.2.1: icmp: echo reply
+16:10:25.018814 192.168.1.1 > 192.168.2.1: icmp: echo request
+16:10:25.018847 192.168.1.1 > 192.168.2.1: icmp: echo reply
+16:10:26.028896 192.168.1.1 > 192.168.2.1: icmp: echo request
+16:10:26.029112 192.168.1.1 > 192.168.2.1: icmp: echo reply
+
+ Het is zichtbaar dat de ICMP berichten niet versleuteld
+ heen en weer gaan. Als met &man.tcpdump.1; de parameter
+ was gebruikt om meer bytes te tonen uit
+ de pakketten, dan was meer informatie te zien geweest.
+
+ Dit is natuurlijk onacceptabel. In de volgende paragraaf
+ gaat het dan ook over het beveiligen van de verbinding tussen
+ de twee netwerken zodat al het verkeer automatisch wordt
+ versleuteld.
+
+
+ Samenvatting:
+
+
+ Stel voor beide kernels het pseudo-device
+ gif in.
+
+
+
+ Wijzig /etc/rc.conf op gateway
+ host #1 en voeg de volgende regels toe (wijzig
+ IP adressen naar wens).
+
+ gifconfig_gif0="A.B.C.D W.X.Y.Z"
+ifconfig_gif0="inet 192.168.1.1 192.168.2.1 netmask 0xffffffff"
+static_routes="vpn"
+route_vpn="192.168.2.0 192.168.2.1 netmask 0xffffff00"
+
+
+
+ Wijzig het firewallscript
+ (/etc/rc.firewall of iets dergelijks)
+ op beide hosts en voeg het volgende toe:
+
+ ipfw add 1 allow ip from any to any via gif0
+
+
+
+ Maak gelijksoortige wijzigingen in
+ /etc/rc.conf op gateway host #2 en
+ draai de volgorde van de IP adressen
+ om.
+
+
+
-
-
+
+ Stap 2: De Verbinding Beveiligen
+
+ Om de verbinding te beveiligen wordt IPsec gebruikt.
+ IPsec biedt een mechanisme waarmee twee hosts samen een
+ sleutel hebben en die sleutel dan gebruiken om gegevens te
+ versleutelen tussen die twee hosts.
+
+ Hiervoor moet op twee plaatsen een aanpassing gemaakt
+ worden in de instellingen.
+
+
+
+ Er moet een mechanisme zijn voor de twee hosts om het
+ eens te worden over het versleutelingsmechanisme dat
+ gebruikt gaat worden. Als de twee hosts het daar over
+ eens zijn, dan hebben ze een zogenaamde
+ beveiligingssamenwerking (security
+ association).
+
+
+
+ Er moet een mechanisme zijn waarmee wordt aangegeven
+ welk verkeer versleuteld moet worden. Tenslotte moet
+ niet al het uitgaande verkeer versleuteld worden, maar
+ alleen het verkeer dat onderdeel is van het VPN. De
+ regels die worden opgesteld om te bepalen welke verkeer
+ versleuteld wordt heten beveiligingsbeleid
+ (security policies).
+
+
+
+ Beveiligingssamenwerking en beveiligingsbeleid worden
+ beiden onderhouden door de kernel en kunnen aangepast worden
+ met programma's in userland. Maar voor dit mogelijk is, moet
+ de kernel geschikt gemaakt worden voor ondersteuning van IPsec
+ en het Encapsulated Security Payload (ESP) protocol. Dit kan
+ door de volgende regel op te nemen in het
+ kernelinstellingenbestand:
+
+ options IPSEC
+options IPSEC_ESP
+
+ Daarna dienen hercompilatie en installatie van de kernel
+ plaats te vinden en moet de machine gereboot worden. Dit
+ moet voor beide gateway hosts uitgevoerd worden.
+
+ Het is mogelijk twee wegen te bewandelen voor het
+ opzetten van beveiligingssamenwerking. Als het met de hand
+ wordt opgezet dan moeten een versleutelingsalgoritme,
+ coderingssleutels, enzovoort gekozen worden. Er kan ook een
+ daemons gebruikt worden die het Internet Key Exchange
+ protocol (IKE) implementeert om dit uit te voeren.
+
+ Het advies is voor het laatste te kiezen. Los van andere
+ overwegingen is het makkelijker in te stellen.
+
+ Voor het wijzigen en weergeven van het beveiligingsbeleid
+ is er &man.setkey.8;. Ter vergelijking:
+ setkey is voor het beveiligingsbeleid van
+ de kernel wat &man.route.8; is voor de routetabellen van de
+ kernel. setkey kan ook de huidige
+ beveiligingssamenwerkingen weergeven en om de vergelijking
+ door te zetten is het in die zin verwant aan
+ netstat -r.
+
+ Er zijn een aantal daemons beschikbaar voor het bijhouden
+ van beveiligingssamenwerking in &os;. In dit artikel wordt
+ beschreven hoe dat met racoon gaat. racoon zit in de &os;
+ portscollectie in de security/ categorie en kan op de
+ gebruikelijke manier geïnstalleerd worden.
+
+ racoon moet draaien op beide gateway hosts. Op iedere
+ host moet het IP adres van de andere
+ kant van het VPN ingesteld worden en een geheime sleutel (die
+ door de gebruiker zelf is gekozen en die hetzelfde moet zijn
+ op beide gateways).
+
+ De twee daemons zoeken dan contact met elkaar en stellen
+ vast dat ze zijn wie ze beweren te zijn (door gebruik te
+ maken van de geheime sleutel die is ingesteld). De daemons
+ maken dan een nieuwe geheime sleutel aan en gebruiken die om
+ het verkeer over het VPN te versleutelen. Ze wijzigen die
+ sleutel periodiek zodat een aanvaller er niets aan heeft in
+ het geval hij achter een van de sleutels zou komen. Dit is
+ theoretisch trouwens vrijwel onuitvoerbaar. Tegen de tijd
+ dat de sleutel gekraakt is, hebben de twee daemons al een
+ nieuwe gekozen.
+
+ De instellingen van racoon worden opgeslagen in
+ ${PREFIX}/etc/racoon. Daar tref staat
+ een instellingenbestand aan dat niet ingrijpend hoeft te
+ wijzigen. De andere component van de instellingen van racoon
+ die gewijzigd moet worden is de wederzijds bekende
+ sleutel (pre-shared key).
+
+ Standaard verwacht racoon dat die in
+ ${PREFIX}/etc/racoon/psk.txt staat. Het
+ is belangrijk op te merken dat de wederzijds bekende sleutel
+ niet de sleutel is die gebruikt wordt om
+ het verkeer van de VPN verbinding te versleutelen. Het is
+ gewoon een token die de sleutelbeheerdaemons in staat stelt
+ elkaar te vertrouwen.
+
+ psk.txt bevat een regel voor iedere
+ locatie waarmee verbinding bestaat. In dit voorbeeld zijn er
+ twee locaties en dus bevat ieder psk.txt
+ bestand één regel (omdat de ene kant van de VPN
+ alleen iets te maken heeft met één andere
+ kant).
+
+ Op gateway host #1 ziet dat er als volgt uit:
+
+ W.X.Y.Z secret
+
+ Er staat dus het publieke
+ IP adres van de andere kant, witruimte
+ ;– spatie(s) of tab(s) – en een stuk tekst met de
+ geheime sleutel. Natuurlijk dient secret niet
+ als sleutel gebruikt te worden. Ook hier gelden de normale
+ regels voor wachtwoorden.
+
+ Op gateway host #2 ziet dat er dan zo uit:
+
+ A.B.C.D secret
+
+ Dus het publieke
+ IP adres van de andere kant en dezelfde
+ geheime sleutel. psk.txt moet in mode
+ 0600 staan (alleen lees en schrijfrechten
+ voor root) voordat racoon zal
+ werken.
+
+ Racoon moet draaien op beide gatewaymachines. Er moeten
+ ook een aantal firewallregels toegevoegd worden om IKE
+ verkeer toe te staan, dat over UDP naar de ISAKMP (Internet
+ Security Association Key Management Protocol) poort loopt.
+ Nogmaals: deze regels staan bij voorkeur zo vroeg mogelijk in
+ de firewallregels.
+
+ ipfw add 1 allow udp from A.B.C.D to W.X.Y.Z isakmp
+ipfw add 1 allow udp from W.X.Y.Z to A.B.C.D isakmp
+
+ Als racoon eenmaal draait, dan kan de ene gateway host
+ vanaf de andere gepingd worden. De verbinding is dan nog
+ steeds niet versleuteld, maar racoon stelt wel de
+ beveiligingssamenwerking tussen de twee hosts op. Dat kan
+ heel even duren en dat uit zich in een kleine vertraging
+ voordat er een antwoord op de ping komt.
+
+ Als de beveiligingssamenwerking tot stand is gekomen,
+ dan kan deze getoond worden met &man.setkey.8;:
+
+ setkey -D
+
+ Het bovenstaande commando toont de
+ beveiligingssamenwerkingsingsinformatie.
+
+ Dat is de ene helft van het probleem. De andere helft is
+ het instellen van het beveiligingsbeleid.
+
+ Voor er een zinvol beveiligingsbeleid opgesteld kan
+ worden volgt eerst een samenvatting van wat tot nu toe is
+ bereikt. Het volgende geldt voor beide kanten van de
+ verbinding.
+
+ Ieder IP pakket dat wordt verzonden heeft een kop die
+ gegevens over het pakket bevat. De kop bevat het
+ IP adres van zowel de bron als de
+ bestemming. Zoals bekend horen private
+ IP adressen zoals de reeks
+ 192.168.x.y niet thuis op
+ internet. Ze moeten eerst ingepakt worden in een ander
+ pakket. Voor dat pakket moeten het publieke bron en
+ bestemmingsadres op de plaats van de private adressen gezet
+ worden.
+
+ Dus als een uitgaand pakket als volgt begon:
+
+
+
+
+
+
+
+
+ .----------------------.
+ | Src: 192.168.1.1 |
+ | Dst: 192.168.2.1 |
+ | <andere kopinfo> |
+ +----------------------+
+ | <pakket data> |
+ `----------------------'
+
+
+
+ Dan wordt het ingepakt in een andere pakket dat er
+ ongeveer als volgt uitziet:
+
+
+
+
+
+
+
+
+ .--------------------------.
+ | Src: A.B.C.D |
+ | Dst: W.X.Y.Z |
+ | <andere kop info> |
+ +--------------------------+
+ | .----------------------. |
+ | | Src: 192.168.1.1 | |
+ | | Dst: 192.168.2.1 | |
+ | | <andere kop info> | |
+ | +----------------------+ |
+ | | <pakket data> | |
+ | `----------------------' |
+ `--------------------------'
+
+
+
+ Het gif device zorgt voor het
+ inpakken. Het pakket heeft nu een echt IP
+ adres aan de buitenkant en het originele pakket zit ingepakt
+ als data in het pakket dat het internet opgestuurd gaat
+ worden.
+
+ Nu moet het verkeer over het VPN natuurlijk versleuteld
+ worden. Dat kan als volgt worden weergegeven:
+
+ Als een pakket A.B.C.D verlaat met als bestemming
+ W.X.Y.Z, versleutel het dan
+ met de benodigde beveiligingssamenwerkingen.
+
+ Als een pakket aankomt van W.X.Y.Z en het heeft
+ A.B.C.D als bestemming,
+ ontcijfer het dan met de benodigde
+ beveiligingssamenwerkingen.
+
+ Dat klopt bijna, maar niet helemaal. Als dit gebeurde,
+ dan zou al het verkeer van en naar W.X.Y.Z, zelfs als dat geen deel
+ uit zou maken van het VPN, versleuteld worden. Dat is niet
+ wenselijk. Het correcte beleid ziet er zo uit:
+
+ Als een pakket A.B.C.D verlaat en dat pakket
+ bevat een ander pakket en als het W.X.Y.Z als bestemming heeft,
+ versleutel het dan met de benodigde
+ beveiligingssamenwerkingen.
+
+ Als een pakket aankomt van W.X.Y.Z en het pakket bevat een
+ ander pakket en het heeft A.B.C.D als bestemming, ontcijfer
+ het dan met de benodigde
+ beveiligingssamenwerkingen.
+
+ Dat is een subtiele aanpassing, maar wel
+ noodzakelijk.
+
+ Beveiligingsbeleid wordt ook ingesteld met
+ &man.setkey.8;. &man.setkey.8; biedt een instellingtaal
+ voor het definiëren van beleid. Instructies kunnen via
+ STDIN gegeven worden of met de optie
+ uit een bestand komen dat de instellingen bevat.
+
+ De instellingen op gateway host #1 (die het publieke
+ IP adres A.B.C.D heeft) om al het uitgaande
+ verkeer naar W.X.Y.Z te laten
+ versleutelen is:
+
+ spdadd A.B.C.D/32 W.X.Y.Z/32 ipencap -P out ipsec esp/tunnel/A.B.C.D-W.X.Y.Z/require;
+
+ Deze commando's kunnen in een bestand (bv.
+ /etc/ipsec.conf) gezet worden om
+ uitgevoerd te worden:
+
+ &prompt.root; setkey -f /etc/ipsec.conf
+
+ vertelt &man.setkey.8; dat er een
+ regel toegevoegd moet worden aan de database met het
+ beveiligingsbeleid. De rest van de regel geeft aan op welke
+ pakketten dit beleid van toepassing is. A.B.C.D/32 en W.X.Y.Z/32 zijn de
+ IP adressen en netmaskers waarmee het
+ netwerk of de hosts worden aangegeven waarop het beleid van
+ toepassing is. In dit geval is het van toepassing op het
+ verkeer tussen twee hosts. vertelt
+ de kernel dat dit beleid alleen van toepassing is op
+ pakketten waarin een ander pakket ingepakt zit. betekent dat dit beleid van toepassing is op
+ uitgaande pakketten en betekent dat de
+ pakketten beveiligd moeten worden.
+
+ Het tweede deel geeft aan hoe een pakket versleuteld
+ wordt. is het protocol dat gebruikt
+ moet worden en geeft aan dat het
+ pakket ingepakt moet worden in een IPsec pakket. Het
+ herhaalde gebruik van A.B.C.D
+ en W.X.Y.Z heeft te maken met
+ het aangeven welke beveiligingssamenwerking gebruikt moet
+ worden en als laatste is het door
+ verplicht dat de pakketten versleuteld worden als deze regel
+ van toepassing is.
+
+ Deze regel is alleen van toepassing op uitgaande
+ pakketten. Er moet ook nog een regel komen voor inkomende
+ pakketten.
+
+ spdadd W.X.Y.Z/32 A.B.C.D/32 ipencap -P in ipsec esp/tunnel/W.X.Y.Z-A.B.C.D/require;
+
+ Let wel dat hier dus staat in plaats
+ van en dat de IP
+ adressen zijn omgedraaid.
+
+ Op de andere gateway host (met een publiek
+ IP adres W.X.Y.Z) zijn soortgelijke regels
+ nodig.
+
+ spdadd W.X.Y.Z/32 A.B.C.D/32 ipencap -P out ipsec esp/tunnel/W.X.Y.Z-A.B.C.D/require;
+spdadd A.B.C.D/32 W.X.Y.Z/32 ipencap -P in ipsec esp/tunnel/A.B.C.D-W.X.Y.Z/require;
+
+ Tenslotte moeten de firewalls ESP en IPENCAP pakketten
+ naar beide kanten toestaan. Deze regels moeten op beide
+ hosts toegevoegd worden.
+
+ ipfw add 1 allow esp from A.B.C.D to W.X.Y.Z
+ipfw add 1 allow esp from W.X.Y.Z to A.B.C.D
+ipfw add 1 allow ipencap from A.B.C.D to W.X.Y.Z
+ipfw add 1 allow ipencap from W.X.Y.Z to A.B.C.D
+
+ Omdat deze regels symmetrisch zijn, kunnen ze op beide
+ gateway hosts gebruikt worden.
+
+ Uitgaande pakketten zien er nu ongeveer zo uit:
+
+
+
+
+
+
+
+
+ .------------------------------. --------------------------.
+ | Src: A.B.C.D | |
+ | Dst: W.X.Y.Z | |
+ | <andere kop info> | | Versleuteld
+ +------------------------------+ | pakket.
+ | .--------------------------. | -------------. | inhoud
+ | | Src: A.B.C.D | | | | is
+ | | Dst: W.X.Y.Z | | | | volledig
+ | | <andere kop info> | | | |- veilig
+ | +--------------------------+ | | Ingepakt | voor
+ | | .----------------------. | | -. | pakket | snoopen
+ | | | Src: 192.168.1.1 | | | | Origineel|- met echt | door derden
+ | | | Dst: 192.168.2.1 | | | | pakket, | IP adres |
+ | | | <andere kop info> | | | |- privaat | |
+ | | +----------------------+ | | | IP adres | |
+ | | | <pakket data> | | | | | |
+ | | `----------------------' | | -' | |
+ | `--------------------------' | -------------' |
+ `------------------------------' --------------------------'
+
+
+
+
+ Als ze ontvangen worden door de andere kant van het VPN
+ dan worden ze eerst ontcijferd (met de
+ beveiligingssamenwerking die door racoon tot stand is
+ gebracht). Daarna komen ze de gif
+ interface binnen die de tweede laag uitpakt zodat het
+ binnenste pakket overblijft, dan nu naar het interne netwerk
+ kan reizen.
+
+ De beveiliging kan gecontroleerd worden met dezelfde
+ &man.ping.8; test die eerder is uitgevoerd, door eerst aan
+ te melden op de A.B.C.D
+ gateway machine en het onderstaande uit te voeren:
+
+ tcpdump dst host 192.168.2.1
+
+ In nog een sessie op dezelfde host kan dan het volgende
+ commando uitgevoerd worden:
+
+ ping 192.168.2.1
+
+ Nu hoort de volgende uitvoer te zien te zijn:
+
+ XXX tcpdump output
+
+ &man.tcpdump.1; toont nu de ESP pakketten. Als deze
+ pakketten verder bekeken worden met de optie
+ dan is de uitvoer onbegrijpelijk vanwege
+ de versleuteling.
+
+ Gefeliciteerd. Nu is het VPN tussen de twee locaties
+ opgezet.
+
+
+ Samenvatting
+
+
+ Stel beide kernels in met:
+
+ options IPSEC
+options IPSEC_ESP
+
+
+
+ Installeer security/racoon. Wijzig
+ ${PREFIX}/etc/racoon/psk.txt op
+ beide gateway hosts en voeg een regel toe voor het
+ IP adres van de host aan de andere
+ kant en een geheime sleutel die aan beide kanten bekend
+ is. Dit bestand hoort mode 0600 te hebben.
+
+
+
+ Voeg de volgende regels toe aan
+ /etc/rc.conf voor iedere
+ host:
+
+ ipsec_enable="YES"
+ipsec_file="/etc/ipsec.conf"
+
+
+ Maak /etc/ipsec.conf op iedere
+ host die de benodigde spdadd regels bevat. Op gateway
+ host #1 zou dat zijn:
+
+ spdadd A.B.C.D/32 W.X.Y.Z/32 ipencap -P out ipsec
+ esp/tunnel/A.B.C.D-W.X.Y.Z/require;
+spdadd W.X.Y.Z/32 A.B.C.D/32 ipencap -P in ipsec
+ esp/tunnel/W.X.Y.Z-A.B.C.D/require;
+
+ En op gateway host #2 is dat:
+
+spdadd W.X.Y.Z/32 A.B.C.D/32 ipencap -P out ipsec
+ esp/tunnel/W.X.Y.Z-A.B.C.D/require;
+spdadd A.B.C.D/32 W.X.Y.Z/32 ipencap -P in ipsec
+ esp/tunnel/A.B.C.D-W.X.Y.Z/require;
+
+
+
+ Voeg firewallregels toe om IKE, ESP en IPENCAP
+ verkeer toe te staan naar beide hosts:
+
+
+ipfw add 1 allow udp from A.B.C.D to W.X.Y.Z isakmp
+ipfw add 1 allow udp from W.X.Y.Z to A.B.C.D isakmp
+ipfw add 1 allow esp from A.B.C.D to W.X.Y.Z
+ipfw add 1 allow esp from W.X.Y.Z to A.B.C.D
+ipfw add 1 allow ipencap from A.B.C.D to W.X.Y.Z
+ipfw add 1 allow ipencap from W.X.Y.Z to A.B.C.D
+
+
+
+ De voorgaande twee stappen zouden voldoende moeten zijn
+ voor het opzetten van het VPN. Machines op ieder netwerk
+ kunnen elkaar nu bereiken op basis van IP
+ adressen en al het verkeer over de verbinding wordt
+ automatisch en veilig versleuteld.
+ ChernLeeBijgedragen door
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
+
+
- * OpenSSH
+ OpenSSH
-
- * Voordelen van het gebruik van OpenSSH
+ OpenSSH
+
+
+ beveiliging
+
+ OpenSSH
+
+
+ OpenSSH is een groep
+ netwerkverbindingsprogramma's waarmee computers via het netwerk
+ veilig benaderd kunnen worden. Het kan ingezet worden als een
+ directe vervanger van rlogin,
+ rsh, rcp en
+ telnet. Daarnaast kunnen alle andere
+ TCP/IP verbindingen veilig
+ getunneld of geforward worden door SSH.
+ OpenSSH versleutelt al het verkeer om
+ afluisteren, het stelen van een verbinding en andere
+ netwerkaanvallen effectief te voorkomen.
-
+ OpenSSH wordt onderhouden door het
+ OpenBSD project en is gebaseerd op SSH v1.2.12 met alle recente
+ bugfixes en updates. Het is compatibel met beide protocollen SSH
+ 1 en 2. OpenSSH zit in de
+ basisinstallatie sinds &os; 4.0.
+
+
+ Voordelen van Gebruik van OpenSSH
+
+ Als gewoonlijk &man.telnet.1; of &man.rlogin.1; wordt
+ gebruikt, wordt de data in platte tekst en niet versleuteld
+ verzonden. Netwerksnuffelaars die ergens tussen de client en
+ de server meeluisteren, kunnen een gebruikersnaam en wachtwoord
+ stelen en zien welke gegevens er worden overgezonden tijdens
+ een sessie. OpenSSH biedt een
+ verscheidenheid aan authenticatie en versleutelingsmethoden
+ die het voorgaande voorkomen.
- * Opstarten van sshd
+ sshd Inschakelen
+
+
+ OpenSSH
+
+ inschakelen
+
-
+ In rc.conf dient het volgende te
+ staan:
+
+ sshd_enable="YES"
+
+ Hierdoor wordt &man.sshd.8; geladen, het daemonprogramma
+ voor OpenSSH, als het systeem de
+ volgende keer opstart. De sshd
+ daemon kan ook direct gestart worden door
+ sshd in te geven op de commandoregel.
- * SSH Client
-
-
+ SSH Client
+
+
+ OpenSSH
+
+ client
+
+
+ &man.ssh.1; werkt net zoals &man.rlogin.1;.
+
+ &prompt.root; ssh user@example.com
+Host key not found from the list of known hosts.
+Are you sure you want to continue connecting (yes/no)? yes
+Host 'example.com' added to the list of known hosts.
+user@example.com's password: *******
+
+ Het aanmelden gaat nu net zoals het zou gaan als wanneer
+ er een sessie gestart zou worden met rlogin
+ of telnet. SSH maakt gebruik van een
+ systeem met vingerafdrukken als sleutels voor het vaststellen
+ met welke server verbinding wordt gemaakt op het moment
+ dat de client verbinding zoekt. De gebruiker krijgt alleen de
+ eerste keer dat verbinding wordt gezocht met de server een
+ vraag waarop yes geantwoord dient te worden.
+ Bij volgende pogingen om aan te melden wordt de
+ vingerafdruksleutel vergeleken met de sleutel die is
+ opgeslagen. De SSH client alarmeert de gebruiker als de
+ opgeslagen vingerafdruk sleutel anders is dan de sleutel die
+ de server meldt. De vingerafdrukken worden opgeslagen in
+ ~/.ssh/known_hosts of in
+ ~/.ssh/known_hosts2 voor SSH v2
+ vingerafdrukken.
+
+ OpenSSH servers staan standaard
+ ingesteld om SSH v1 and SSH v2 en connecties toe te staan. De
+ client kan echter tussen beiden kiezen. Versie 2 is robuster
+ en veiliger dan zijn voorloper.
+
+ Het commando &man.ssh.1; kan gedwongen worden om een van de
+ twee protocollen te gebruiken door de optie
+ of voor respectievelijk
+ v1 en v2 aan te geven.
- * Veilig kopiëren
+ Veilig Kopieren
+
+
+ OpenSSH
+
+ veilig kopiëren
+
+
+ scp
+
+ Het commando &man.scp.1; (secure copy) werkt gelijk aan
+ &man.rcp.1;. Het kopieert een bestand van of naar een andere
+ machine, maar doet dat veilig.
+
+ &prompt.root; scp user@example.com:/COPYRIGHT COPYRIGHT
+user@example.com's password: *******
+COPYRIGHT 100% |*****************************| 4735
+00:00
+&prompt.root;
-
+ Omdat de vingerafdruk al is opgeslagen voor deze host in
+ het vorige voorbeeld, is die al geverifieerd als &man.scp.1;
+ gebruik wordt.
+
+ De argumenten die aan &man.scp.1; gegeven worden zijn
+ vrijwel gelijk aan die voor &man.cp.1; met het bestand of
+ de bestanden als het eerste argument en de bestemming als het
+ tweede. Omdat het bestand over het netwerk gaat, door SSH,
+ hebben een of meer van de bestandsargumenten de vorm
+ .
- * Configuratie
+ Instellen
+
+
+ OpenSSH
+
+ instellen
+
+
+ Het instellingenbestand dat voor het hele systeem geldt
+ voor zowel de OpenSSH daemon als
+ client staat in de map /etc/ssh.
-
+ ssh_config bevat de instellingen voor
+ de client en sshd_config bevat ze voor
+ de daemon.
+
+ Daarnaast bieden het
+ (standaard /usr/sbin/sshd) en
+ rc.conf
+ opties nog meer mogelijkheden voor instellingen.
- * ssh-keygen
-
-
+ ssh-keygen
+
+ In plaats van het gebruik van wachtwoorden kan
+ &man.ssh-keygen.1; gebruikt worden om RSA sleutels te maken
+ om een gebruiker te authenticeren:
+
+ &prompt.user; ssh-keygen -t rsa1
+Initializing random number generator...
+Generating p: .++ (distance 66)
+Generating q: ..............................++ (distance 498)
+Computing the keys...
+Key generation complete.
+Enter file in which to save the key (/home/user/.ssh/identity):
+Enter passphrase:
+Enter the same passphrase again:
+Your identification has been saved in /home/user/.ssh/identity.
+...
+
+ &man.ssh-keygen.1; maakt een publiek en privaat sleutelpaar
+ aan dat gebruikt kan worden voor authenticatie. De private
+ sleutel staat opgeslagen in
+ ~/.ssh/identity en de publieke sleutel
+ staat in ~/.ssh/identity.pub. De publieke
+ sleutel moet in ~/.ssh/authorized_keys
+ van de andere machine staan om dit te laten werken.
+
+ Nu is het mogelijk een verbinding te maken met een andere
+ machine die gebaseerd is op RSA authenticatie in plaats van
+ op wachtwoorden.
+
+
+ De optie maakt RSA sleutels
+ voor versie 1 van het SSH protocol. Als gebruik van versie 2
+ gewenst is, dan het commando ssh-keygen -t
+ rsa gebruikt te worden.
+
+
+ Als er een wachtwoordzin is gebruikt bij &man.ssh-keygen.1;
+ dan wordt de gebruiker iedere keer dat de private sleutel wordt
+ gebruikt een wachtwoord gevraagd.
+
+ Het is mogelijk een SSH protocol versie 2 DSA sleutel te
+ maken voor hetzelfde doel met het commando
+ ssh-keygen -t dsa. Hiermee wordt een
+ publiek/privaat DSA sleutelpaar gemaakt dat alleen gebruikt kan
+ worden in SSH protocol versie 2 sessies. De publieke sleutel
+ staat in ~/.ssh/id_dsa.pub en de private
+ sleutel staat in ~/.ssh/id_dsa.
+
+ Publieke DSA staan ook in
+ ~/.ssh/authorized_keys op de andere
+ machine.
+
+ &man.ssh-agent.1; en &man.ssh-add.1; zijn hulpprogramma's
+ die gebruikt worden om meerdere met wachtwoorden beschermde
+ private sleutels te beheren.
+
+
+ Opties en bestandslocaties kunnen afhankelijk zijn
+ van de gebruikte OpenSSH versie op
+ een systeem. Raadpleeg de &man.ssh-keygen.1; handboekpagina
+ voor de correcte gegevens.
+
- * SSH Tunneling
+ SSH Tunnels
+
+
+ OpenSSH
+
+ tunnels
+
+
+ OpenSSH kan een tunnel maken
+ waarin een ander protocol ingepakt kan worden zodat er een
+ versleutelde sessie ontstaat.
+
+ Het volgende commando geeft &man.ssh.1; aan dat er een
+ tunnel voor telnet gemaakt moet
+ worden:
+
+ &prompt.user; ssh -2 -N -f -L 5023:localhost:23 user@foo.example.com
+&prompt.user;
+
+ Aan het ssh commando worden de volgende
+ opties meegegeven:
+
+
+
+
+
+
+ Dit dwingt ssh om versie 2 van het
+ protocol te gebruiken. Gebruik van deze optie wordt
+ afgeraden als er verbinding wordt gemaakt met oudere SSH
+ servers.
+
+
+
+
+
+
+
+ Dit geeft aan dat er geen commando volgt, maar dat er
+ een tunnel opgezet moet worden. Als deze optie niet
+ aanwezig was, zou ssh een normale
+ sessie starten.
+
+
+
+
+
+
+
+ Dit dwingt ssh om in de
+ achtergrond te draaien.
+
+
+
+
+
+
+
+ Dit geeft aan dat de lokaal een tunnel wordt gemaakt
+ in de vorm
+ lokale_poort:netwerk_host:netwerk_poort.
+
+
+
+
+
+
+
+ Wijst naar een gebruiker op de SSH server op het
+ netwerk.
+
+
+
+
+ Een SSH tunnel werkt doordat een luistersocket wordt
+ gemaakt op localhost op de aangegeven poort.
+ Die stuurt dan iedere ontvangen verbinding op de lokale
+ host/poort via de SSH verbinding door naar de aangegeven host
+ en poort op het netwerk.
+
+ In het voorbeeld wordt poort
+ 5023 op localhost
+ doorgestuurd naar poort 23 op
+ localhost van de machine op het netwerk.
+ Omdat 23
+ telnet is, zou dit een veilige
+ telnet verbinding opleveren door
+ een SSH tunnel.
+
+ Dit kan gebruikt worden om ieder willekeurig onveilig
+ TCP protocol in te pakken als SMTP,
+ POP3, FTP, etc.
+
+
+ SSH Gebruiken om een Veilige Tunnel te Maken voor
+ SMTP
+
+ &prompt.user; ssh -2 -N -f -L 5025:localhost:25 user@mailserver.example.com
+user@mailserver.example.com's password: *****
+&prompt.user; telnet localhost 5025
+Trying 127.0.0.1...
+Connected to localhost.
+Escape character is '^]'.
+220 mailserver.example.com ESMTP
+
+ Dit kan samen met een &man.ssh-keygen.1; en extra
+ gebruikersaccounts gebruikt worden om een min of meer
+ naadloze en eenvoudige SSH tunnelomgeving te maken. In
+ plaats van wachtwoorden kunnen sleutels gebruikt worden en de
+ tunnels kunnen in de omgeving van een aparte gebruiker
+ draaien.
+
- * Practische SSH tunneling voorbeelden
+ Praktische Voorbeelden van een SSH Tunnel
- * Beveiligde toegang tot een POP3 server
-
-
+ Veilige Toegang tot een POP3 Server
+
+ Op het werk staat een SSH server die verbindingen van
+ buitenaf toestaat. Op hetzelfde netwerk op kantoor staat
+ een mailserver waarop POP3 draait. Het netwerk of het
+ netwerkpad tussen de locatie op internet en kantoor is
+ wellicht niet helemaal te vertrouwen. Om deze reden dient
+ de mailserver op een veilige manier benaderd te worden. De
+ oplossing is een SSH verbinding opzetten naar de SSH server
+ op kantoor en dan door de tunnel heen een verbinding
+ opzetten met de mailserver.
+
+ &prompt.user; ssh -2 -N -f -L 2110:mail.example.com:110 user@ssh-server.example.com
+user@ssh-server.example.com's password: ******
+
+ Als de tunnel eenmaal draait, dan kan de mailclient
+ naar localhost poort 2110 gewezen worden.
+ Alle verbinding naar die poort worden veilig doorgestuurd
+ door de tunnel naar
+ mail.example.com.
- * Een draconische firewall passeren
-
-
+ Een Draconische Firewall Omzeilen
+
+ Sommige netwerkbeheerders stellen draconische
+ firewallregels op en filteren niet alleen inkomende
+ verbindingen, maar ook uitgaande. Meestal mag dan alleen
+ maar verbinding gemaakt worden met andere machines op
+ poorten 22 en 80 voor SSH en websurfen.
+
+ Soms wil een gebruiker dan toch toegang krijgen tot
+ andere (wellicht niet netwerk-gerelateerd) diensten, zoals
+ een Ogg Vorbis server om muziek te streamen. Als die Ogg
+ Vorbis server streamt op een andere poort dan 22 of 80, dan
+ kan deze niet bereikt worden.
+
+ De oplossing ligt in het opzetten van een SSH
+ verbinding naar een machine buiten de firewall en die
+ tunnel te gebruiken om bij de Ogg Vorbis server te
+ komen.
+
+ &prompt.user; ssh -2 -N -f -L 8888:music.example.com:8000 user@unfirewalled-system.example.org
+user@unfirewalled-system.example.org's password: *******
+
+ De streamingclient kan nu gewezen worden naar
+ localhost poort 8888 vanwaar er wordt
+ doorverwezen naar music.example.com poort
+ 8000 en zo wordt de firewall succesvol ontwerken.
- * Meer lezen
+ Meer Lezen
-
+ OpenSSH
+
+ &man.ssh.1; &man.scp.1; &man.ssh-keygen.1;
+ &man.ssh-agent.1; &man.ssh-add.1;
+
+ &man.sshd.8; &man.sftp-server.8;
-
+ TomRhodesBijgedragen door
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
+
+
- * Bestands systeem toegangs controle lijsten
-
- * Gebruik maken van ACLs
+ ACL
+
+ Bestandssysteem Toegangscontrole Lijsten
+
+ In combinatie met verbeteringen als snapshots, bieden
+ &os; 5.0 en volgende versies de veiligheid van
+ Bestandssysteem Toegangscontrole Lijsten (Access Control Lists,
+ ACLs).
+
+ Met Toegangscontrole Lijsten wordt het standaard &unix;
+ rechtenmodel uitgebreid op een zeer verenigbare (&posix;.1e)
+ manier. Deze methodes stellen een beheerder in staat om gebruik
+ te maken en voordeel te halen uit een geraffineerder
+ beveiligingsmodel.
+
+ Om ondersteuning voor ACLs voor
+ bestandssystemen in te schakelen dient het volgende in de kernel
+ gecompileerd te worden:
+
+ options UFS_ACL
+
+ Als deze optie niet aanwezig is, dan wordt er een
+ waarschuwing weergegeven als er wordt geprobeerd een
+ bestandssysteem te mounten dat gebruik maakt van
+ ACLs. Deze optie is al geactiveerd in de
+ GENERIC kernel. ACLs
+ zijn afhankelijk van uitgebreide attributen die zijn ingeschakeld
+ op het bestandssysteem. Uitgebreide attributen worden standaard
+ ondersteund in het volgende generatie &unix; bestandssysteem
+ UFS2.
+
+
+ Er is meer administratieve overhead nodig om
+ uitgebreide attributen in te stellen op
+ UFS1 dan op UFS2. De
+ prestaties van uitgebreide attributen zijn op
+ UFS2 ook veel beter. Daarom wordt
+ UFS2 ook meestal aangeraden boven
+ UFS1 bij het gebruik van toegangscontrole
+ lijsten.
+
+
+ ACLs worden ingeschakeld door de
+ beheersvlag op het moment van mounten. Dit
+ kan ook in /etc/fstab staan. De vlag op het
+ moment van mounten kan ook automatisch gezet worden op een
+ persistente wijze met &man.tunefs.8; door een superblok in de
+ bestandssysteemkop te wijzigen. In het algemeen wordt de
+ voorkeur gegeven aan de vlag in het superblok om een aantal
+ redenen:
+
+
+
+ De ACLs vlag op het moment van mounten
+ kan niet gewijzigd worden bij opnieuw mounten (&man.mount.8;
+ ), maar alleen door een volledige
+ &man.umount.8; en een verse &man.mount.8;. Dit betekent dat
+ ACLs niet ingeschakeld kunnen worden op
+ root bestandssysteem na het booten. Het betekent ook dat de
+ aard van een bestandssysteem niet veranderd kan worden als
+ het eenmaal in gebruik is.
+
+
+
+ Het inschakelen van de superblok vlag zorgt ervoor dat
+ het bestandssysteem altijd wordt gemount met de
+ ACLs ingeschakeld, zelfs als het niet in
+ fstab staat of als de apparaten van
+ plaats veranderen. Hiermee wordt voorkomen dat het
+ bestandssysteem wordt gebruikt zonder dat
+ ACLs ingeschakeld zijn, wat ervoor zou
+ kunnen zorgen dat ACLs onjuist worden
+ toegepast wat weer kan zorgen voor
+ beveiligingsproblemen.
+
+
+
+
+ Wellicht wordt het mogelijk om de
+ ACLs via de vlag in te schakelen zonder een
+ compleet verse &man.mount.8;, maar de ontwikkelaars vinden het
+ wenselijk om het per ongeluk zonder ACLs
+ mounten te ontmoedigen, omdat er bijzonder vervelende gevolgen
+ kunnen zijn als ACLs worden ingeschakeld,
+ daarna worden uitgezet en weer worden ingeschakeld zonder dat
+ de uitgebreide attributen worden geschoond. In het algemeen
+ geldt dat als ACLs eenmaal zijn ingeschakeld
+ voor een bestandssysteem, ze niet meer uitgeschakeld moeten
+ worden, omdat de resulterende bestandsbescherming wellicht niet
+ compatibel is met dat wat gebruikers van het systeem nodig
+ hebben en het opnieuw aanzetten van ACLs kan
+ leiden tot het opnieuw koppelen van voorheen bestaande
+ ACLs aan bestanden waarvoor de
+ toegangsrechten sindsdien zijn aangepast, wat kan leiden tot
+ onverwachte situaties.
+
+
+ Bestandssystemen waarvoor ACLs zijn
+ ingeschakeld worden weergegeven met een +
+ (plus) teken als de toegangsrechten worden bekeken:
+
+ drwx------ 2 robert robert 512 Dec 27 11:54 private
+drwxrwx---+ 2 robert robert 512 Dec 23 10:57 directory1
+drwxrwx---+ 2 robert robert 512 Dec 22 10:20 directory2
+drwxrwx---+ 2 robert robert 512 Dec 27 11:57 directory3
+drwxr-xr-x 2 robert robert 512 Nov 10 11:54 public_html
+
+ Hierboven is te zien dat mappen
+ directory1, directory2
+ en directory3 allemaal gebruik maken van
+ ACLs. De map public_html
+ doet dat niet.
-
+
+ Gebruik Maken van ACLs
+
+ De ACLs van het bestandssysteem kunnen
+ bekeken worden met het hulpprogramma &man.getfacl.1;. Om de
+ ACL op het bestand test
+ te bekijken zou het volgende commando nodig zijn:
+
+ &prompt.user; getfacl test
+#file:test
+#owner:1001
+#group:1001
+user::rw-
+group::r--
+other::r--
+
+ Om de ACL op dit bestand te wijzigen
+ wordt het hulpprogramma &man.setfacl.1; als volgt
+ gebruikt:
+
+ &prompt.user; setfacl -k test
+
+ De vlag verwijdert alle bestaande
+ ACLs van een bestand of bestandssysteem. De
+ methode die de voorkeur geniet is gebruiken
+ omdat die optie de basisvelden die nodig zijn voor het laten
+ werken van de ACLs laat staan.
+
+ &prompt.user; setfacl -m u:trhodes:rwx,group:web:r--,o::--- test
+
+ Bij het commando hierboven, werd de optie
+ gebruikt om de standaard
+ ACL aan te passen. Omdat er geen
+ voorgedefinieerde instellingen waren, die waren verwijderd door
+ het commando daarvoor, werden nu de standaardinstellingen
+ hersteld en de rechten die werden aangegeven toegevoegd. Let
+ op dat bij het toevoegen van een gebruiker of een groep die
+ niet bekend is op het systeem een foutmelding
+ Invalid argument wordt geschreven naar
+ stdout.TomRhodesBijgedragen door
+
+
+ Siebrand
+ Mazeland
+ Vertaald door
+
+
- * &os; security advisories
-
- * Hoe ziet een advisorie eruit?
+ &os; Beveiligingswaarschuwingen
+
+ &os; Beveiligingswaarschuwingen
-
+ Net als veel andere kwalitatief goede
+ productiebesturingssystemen publiceert &os;
+ Beveiligingswaarschuwingen. Deze waarschuwingen
+ worden meestal pas naar de beveiligingslijst gemaild en
+ gedocumenteerd in de Errata als de van toepassing zijnde
+ releases gepatcht zijn. In deze paragraaf wordt toegelicht wat
+ een waarschuwing is, hoe die te begrijpen en welke maatregelen
+ er genomen moeten worden om een systeem bij te werken.
+
+
+ Hoe Ziet een Waarschuwing eruit?
+
+ De &os; beveiligingswaarschuwingen zien er ongeveer uit als
+ die hieronder die van de &a.security-notifications.name;
+ mailinglijst komt.
+
+ =============================================================================
+&os;-SA-XX:XX.UTIL Security Advisory
+ The &os; Project
+
+Topic: denial of service due to some problem
+
+Category: core
+Module: sys
+Announced: 2003-09-23
+Credits: Person@EMAIL-ADDRESS
+Affects: All releases of &os;
+ &os; 4-STABLE prior to the correction date
+Corrected: 2003-09-23 16:42:59 UTC (RELENG_4, 4.9-PRERELEASE)
+ 2003-09-23 20:08:42 UTC (RELENG_5_1, 5.1-RELEASE-p6)
+ 2003-09-23 20:07:06 UTC (RELENG_5_0, 5.0-RELEASE-p15)
+ 2003-09-23 16:44:58 UTC (RELENG_4_8, 4.8-RELEASE-p8)
+ 2003-09-23 16:47:34 UTC (RELENG_4_7, 4.7-RELEASE-p18)
+ 2003-09-23 16:49:46 UTC (RELENG_4_6, 4.6-RELEASE-p21)
+ 2003-09-23 16:51:24 UTC (RELENG_4_5, 4.5-RELEASE-p33)
+ 2003-09-23 16:52:45 UTC (RELENG_4_4, 4.4-RELEASE-p43)
+ 2003-09-23 16:54:39 UTC (RELENG_4_3, 4.3-RELEASE-p39)
+&os; only: NO
+
+For general information regarding FreeBSD Security Advisories,
+including descriptions of the fields above, security branches, and the
+following sections, please visit
+http://www.FreeBSD.org/security/.
+
+I. Background
+
+
+II. Problem Description
+
+
+III. Impact
+
+
+IV. Workaround
+
+
+V. Solution
+
+
+VI. Correction details
+
+
+VII. References
+
+
+
+ Het veld Topic geeft aan wat precies
+ het probleem is. Het is eigenlijk een inleiding op de
+ beveiligingswaarschuwing en geeft aan welke programma
+ kwetsbaar is.
+
+
+
+ Het veld Category geeft aan welk
+ onderdeel van het systeem kwetsbaar is. Dat kan een van de
+ onderdelen core,
+ contrib of ports
+ zijn. De categorie core betekent dat
+ de een kerncomponent van het &os; besturingssysteem
+ kwetsbaar is. De categorie contrib
+ betekent dat software die toegevoegd is aan het &os;
+ Project kwetsbaar is, zoals
+ sendmail. Tenslotte geeft de
+ categorie ports aan dat een optionele
+ component uit de portscollectie kwetsbaar is.
+
+
+
+ Het veld Module geeft aan waar de
+ component zich bevindt, bijvoorbeeld
+ sys. In dit voorbeeld wordt het
+ duidelijk dat de module sys kwetsbaar
+ is. Hier gaat het dus om een kwetsbaar component die
+ gebruikt wordt in de kernel.
+
+
+
+ Het veld Announced geeft aan wanneer
+ de beveiligingswaarschuwing gepubliceerd of aangekondigd
+ is. Dit betekent dat het beveiligingsteam heeft bevestigd
+ dat het probleem bestaat en dat er een patch is gecommit in
+ het depot met de broncode van &os;.
+
+
+
+ In het veld Credits wordt iemand of
+ een organisatie bedankt die de kwetsbaarheid heeft ontdekt
+ en gerapporteerd.
+
+
+
+ Het veld Affects geeft aan welke
+ releases van &os; door deze kwetsbaarheid worden getroffen.
+ Voor de kernel kan snel gekeken worden naar de uitvoer van
+ ident voor de betreffende bestanden om
+ te bepalen welke revisie ze hebben. Voor ports is het
+ versienummer te zien in /var/db/pkg.
+ Als het systeem niet gelijk op loopt met het &os;
+ CVS depot en dagelijks herbouwd wordt,
+ dan is de kans groot dat het systeem kwetsbaar is.
+
+
+
+ Het veld Corrected geeft de datum,
+ tijd en tijdzone aan en de release die is aangepast.
+
+
+
+ Het veld &os; only geeft aan of deze
+ kwetsbaarheid alleen betrekking heeft op &os; of dat hij
+ ook betrekking heeft op andere besturingssystemen.
+
+
+
+ Het veld Background geeft meer
+ informatie over wat er precies aan de hand is. Meestal
+ staat hier waarom het programma aanwezig is in &os;, waar
+ het voor gebruikt wordt en hoe het programma is
+ ontstaan.
+
+
+
+ Het veld Problem Description geeft
+ gedetailleerde toelichting op het beveiligingsprobleem.
+ Hier kan informatie bij staat over programmacode die
+ fouten bevat of zelfs hoe het programma gebruikt kan worden
+ om een beveiligingsgat te openen.
+
+
+
+ Het veld Impact beschrijft welke
+ invloed het probleem kan hebben op het systeem. Dit kan
+ bijvoorbeeld een ontzegging van dienst aanval zijn,
+ gebruikers extra rechten geven of het verkrijgen van
+ supergebruiker toegang voor de aanvaller zijn.
+
+
+
+ Het veld Workaround geeft aan hoe
+ het mogelijk is het probleem te omzeilen (workaround) in
+ het geval systeembeheerders niet in staat zijn om het
+ systeem bij te werken. Dit zou te maken kunnen hebben
+ met de tijd, beschikbaarheid van het netwerk en een hele
+ lijst met andere redenen. Hoe dan ook, beveiliging
+ dient serieus genomen te worden en een systeem dat
+ kwetsbaar is moet bijgewerkt worden of het gat in de
+ beveiliging moet gedicht worden met de alternatieve
+ oplossing.
+
+
+
+ Het veld Solution geeft instructies
+ over hoe een systeem aangepast kan worden. Dit is een
+ werkinstructie die getest en gecontroleerd is om een
+ systeem aan te passen en weer veilig werkend te
+ krijgen.
+
+
+
+ In het veld Correction Details staan
+ de CVS takken of releasenamen, met de
+ punten veranderd in een liggend streepje. Er staat ook
+ welke revisienummer de aangetaste bestanden binnen een tak
+ hebben.
+
+
+
+ In het veld References wordt
+ gewoonlijk verwezen naar andere bronnen. Dit kunnen
+ URLs, boeken, mailinglijsten en
+ nieuwsgroepen zijn.
+
+
diff --git a/nl_NL.ISO8859-1/share/sgml/bookinfo.ent b/nl_NL.ISO8859-1/share/sgml/bookinfo.ent
index 8355c00c2d..d8dfc099d6 100644
--- a/nl_NL.ISO8859-1/share/sgml/bookinfo.ent
+++ b/nl_NL.ISO8859-1/share/sgml/bookinfo.ent
@@ -1,13 +1,17 @@
-
+
diff --git a/nl_NL.ISO8859-1/share/sgml/books.ent b/nl_NL.ISO8859-1/share/sgml/books.ent
new file mode 100644
index 0000000000..9b5a45614a
--- /dev/null
+++ b/nl_NL.ISO8859-1/share/sgml/books.ent
@@ -0,0 +1,27 @@
+
+
+
+%man;
+
+%nl-bookinfo;
+
+%bookinfo;
+
+%freebsd;
+
+%authors;
+
+%teams;
+
+%mailing-lists;
+
+%newsgroups;
+
+%trademarks;
+
+%urls;
diff --git a/nl_NL.ISO8859-1/share/sgml/catalog b/nl_NL.ISO8859-1/share/sgml/catalog
index 0d6ef884a4..0392132424 100644
--- a/nl_NL.ISO8859-1/share/sgml/catalog
+++ b/nl_NL.ISO8859-1/share/sgml/catalog
@@ -1,11 +1,21 @@
-- ...................................................................... --
-- FreeBSD SGML Public Identifiers ...................................... --
-- $FreeBSD$
+ -- $FreeBSDnl$
--
+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//NL"
+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 5226f5cffe..c8676c3d2a 100644
--- a/nl_NL.ISO8859-1/share/sgml/freebsd.dsl
+++ b/nl_NL.ISO8859-1/share/sgml/freebsd.dsl
@@ -1,247 +1,251 @@
-
+
]>
(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 ")
+ (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 "Voor vragen over FreeBSD, lees de ")
+ (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 "Voor vragen over deze documentatie, stuur een e-mail naar<")
+ (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/glossary/freebsd-glossary.sgml b/nl_NL.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml
new file mode 100644
index 0000000000..790d0a0e01
--- /dev/null
+++ b/nl_NL.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml
@@ -0,0 +1,1827 @@
+
+
+
+ &os; Begrippenlijst
+ Deze begrippenlijst bevat de termen en acroniemen die binnen
+ de &os; gemeenschap en documentatie worden gebruikt.
+
+
+ A
+
+
+ ACL
+
+
+
+
+ ACPI
+
+
+
+
+ AMD
+
+
+
+
+ AML
+
+
+
+
+ APIC
+
+
+
+
+ APM
+
+
+
+
+ APOP
+
+
+
+
+ ASL
+
+
+
+
+ ATA
+
+
+
+
+ ATM
+
+
+
+
+ ACPI Machinetaal
+ AML
+
+ Pseudocode die wordt geïterpreteerd door een
+ virtual machine binnen een
+ ACPI-compliant besturingssysteem die een
+ laag biedt tussen de onderliggende hardware en de
+ gedocumenteerde interface van het
+ OS.
+
+
+
+
+ ACPI Brontaal
+ ASL
+
+ De programmeertaal AML is hierin
+ geschreven.
+
+
+
+
+ Toegangscontrole Lijst
+ ACL
+
+
+
+
+
+
+ Advanced Configuration and Power Interface
+ ACPI
+
+ Een specificatie die een abstractie biedt van de
+ interface die de hardware aan het besturingssysteem biedt,
+ zodat het besturingssysteem niets hoeft te weten over de
+ onderliggende hardware om er het maximale uit te halen.
+ ACPI is een evolutie en opvolger van de
+ functionaliteit die daarvoor door APM,
+ PNPBIOS en andere technologieën werd
+ geleverd en faciliteert in de controle van stroomverbruik,
+ de slaapstand, het in- en uitschakelen van apparaten,
+ etc.
+
+
+
+
+ Advanced Power Management (Geavanceerd Energie
+ Beheer)
+ APM
+
+
+
+
+
+
+ Advanced Programmable Interrupt Controller
+ APIC
+
+
+
+
+
+
+ Advanced Technology Attachment
+ ATA
+
+
+
+
+
+
+ Asynchronous Transfer Mode
+ ATM
+
+
+
+
+
+
+ Authenticated Post Office Protocol
+ APOP
+
+
+
+
+
+
+ Automatic Mount Daemon
+ AMD
+
+ Een daemon die automatisch een bestandssysteem mount
+ als een bestand of map wordt geraadpleegd.
+
+
+
+
+
+ B
+
+
+ BIND
+
+
+
+
+ BIOS
+
+
+
+
+ BSD
+
+
+
+
+ Basic Input/Output System
+ BIOS
+
+
+
+
+
+
+ Berkeley Internet Name Domain
+ BIND
+
+
+
+
+
+
+ Berkeley Software Distributie
+ BSD
+
+ Deze naam heeft de Computer Systems Research Group
+ (CSRG) van de The University of California in
+ Berkeley gegeven aan de verbeteringen en aanpassingen
+ die ze hebben gemaakt aan AT&T's 32V &unix;. &os; is een
+ afstammeling van het werk van de CSRG.
+
+
+
+
+ Bikeshed Building
+
+ Een fenomeen waar blijkt dat veel mensen een mening
+ geven over een eenvoudig onderwerp terwijl er weinig of
+ geen discussie ontstaat over een complex onderwerp. Op
+ FAQ
+ is meer te lezen over het ontstaan van de term.
+
+
+
+
+
+ C
+
+
+ CD
+
+
+
+
+ CHAP
+
+
+
+
+ CLIP
+
+
+
+
+ COFF
+
+
+
+
+ CPU
+
+
+
+
+ CTS
+
+
+
+
+ CVS
+
+
+
+
+ Carrier Detect
+ CD
+
+ Een RS232C signaal dat aangeeft dat er een drager is
+ ontdekt.
+
+
+
+
+ Central Processing Unit (Centrale
+ Verwerkingseenheid)
+ CPU
+
+
+
+
+
+
+ Challenge Handshake Authentication
+ Protocol
+ CHAP
+
+
+
+
+
+
+ Classical IP over
+ ATM
+ CLIP
+
+
+
+
+
+
+ Clear To Send
+ CTS
+
+ Een RS232C signaal dat het andere systeem permissie geeft
+ om gegevens te sturen.
+
+
+
+
+ Common Object File Format
+ COFF
+
+
+
+
+
+
+ Concurrent Versions System
+ CVS
+
+
+
+
+
+
+
+ D
+
+
+ DAC
+
+
+
+
+ DDB
+
+
+
+
+ DES
+
+
+
+
+ DHCP
+
+
+
+
+ DNS
+
+
+
+
+ DSDT
+
+
+
+
+ DSR
+
+
+
+
+ DTR
+
+
+
+
+ DVMRP
+
+
+
+
+ Discretionary Access Control
+ DAC
+
+
+
+
+
+
+ Data Encryption Standard
+ DES
+
+
+
+
+
+
+ Data Set Ready
+ DSR
+
+
+
+
+
+
+ Data Terminal Ready
+ DTR
+
+
+
+
+
+
+ Debugger
+ DDB
+
+
+
+
+
+
+ Differentiated System Description Table
+ DSDT
+
+
+
+
+
+
+ Distance-Vector Multicast Routing Protocol
+ DVMRP
+
+
+
+
+
+
+ Domain Name System
+ DNS
+
+
+
+
+
+
+ Dynamic Host Configuration Protocol
+ DHCP
+
+
+
+
+
+
+
+ E
+
+
+ ECOFF
+
+
+
+
+ ELF
+
+
+
+
+ ESP
+
+
+
+
+ Encapsulated Security Payload
+ ESP
+
+
+
+
+
+
+ Executable and Linking Format
+ ELF
+
+
+
+
+
+
+ Extended COFF
+ ECOFF
+
+
+
+
+
+
+
+ F
+
+
+ FADT
+
+
+
+
+ FAT
+
+
+
+
+ FAT16
+
+
+
+
+ FTP
+
+
+
+
+ File Allocation Table
+ FAT
+
+
+
+
+
+
+ File Allocation Table (16-bit)
+ FAT16
+
+
+
+
+
+
+ File Transfer Protocol
+ FTP
+
+
+
+
+
+
+ Fixed ACPI Description
+ Table
+ FADT
+
+
+
+
+
+
+ G
+
+
+ GUI
+
+
+
+
+ Giant
+
+ De naam van het wederzijdse uitsluitingsmechanisme
+ (een sleep mutex) die veel kernelbronnen
+ beschermt. Hoewel in de dagen dat er op een machine maar
+ enkele tientallen processen draaiden, er één
+ netwerkkaart in zat en echt maar één processor,
+ een eenvoudig sleutelmechanisme toereikend was, is het in
+ de huidige tijden een onaanvaardbare beperking voor
+ prestaties. &os; ontwikkelaars werken actief om het te
+ vervangen door sloten die individuele bronnen beschermen,
+ waardoor er meer ruimte komt voor parallelisme voor zowel
+ machines met één als meer processoren.
+
+
+
+
+ Grafische Gebruikersinterface
+ GUI
+
+ Een systeem waarin gebruiker en compiter interacteren
+ door mideel van afbeeldingen.
+
+
+
+
+
+ H
+
+
+ HTML
+
+
+
+
+ HUP
+
+
+
+
+ HangUp
+ HUP
+
+
+
+
+
+
+ HyperText Markup Language
+ HTML
+
+ De opmaaktaal voor webpagina's.
+
+
+
+
+
+ I
+
+
+ I/O
+
+
+
+
+ IASL
+
+
+
+
+ IMAP
+
+
+
+
+ IP
+
+
+
+
+ IPFW
+
+
+
+
+ IPP
+
+
+
+
+ IPv4
+
+
+
+
+ IPv6
+
+
+
+
+ ISP
+
+
+
+
+ IP Firewall
+ IPFW
+
+
+
+
+
+
+ IP Versie 4
+ IPv4
+
+
+
+
+
+
+ IP Versie 6
+ IPv6
+
+
+
+
+
+
+ Invoer/Uitvoer
+ I/O
+
+
+
+
+
+
+ Intel’s ASL
+ compiler
+ IASL
+
+ Intel’s compiler voor de conversie van
+ ASL naar AML.
+
+
+
+
+ Internet Message Access Protocol
+ IMAP
+
+
+
+
+
+
+ Internet Printing Protocol
+ IPP
+
+
+
+
+
+
+ Internet Protocol
+ IP
+
+
+
+
+
+
+ Internet Service Provider
+ ISP
+
+
+
+
+
+
+ K
+
+
+ KAME
+
+ Japans voor schildpad. De term KAME wordt
+ in computerkringen gebruikt om te verwijzen naar het KAME Project, dat werkt
+ aan de implementatie van IPv6.
+
+
+
+
+ KDC
+
+
+
+
+ KLD
+
+
+
+
+ KSE
+
+
+
+
+ KVA
+
+
+
+
+ Kbps
+
+
+
+
+ Kernel &man.ld.1;
+ KLD
+
+
+
+
+
+
+ Kernel Planningsentiteiten
+ KSE
+
+ Een door de kernel ondersteund threading systeem. Op de
+ project
+ homepage staan meer details.
+
+
+
+
+ Kernel Virtueel Adres
+ KVA
+
+
+
+
+
+
+ Sleutel Distributiecentrum (Key Distribution
+ Center)
+ KDC
+
+
+
+
+
+
+ Kilo Bits Per Seconde
+ Kbps
+
+
+
+
+
+
+
+ L
+
+
+ LAN
+
+
+
+
+ LOR
+
+
+
+
+ LPD
+
+
+
+
+ Lijnpinter Daemon (Line Printer Daemon)
+ LPD
+
+
+
+
+
+
+ Lokaal Netwerk (Local Area Network)
+ LAN
+
+
+
+
+
+
+ Lock Order Reversal
+ LOR
+
+ De &os; kernel gebruikt een aantal bronsloten om
+ tussen die bronnen te bemiddelen. In de &os; current kernels
+ zit een run-time slotdiagnosesysteem, &man.witness.4;, dat in
+ release versies wordt verwijderd, waarmee potentiele
+ deadlocks vanwege slotfouten opgespoord kunnen worden.
+ &man.witness.4; is redelijk conservatief en daarom zijn
+ vals-positieven mogelijk. Een echte positief geeft aan dat
+ in het slechtste geval op dat punt een deadlock had
+ plaatsgevonden..
+
+ Echte positieve LOR's worden meestal snel opgelost, dus
+ is het verstandig &a.current.url; en
+ Voorgekomen LOR's Seen te bekijken alvorens te
+ mailen naar mailinglijsten.
+
+
+
+
+
+ M
+
+
+ MAC
+
+
+
+
+ MADT
+
+
+
+
+ MFC
+
+
+
+
+ MFS
+
+
+
+
+ MIT
+
+
+
+
+ MLS
+
+
+
+
+ MOTD
+
+
+
+
+ MTA
+
+
+
+
+ MUA
+
+
+
+
+ Mail Transfer Agent
+ MTA
+
+
+
+
+
+
+ Mail User Agent
+ MUA
+
+
+
+
+
+
+ Mandatory Access Control
+ MAC
+
+
+
+
+
+
+ Massachusetts Institute of Technology
+ MIT
+
+
+
+
+
+
+ Samenvoegen vanuit Current (Merge From
+ Current)
+ MFC
+
+ Functionaliteit of een patch samenvoegen vanuit de
+ -CURRENT tak of een andere, meestal -STABLE.
+
+
+
+
+ Samenvoegen vanuit Stable
+ MFS
+
+ In het &os ontwikkelproces wordt een wijziging gecommit
+ in de -CURRENT tak om deze te testen voordat deze wordt
+ samengevoegd naar -STABLE. In bijzondere gevallen gaat een
+ wijziging eerst naar -STABLE en wordt dan pas samengevoegd
+ naar -CURRENT.
+
+ Deze term wordt ook gebruikt als een patch wordt
+ samengevoegd uit -STABLE naar een beveiligingstak.
+
+
+
+
+
+ Bericht van de Dag (Message Of The Day)
+ MOTD
+
+ Een bericht, meestal getoond bij aanmelden, dat vaak
+ gebruikt wordt om informatie aan gebruikers te geven.
+
+
+
+
+ Meerlaagse Beveiliging (Multi-Level
+ Security)
+ MLS
+
+
+
+
+
+
+ Multiple APIC Description Table
+ MADT
+
+
+
+
+
+
+
+ N
+
+
+ NAT
+
+
+
+
+ NDISulator
+
+
+
+
+ NFS
+
+
+
+
+ NTFS
+
+
+
+
+ NTP
+
+
+
+
+ Netwerkadres Vertaling (Network Address
+ Translation)
+ NAT
+
+
+
+
+
+
+ Netwerkbestandssysteem (Network File
+ System)
+ NFS
+
+
+
+
+
+
+ Nieuwe Technologie Bestandssysteem (New Technology
+ File System)
+ NTFS
+
+ Een bestandssysteem dat door µsoft is ontwikkeld en
+ beschikbaar is voor haar New Technology
+ besturingssystemen als &windows2k;, &windowsnt; en
+ &windowsxp;.
+
+
+
+
+ Netwerk Tijdprotocol (Network Time
+ Protocol)
+ NTP
+
+
+
+
+
+
+
+ O
+
+
+ OBE
+
+
+
+
+ ODMR
+
+
+
+
+ OS
+
+
+
+
+ On-Demand Mail Relay
+ ODMR
+
+
+
+
+
+
+ Besturingssysteem (Operating System)
+ OS
+
+
+
+
+
+
+ Overtaken By Events
+ OBE
+
+ Geeft aan dat een voorgestelde verandering (zoals een
+ Problem Report of een feature request) niet langer relevant
+ of van toepassing is vanwege bijvoorbeeld veranderingen aan
+ &os;, wijzigingen in netwerkstandaarden, overbodig worden van
+ hardware, enzovoort.
+
+
+
+
+
+ P
+
+
+ PAE
+
+
+
+
+ PAM
+
+
+
+
+ PAP
+
+
+
+
+ PC
+
+
+
+
+ PCNSFD
+
+
+
+
+ PDF
+
+
+
+
+ PID
+
+
+
+
+ POLA
+
+
+
+
+ POP
+
+
+
+
+ POP3
+
+
+
+
+ PPD
+
+
+
+
+ PPP
+
+
+
+
+ PPPoA
+
+
+
+
+ PPPoE
+
+
+
+
+ PPP over
+ ATM
+ PPPoA
+
+
+
+
+
+
+ PPP over
+ Ethernet
+ PPPoE
+
+
+
+
+
+
+ PR
+
+
+
+
+ PXE
+
+
+
+
+ Wachtwoord Authenticatieprotocol (Password
+ Authentication Protocol)
+ PAP
+
+
+
+
+
+
+ Personal Computer
+ PC
+
+
+
+
+
+
+ PC Netwerkbestandssysteem Daemon (Personal Computer
+ Network File System Daemon)
+ PCNFSD
+
+
+
+
+
+
+ Fysieke Adresextensies (Physical Address
+ Extensions
+ PAE
+
+ Een methode voor het inschakelen van toegang tot
+ 64 GB RAM op systemen die fysieke
+ een 32-bit brede adresruimte hebben (en daarom zonder PAE een
+ limiet van 4 GB zouden hebben).
+
+
+
+
+ Pluggable Authentication Modules
+ PAM
+
+
+
+
+
+
+ Point-to-Point Protocol
+ PPP
+
+
+
+
+
+
+ Pointy Hat (Punthoed)
+
+ Een mytisch hoofddeksel dat rondgaat tussen &os;
+ committers die een kapotte build veroorzaken, aflopende
+ revisienummers veroorzaken of op een andere manier problemen
+ veroorzaken in de broncode. Alle committers
+ who breaks the build, makes revision numbers
+ go backwards, or creates any other kind of havoc in
+ the source base. Alle committers die ook maar iets waard
+ zijn, hebben meestal snel een kast vol. Het gebruik is
+ (bijna altijd) grappig bedoeld.
+
+
+
+
+ Portable Document Format
+ PDF
+
+
+
+
+
+
+ Post Office Protocol
+ POP
+
+
+
+
+
+
+ Post Office Protocol Version 3
+ POP3
+
+
+
+
+
+
+ PostScript Printer Description
+ PPD
+
+
+
+
+
+
+ Preboot eXecution Environment
+ PXE
+
+
+
+
+
+
+ Principe van Kleinste Verrassing (Principle Of Least Astonishment)
+ POLA
+
+ In de evolutie van &os; moeten zichtbare wijzigingen voor
+ gebruikers vooral geen grote verrassing zijn. Het
+ willekeurig reorganiseren van bijvoorbeeld de
+ opstartvariabelen van het systeem in
+ /etc/defaults/rc.conf is in strijd met
+ POLA. Ontwikkelaart houden rekening met
+ POLA bij het uitvoeren van
+ systeemwijzigingen die zichtbaar zijn voor gebruikers.
+
+
+
+
+ Problem Report
+ PR
+
+
+
+
+
+
+ Proces ID
+ PID
+
+ Een nummer dat bij een uniek proces op een systeem hoort,
+ waarmee het geïdentificeerd kan worden en ervoor zorgt
+ dat er acties op uitgevoerd kunnen worden.
+
+
+
+
+ Project Evil
+
+ De werktitel van de NDISulator,
+ geschreven door Bill Paul, die het zo heeft genoemd omdat
+ het zo verschikkelijk is, vanuit een folisofisch standpunt,
+ dat een dergelijk iets nodig is. De
+ NDISulator is een speciale module voor
+ compatibiliteit met µsoft; &windows; NDIS miniport
+ netwerkstuurprogramma's voor &os;/i386. Dit is meestal de
+ enige manier om kaarten te gebruiken waarvoor de broncode
+ voor het stuurprogramma niet openbaar is. Meer is te vinden
+ in
+ src/sys/compat/ndis/subr_ndis.c.
+
+
+
+
+
+ R
+
+
+ RA
+
+
+
+
+ RAID
+
+
+
+
+ RAM
+
+
+
+
+ RD
+
+
+
+
+ RFC
+
+
+
+
+ RISC
+
+
+
+
+ RPC
+
+
+
+
+ RS232C
+
+
+
+
+ RTS
+
+
+
+
+ Random Access Memory
+ RAM
+
+
+
+
+
+
+ Received Data
+ RD
+
+
+
+
+
+
+ Recommended Standard 232C
+ RS232C
+
+ Een standaard voor communicatie tussen seriële
+ apparaten.
+
+
+
+
+ Reduced Instruction Set Computer
+ RISC
+
+
+
+
+
+
+ Redundant Array of Inexpensive Disks
+ RAID
+
+
+
+
+
+
+ Remote Procedure Call
+ RPC
+
+
+
+
+
+
+ Request For Comments
+ RFC
+
+
+
+
+
+
+ Request To Send
+ RTS
+
+
+
+
+
+
+ Router Advertisement
+ RA
+
+
+
+
+
+
+
+ S
+
+
+ SCI
+
+
+
+
+ SCSI
+
+
+
+
+ SG
+
+
+
+
+ SMB
+
+
+
+
+ SMP
+
+
+
+
+ SMTP
+
+
+
+
+ SMTP AUTH
+
+
+
+
+ SSH
+
+
+
+
+ STR
+
+
+
+
+ SMTP Authentication
+ SMTP AUTH
+
+
+
+
+
+
+ Server Message Block
+ SMB
+
+
+
+
+
+
+ Signal Ground
+ SG
+
+ E7eacute;n RS232 pin of draad is de aardereferentie voor
+ het signaal.
+
+
+
+
+ Simple Mail Transfer Protocol
+ SMTP
+
+
+
+
+
+
+ Secure Shell
+ SSH
+
+
+
+
+
+
+ Small Computer System Interface
+ SCSI
+
+
+
+
+
+
+ Suspend To RAM
+ STR
+
+
+
+
+
+
+ Symmetric MultiProcessor
+ SMP
+
+
+
+
+
+
+ System Control Interrupt
+ SCI
+
+
+
+
+
+
+
+ T
+
+
+ TCP
+
+
+
+
+ TD
+
+
+
+
+ TFTP
+
+
+
+
+ TGT
+
+
+
+
+ TSC
+
+
+
+
+ Ticket-Granting Ticket
+ TGT
+
+
+
+
+
+
+ Time Stamp Counter
+ TSC
+
+
+ Een profiling counter die in moderne
+ &pentium; processoren zit die het aantal kloktikken telt van
+ de kernfrequentie.
+
+
+
+
+ Transmission Control Protocol
+ TCP
+
+
+
+
+
+
+ Transmitted Data
+ TD
+
+
+
+
+
+
+ Trivial FTP
+ TFTP
+
+
+
+
+
+
+
+ U
+
+
+ UDP
+
+
+
+
+ UFS1
+
+
+
+
+ UFS2
+
+
+
+
+ UID
+
+
+
+
+ URL
+
+
+
+
+ USB
+
+
+
+
+ Uniform Resource Locator
+ URL
+
+
+
+
+
+
+ Unix File System Version 1
+ UFS1
+
+
+
+
+
+
+ Unix File System Version 2
+ UFS2
+
+
+
+
+
+
+ Universal Serial Bus
+ USB
+
+
+
+
+
+
+ User ID
+ UID
+
+ Een uniek nummer dat wordt toegewezen aan een gebruiker
+ of een computer waarmee bronnen en rechten die zijn
+ toegewezen kunnen worden geïdentificeerd.
+
+
+
+
+ User Datagram Protocol
+ UDP
+
+
+
+
+
+
+
+ V
+
+
+ VPN
+
+
+
+
+ Virtual Private Network
+ VPN
+
+
+
+
+
+
diff --git a/nl_NL.ISO8859-1/share/sgml/l10n.ent b/nl_NL.ISO8859-1/share/sgml/l10n.ent
new file mode 100644
index 0000000000..9d7cb8025b
--- /dev/null
+++ b/nl_NL.ISO8859-1/share/sgml/l10n.ent
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+