La version 3.4 d'OpenBSD :
Sortie le 1er Novembre 2003
Copyright 1997-2003, Theo de Raadt.
ISBN 0-9731791-2-0
Musique de 3.4 : "The Legend of Puffy Hood"
Quoi de neuf ?
Comment installer
Comment utiliser l'arborescence des ports
Commander les CDROM
Pour obtenir les fichiers de cette version :
- Commandez un CDROM à partir de notre
système de commandes.
- Consultez les informations sur la page FTP
pour une liste de machines miroirs.
- Allez dans le répertoire
pub/OpenBSD/3.4/ sur l'un des sites miroirs.
- Lisez brièvement le reste de ce document.
- Jetez un oeil sur la page des errata 3.4
pour une liste des bugs et des solutions.
- Regardez la liste détaillée des
changements entre les versions 3.3 et 3.4.
Remarque : Tous les copyrights applicables et les
différents crédits se trouvent dans les fichiers source contenus dans
src.tar.gz, sys.tar.gz, XF4.tar.gz ou dans les fichiers récupérés par
l'intermédiaire de ports.tar.gz. Les fichiers utilisés pour construire
les paquetages composant le fichier ports.tar.gz ne sont pas inclus sur
le CDROM par manque de place.
Quoi de neuf ?
Ceci est une liste partielle des nouvelles fonctionnalités
présentes dans OpenBSD 3.4. Pour une liste complète, voir
le journal des changements jusqu'à
la version 3.4.
- L'architecture i386 utilise désormais le format
d'exécutable
ELF.
- Améliorations W^X supplémentaires, y compris le support de
l'architecture i386. Les segments exécutables des binaires i386
natifs sont réarrangés pour isoler le code des données, et la limite
CS du CPU est utilisée afin d'imposer une limite "best effort" à
l'exécution du code.
- ld.so(1)
sur les plates-formes ELF chargent les bibliothèques dans un ordre
aléatoire pour une meilleure résistance aux attaques.
L'architecture i386 effectue aussi la correspondance des bibliothèques avec
des adresses quelque peu aléatoires. Utilisées en
combinaison avec W^X et
ProPolice,
ces modifications augmentent la difficulté d'exploitation
d'erreurs applicatives telles que les dépassements de tampon.
- Un vérificateur de limites statiques a été
ajouté au compilateur afin d'effectuer des
vérifications basiques pour les fonctions qui acceptent des
tampons et des tailles. Le vérificateur vise à trouver
les erreurs lors de l'utilisation de fonctions des
bibliothèques telles que
strlcpy(3)
ou sscanf(3)
sans émettre de fausses alertes. L'utilisation de cet outil
pour la vérification des arborescences des ports et des
sources a révélé plus de 100 bogues. Ces bogues
ont été corrigés et les correctifs
envoyés aux auteurs d'origine lorsque c'était
possible.
- Implémentation de la séparation de privilège
pour le service
syslogd(8)
, le rendant beaucoup plus robuste contre les erreurs futures. Le
processus fils qui reçoit les requêtes réseau
est exécuté avec des droits d'utilisateur normal et se
cloisonne dans un environnement chroot de manière autonome.
Le processus parent suit l'état du processus fils et effectue
des opérations privilégiées pour le compte de
ce dernier.
- Un nombre important de fonctions chaîne a été
supprimé des utilitaires noyau et utilisateur. Cet audit est
le plus exhaustif jamais effectué par OpenBSD. Des milliers
d'occurences de
strcpy(3),
strcat(3),
sprintf(3),
et
vsprintf(3)
avec des alternatives plus sûres et bornées
strlcpy(3),
strlcat(3),
snprintf(3),
vsnprintf(3),
et
asprintf(3).
- Plusieurs amélirations au mécanisme de protection de la pile
ProPolice. Plusieurs autres bogues de génération de code sur les
architectures RISC ont été corrigés.
- La protection de la pile
ProPolice
a aussi été activée au niveau du noyau.
- La séparation de privilèges a été
implémentée au niveau du serveur X. Le processus fils
privilégié est chargé d'effectuer les
opérations que le processus père ne peut plus faire
après avoir abandonné ses privilèges. Ceci
réduit de manière significative tout dommage potentiel
qui pourrait être causé par des clients X malicieux
dans le cas de bogues au niveau du serveur X.
- Le support de l'émulation pour la compatibilité
binaire est maintenant contrôlé par le biais de
sysctl(8).
L'émulation est désactivée par défaut
pour limiter l'exposition à des binaires malicieux. Elle peut
être activée dans le fichier
sysctl.conf(5).
- Les pages du manuel ont été grandement
éclaircies et améliorées.
- L'arborescence des ports permet désormais de compiler des
programmes en utilisant
systrace(1).
Le but est de prévenir la possibilité de compromission
du système durant la compilation à travers des scripts
de configuration contenant des chevaux de troie ou toute autre
méthode.
- La mise en cache des symboles effectuée par
ld.so(1)
réduit le temps de démarrage des applications
conséquentes.
- Plus de correctifs des licences, y compris la suppression de la
clause de publicité de parts importantes de l'arborescences
des sources.
- Remplacement des commandes GNU
diff(1),
diff3(1),
grep(1),
egrep(1),
fgrep(1),
zgrep(1),
zegrep(1),
zfgrep(1),
gzip(1),
zcat(1),
gunzip(1),
gzcat(1),
zcmp(1),
zmore(1),
zdiff(1),
zforce(1),
gzexe(1),
et
znew(1)
par des équivalents sous licence BSD.
- Ajout du support en lecture seule des systèmes de fichiers
NTFS.
- Améliorations de la fiabilité des systèmes de
fichiers à couche, permettant à
NULLFS
de fonctionner à nouveau.
- Importation de l'utilitaire
growfs(8)
pour agrandir les systèmes de fichiers existants.
- Améliorations à
émulation linux
ce qui permet l'utilisation de plus d'applications.
- Améliorations significatives à la bibliothèque
pthreads(3)
.
- Remplacement de plusieurs utilisations statique de fd_set avec
poll(2)
ou de l'allocation dynamique.
- ANSIfication et prototypage plus strict pour une grande partie du
code source.
- Le support "legacy" de KerberosIV a été
supprimé. Le code KerberosV restant a été
restructuré pour faciliter la gestion.
- Plus de 2400 ports et de 2200 paquetages pré-compilés.
- Un nombre important de correctifs, de modifications et
d'optimisations ajouté à notre filtre de paquets
pf(4)
y compris :
- balisage de paquets (par exemple, des filtres sur balises sont
ajoutés par bridge en se basant sur l'adresse MAC)
- normalisation TCP à état (empêche le calcul
uptime et la détection NAT)
- détection passive des systèmes d'exploitation (filtre
ou redirige les connexions en se basan sur le système
d'exploitation source)
- proxy SYN (protège les serveurs contre les attaques SYN
flood)
- expirations des état adaptatives (empêche le
dépassement des tables à état lors d'une
attaque)
- Support matériel amélioré, y compris
- Kauai ATA controllers (Apple ATA100 wdc)
kauaiata(4)permettant le support des
modèles Powerbook 12" et 17".
- Support des registres de contrôle LongRun sur les processeurs
Transmeta.
- Plusieurs correctifs aux pilotes SCSI
aac(4),
ahc(4),
osiop(4),
et siop(4)
.
- Nouveaux pilotes de moniteurs matériel
it(4),
lm(4),
et viaenv(4)
.
- Nouveau pilote pour les accélérateurs crypto SafeNet
safe(4)
.
- Nouveau pilote
mtd(4)
pour les cartes réseau Myson Technologies .
- Plus de cartes ethernet prises en charge par
sk(4),
wi(4),
fxp(4),
et dc(4).
- Révision complète et synchronisation avec NetBSD de
tout le système de support
usb(4)
.
- Nouveau et meilleur support de contrôleurs variés pour
pciide(4),
y compris le support expérimental de Serial ATA.
- Nouveaux pilotes pour la prise en charge des framebuffers SPARC
mgx(4) et
pninek(4). Le pilote
vigra(4) prend en charge plus de modèles.
- pcmcia(4)
prise en charge des Tadpole SPARCBooks et SPARCs avec des ponts
pcmci-sbus.
- Support du Watchdog pour
elansc(4)
et
geodesc(4)
tel qu'ils sont utilisés sur les cartes Soekris.
- Le système comporte les composants majeurs suivants fournis
par des entités externes :
- XFree86 4.3.0 (+ correctifs, i386 contient aussi des serveurs 3.3.X
pour assurer un support de tous les chipsets)
- Gcc 2.95.3 (+ correctifs)
- Perl 5.8.0 (+ correctifs)
- Apache 1.3.28, mod_ssl 2.8.15, support DSO (+ correctifs)
- OpenSSL 0.9.7b (+ correctifs)
- Groff 1.15
- Sendmail 8.12.9 (+ correctif sécurité parse8.359.2.8)
- Bind 9.2.2 (+ correctifs)
- Lynx 2.8.4rel.1 avec support HTTPS et IPv6 (+ correctifs)
- Sudo 1.6.7p5
- Ncurses 5.2
- Latest KAME IPv6
- Heimdal 0.6rc1 (+ correctifs)
- Arla-current
- OpenSSH 3.7.1 (avec support GSSAPI)
- Plusieurs améliorations au niveau de la
sécurité et de la fiabilité (consultez les
lignes rouges dans le journal des changements
complet).
- et beaucoup plus.
Comment installer
Vous pouvez consulter ci-dessous les instructions figurant sur le livret
accompagnant les CDROM, dont vous disposeriez si vous aviez
acheté les CDROMs au lieu d'utiliser une des autres
possibilités d'installation. Les instructions pour faire une
installation par ftp (ou tout autre type d'installation) sont
très similaires ; les instructions du CDROM sont reproduites ici
telles quelles, de sorte que vous puissiez voir combien cela aurait
été plus facile si vous aviez acheté un CDROM.
Veuillez consulter les fichiers suivants sur les CDROMs pour plus de
détails quant à l'installation d'OpenBSD 3.4 sur votre
machine :
- CD1:3.4/i386/INSTALL.i386
- CD2:3.4/macppc/INSTALL.macppc
- CD2:3.4/vax/INSTALL.vax
- CD3:3.4/sparc/INSTALL.sparc
- CD3:3.4/sparc64/INSTALL.sparc64
- FTP:.../OpenBSD/3.4/alpha/INSTALL.alpha
- FTP:.../OpenBSD/3.4/hp300/INSTALL.hp300
- FTP:.../OpenBSD/3.4/hppa/INSTALL.hppa
- FTP:.../OpenBSD/3.4/mac68k/INSTALL.mac68k
- FTP:.../OpenBSD/3.4/mvme68k/INSTALL.mvme68k
Informations pour une installation rapide, faites pour les personnes
familières avec OpenBSD, et l'utilisation de la commande
"disklabel -E". Si vous n'êtes pas à l'aise avec
l'installation d'OpenBSD, lisez les fichiers INSTALL.* correspondants
cités ci-dessus !
OpenBSD/i386 :
Manipulez les options du BIOS, et voyez si vous pouvez démarrer
depuis le CDROM. La version OpenBSD/i386 est sur le CD1. Si votre BIOS
ne supporte pas l'amorçage depuis le CDROM, vous devrez
créer une disquette de boot pour l'installation. Pour faire une
disquette de boot, copiez CD1:3.4/i386/floppy34.fs sur une
disquette, et démarrez dessus.
Utilisez CD1:3.4/i386/floppyB34.fs pour un meilleur support des
contrôleurs SCSI, ou CD1:3.4/i386/floppyC34.fs pour un
meilleur support des ordinateurs portables.
Si vous désirez mélanger OpenBSD avec un autre
système d'exploitation, vous aurez sans doute besoin de lire
INSTALL.i386.
Pour créer une disquette depuis MS-DOS, utilisez
/3.4/tools/rawrite.exe. Sous Unix, utilisez l'utilitaire
dd(1).
L'exemple suivant est un exemple d'utilisation de
dd(1),
où le périphérique peut être
"floppy", "rfd0c", ou "rfd0a".
# dd if=<file> of=/dev/<device> bs=32k
Utilisez une disquette correctement formatée SANS BLOCS
DÉFECTUEUX ou vous n'y arriverez pas. Pour de plus amples
informations sur la création d'une disquette de démarrage
et sur l'installation d'OpenBSD/i386, veuillez lire la FAQ4.1.
OpenBSD/macppc :
Placez le CD2 dans votre lecteur de CDROM et allumez votre machine, tout
en maintenant la touche C enfoncée jusqu'à ce que
l'affichage s'allume et affiche OpenBSD/macppc boot.
Sinon, au prompt Open Firmware, entrez boot
cd:,ofwboot/3.4/macppc/bsd.rd
OpenBSD/vax :
Le démarrage à partir du réseau par mopbooting est
décrit dans INSTALL.vax.
OpenBSD/sparc :
La version 3.4 d'OpenBSD/sparc est située sur le CD3. Pour
démarrer à partir du CDROM, vous pouvez utiliser l'une des
deux commandes suivantes, en fonction de la version de votre ROM :
> boot cdrom 3.4/sparc/bsd.rd
or
> b sd(0,6,0)3.4/sparc/bsd.rd
Si votre sparc n'a pas de lecteur de CDROM, vous pouvez démarrer
depuis la disquette. Pour ce faire, vous devez copier
"CD3:3.4/sparc/floppy34.fs" sur une disquette. Pour plus
d'information, voir FAQ4.1. Pour
démarrer depuis la disquette, utilisez l'une des deux commandes
listées ci-dessous, selon la version de votre ROM :
> boot floppy
or
> boot fd()
Assurez vous que vous utilisez une disquette correctement
formatée et SANS BLOCS DÉFECTUEUX, ou votre installation
échouera très probablement.
Si votre sparc n'a pas de lecteur de CDROM ou de lecteur de disquette,
vous pouvez soit installer à l'aide d'une bande de
démarrage, soit via le réseau, comme indiqué dans
le fichier INSTALL.sparc.
OpenBSD/sparc64 :
Placez le CD3 dans votre lecteur de CDROM et tapez boot cdrom.
Si cela ne fonctionne pas ou si vous n'avez pas de lecteur de CDROM,
vous pouvez copier CD3:3.4/sparc64/floppy34.fs sur une disquette
et la démarrer avec boot floppy.
Assurez vous que vous
utilisez une disquette correctement formatée et SANS BLOCS
DÉFECTUEUX, ou votre installation échouera très
probablement.
Vous pouvez aussi copier CD3:3.4/sparc64/miniroot34.fs sur la
partition de swap sur le disque et démarrer avec boot
disk:b.
Si rien ne fonctionne, vous pouvez démarrer à partir du
réseau, comme décrit dans INSTALL.sparc64.
OpenBSD/alpha :
MettezFTP:3.4/alpha/floppy34.fs ou
FTP:3.4/alpha/floppyB34.fs (selon votre machine) sur une
disquette et saisissez boot dva0. Veuillez consulter
INSTALL.alpha pour de plus amples informations.
Assurez vous que vous utilisez une disquette correctement
formatée et SANS BLOCS DÉFECTUEUX, ou votre installation
échouera très probablement.
OpenBSD/hp300 :
OpenBSD/hppa :
OpenBSD/mac68k :
Démarrez MacOS normalement et partitionner votre disque avec les
configurations A/UX appropriées. Ensuite, faites une extraction
des utilitaires Macside à partir de FTP:3.4/mac68k/utils
vers votre disque dur. Exécutez Mkfs pour créer vos
systèmes de fichiers sur les partitions A/UX que vous venez
faire. Puis utilisez le "programme d'installation BSD/Mac68k" pour
copier tous les ensembles de FTP:3.4/mac68k/ sur vos partitions.
Vous serez finalement en mesure de configurer le programme de
démarrage BSD/Mac68k avec l'emplacement de votre noyau et de
démarrer le système.
OpenBSD/mvme68k :
Vous pouvez créer une bande d'installation initialisable ou
démarrer à partir du réseau.
Le
démarrage à partir du réseau une version de MVME68K
BUG qui supporte les commandes de déboggage NIOT et
NBO. Suivez les instructions dans INSTALL.mvme68k pour plus de
détails.
Remarques à propos du code source :
src.tar.gz contient une archive des sources se trouvant dans /usr/src.
Ce fichier contient tout excepté les sources du noyau, qui sont
dans une archive séparée. Pour l'extraire :
# mkdir -p /usr/src
# cd /usr/src
# tar xvfz /tmp/src.tar.gz
sys.tar.gz contient une archive des sources se trouvant dans
/usr/src/sys. Ce fichier contient toutes les sources nécessaires
pour reconstruire un noyau. Pour l'extraire :
# mkdir -p /usr/src/sys
# cd /usr/src
# tar xvfz /tmp/sys.tar.gz
Ces deux arborescences sont régulièrement mises à
jour dans le CVS. En utilisant ces arborescences, il est possible
d'utiliser les serveurs anoncvs immédiatement comme décrit
ici. Utiliser ces fichiers est beaucoup plus
rapide que d'obtenir la totalité des sources depuis un serveur
anoncvs.
Arborescence des ports
Une archive de l'arborescence des ports est aussi fournie. Pour
l'extraire :
# cd /usr
# tar xvfz /tmp/ports.tar.gz
# cd ports
Le sous-repértoire ports/ est un "checkout" de
l'arborescence des ports OpenBSD. Veuillez lire la page
http://www.OpenBSD.org/faq/faq15.html
si vous ne savez pas de quoi il
s'agit. Ce texte n'est pas un manuel pour utiliser les ports. C'est
plutôt un ensemble de notes permettant à l'utilisateur de
commencer rapidement à utiliser le systèmes de ports
OpenBSD.
Le répertoire ports/ représente une version CVS des
ports (voir la page du manuel
cvs(1)
si vous n'êtes pas familier avec CVS). Comme pour l'arborescence
des sources, notre arborescence des ports est disponible par anoncvs.
Donc pour mettre à jour votre arborescence des ports/
depuis un media en lecture-écriture, il suffit de lancer la
commande suivante :
# cd [portsdir]/; cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_3_4
[Bien sûr, vous devez remplacer le répertoire local et le
nom du serveur ici par l'emplacement de votre collection des ports et le
serveur anoncvs le plus proche.]
Remarquez que la plupart des ports sont disponibles en tant que paquetages
via ftp. Des mises à jour de paquetages pour la version 3.4 seront
disponibles si des problèmes surviennent.
Si vous êtes intéressé par l'ajout d'un port, voulez
aider, ou voulez juste en savoir plus, la liste de discussion
ports@openbsd.org est la liste à connaître.
www@openbsd.org
$OpenBSD: 34.html,v 1.28 2012/09/02 12:23:26 ajacoutot Exp $