Introduction
L'histoire d'OpenBSD commence en 1995 avec la séparation de Théo De Raadt vis à vis du projet NetBSD. Le projet OpenBSD a pour but:
- de fournir la meilleure plateforme de développement possible
- d'intégrer du code correctement écrit venant de copyright acceptable tel que la licence BSD
- de fournir un système à jour et sécurisé
- de fournir une plus grande intégration des logiciels cryptographiques
- de suivre les normes ANSI et POSIX
- de rendre le code source indépendant de l'architecture
- d'un choix technique plutôt que politique
- d'une orientation développeur
- de fournir une plateforme de développement pour la compilation croisée
- de régler le maximum de problèmes importants
Vous pouvez retrouver tous ces principes sur le site officiel (http://www.openbsd.org/fr/goals.html).
Un système qui fonctionne par défaut
OpenBSD a la particularité de "juste fonctionner" après une installation. C'est à dire que le système contient tout ce qui est nécessaire à l'utilisateur, une interface graphique (le serveur X ainsi que xdm et twm), des éditeurs de textes (vi et mg), des services réseaux (DHCP, HTTP, DNS...), des outils pour les développeurs (gcc, gdb...) ainsi que la documentation complète d'OpenBSD.
Un système sécurisé
OpenBSD a une volonté de sécurité au niveau du système. Le projet OpenBSD a mis d'ailleurs en place de nombreuses solutions par défaut pour pallier aux problèmes de sécurité. Par exemple, les services utilisé couramment tel que le serveur web apache, sont directement livré avec OpenBSD et offrant des améliorations intéressantes tel que le chrooting par défaut pour apache et bind.
Une documentation importante
Le principal avantage que l'on peut trouver sur les distributions libres est une documentation libre de droit, importante et surtout présente par défaut. OpenBSD ne déroge pas à la règle et offre à ses utilisateurs une vaste documentation via la commande man.
$ man
usage: man [-achw] [-C file] [-M path] [-m path] [-S subsection] [-s section]
[section] name ...
man -f command ...
man -k keyword ...
$ man intro
NAME
intro - introduction to general commands (tools and utilities)
DESCRIPTION
The manual pages in section one contain most of the commands which
comprise the BSD user environment. Some of the commands included in
section one are text editors, command shell interpreters, searching and
sorting tools, file manipulation commands, system status commands, remote
file copy commands, mail commands, compilers and compiler tools,
formatted output tools, and line printer commands.
All commands set a status value upon exit which may be tested to see if
the command completed normally. The exit values and their meanings are
explained in the individual manuals. Traditionally, the value 0
signifies successful completion of the command.
SEE ALSO
man(1), intro(2), intro(3), intro(4), intro(5), intro(6), intro(7),
intro(8), intro(9)
HISTORY
An intro manual appeared in Version 6 AT&T UNIX.
OpenBSD 4.8 January 10, 2010 OpenBSD 4.8
Installation
Comme tout système d'exploitation, OpenBSD ne déroge pas à la règle et offre plusieurs méthodes pour son installation. Les installeurs sont disponibles sur les miroirs d'OpenBSD et ne nécessite que très peu de connaissances pour leur mises en places.
Préparer l'installation
Compatibilité matérielle
Comme toutes distributions libres et open-source, une liste de compatibilité est disponible sur le site officielle. La majorité du matériel est supporté, mais certains d'entre eux nécessite quelques modifications ou rajouts pour les faire fonctionner. Par exemple, les cartes wifi Intel nécessite l'ajout de firmware non libre.
Définitions des besoins
Pourquoi? Le système d'exploitation s'adapte dans beaucoup de milieu. Que ce soit au niveau de matériel embarqué (firewall par exemple), comme serveur (serveur web) ou comme stations de travail (pour le développement ou le multimédia).
Installer via un CD-ROM
Il suffit de graver l'image iso récupérable sur les miroirs d'OpenBSD (http://ftp.fr.openbsd.org/pub/OpenBSD/4.9/i386/install49.iso) et de la graver sur un CD-Rom. Pour cela, vous pouvez utiliser, si vous êtes sous Windows, InfraRecorder. Si vous êtes sous Linux/Unix, et que vous utilisez une interface graphique, vous pouvez utiliser K3B.
Si vous êtes dans un environnement non graphique Unix/Linux, vous pouvez utiliser les commandes suivantes:
- sous OpenBSD:
$ cdio tao image.iso
- sous FreeBSD:
$ burncd -f /dev/acd0 data image.iso fixate
- sous Debian:
$ cdrecord -scanbus cdrecord fs=12m speed=4 -dev=x,y,z image.iso
Installer via une clé USB
Il suffit d'installer OpenBSD sur une clé usb (via une machine virtuelle par exemple) et lors du démarrage avec la clé USB, au prompt, utiliser le kernel RAMDISK :
boot> bsd.rd
L'installeur se lance.
Installer via un réseau
Pour l'installation via le réseau, il est nécessaire d'utiliser un serveur DHCP (avec la gestion de BOOTP/PXE) et tftp.
Sous Windows
Vous pouvez télécharger le logiciel tftp32, offrant le service DHCP ainsi que tftp.
Sous Unix/Linux
Si vous êtes sous une distribution Debian, vous avez besoin d'un serveur DHCP et tftp. Utilisez la commande apt-get ou aptitude pour installer ces 2 packages:
# aptitude install dhcp3 atftpd
Puis, configurer le serveur tftp grâce au superserveur inetd.conf:
# cd /etc/ # cat inetd.conf ...
Enfin, configurez le serveur dhcpd, les fichiers de configurations de trouvent dans /etc/dhcp3/.
Si vous êtes sous un système OpenBSD ou FreeBSD
Installer via une disquette
Sous Windows
Sous Debian
Sous OpenBSD
Avant de commencer/En cas de problème
- Sauvegardez vos données!
- Si l'installation s'arrête, il est toujours possible:
- De la recommencer
- De booter sur un shell minimal pour voir les problèmes
- ...
N'oubliez pas qu'il y a une communauté autour du logiciel, et que vous pourrez avoir l'aide que vous voudrez sur le site officiel, ou sur les forums spécialisés.
Si votre installation a réussit, n'oubliez pas d'envoyer le message de démarrage à la mailing list dmesg@openbsd.org
Pendant l'installation
Séquence de boot
Début de l'installation
Après l'installation
Installer des logiciels
Comme pour les autres système BSD, OpenBSD utilise un gestionnaire de package nommé pkg_install. Ce dernier permet d'installer des logiciels précompilé par l'équipe d'OpenBSD et assurant une sécurité optimum. Mais vous pouvez aussi utiliser le système des ports (/usr/ports/) et ainsi compilé les logiciels que vous avez besoins.
Par ailleurs, l'équipe d'OpenBSD recommande l'utilisation de la première méthode pour des raisons de sécurité.
Ajouter des utilisateurs et des groupes
Configuration
Les commandes vitales
man
La commande pour avoir accès au manuel:
$ man
Pour rechercher des documentations dans la base de données, il suffit d'utiliser l'argument -k et le terme désiré:
$ man -k LeTermeVoulu
Les pages du manuel sont regroupé par section, par convention, et identique aux autres distributions de type Unix/Linux.
- Section 1: Les Commandes générales (tel que ls, cd, pwd...)
- Section 2: Les Appels système (tel que le retour d'erreur des sockets)
- Section 3: Les Sous routines (tel que les librairies du C )
- Section 4: Les fichiers spéciaux (tel que les fichiers contenu dans /dev)
- Section 5: Les formats de fichiers (tel que les fichiers de structures)
- Section 6: Les jeux (les jeux sous openbsd!)
- Section 7: Les macros et conventions ( ainsi que les autres documentations)
- Section 8: Les commandes de maintenance (tel que mount, fsck, dump...)
- Section 9: Les interface du Kernel (tel que les structures de données ou les variables)
Pour chercher dans une rubrique particulière, il suffit d'utiliser la commande de cette façon:
$ man NumeroDeRubrique -k LeTermeVoulu
find
locate
Configurer le matériel
Configuration du clavier et de la souris
Configuration de l’environnent utilisateur
Configuration de Xenocara (X11)
Configurer le réseau
Configurer une connexion Ethernet
Configurer une connexion wifi
Configurer une connexion PPP
Configurer Packet Filter (Pare-feu)
Une première approche
Administrer Packet Filter
Configuration basique
Configuration avancée
Configuration d'un NAT
Configuration avec un IDS
Quelques utilitaires pratiques
Introduction à mg
mg est un éditeur de texte développé par l'équipe d'OpenBSD basé sur Emacs. Il possède le même jeu de raccourcis qu'Emacs, en étant beaucoup plus léger.
Introduction à Tmux
Tmux est un démultiplexeur de terminal, c'est à dire qu'il peut créer plusieurs terminaux dans une fenetre et ainsi en assurer la gestion avec des commandes. Il offre entre autre la possibilité de se "détacher" et de se "réattacher", ce qui a pour conséquence de sauvegarder une sessions...
Introduction à DWM
DWM (Dynamic Windows Manager) est une interface graphique dynamique et minimal. Elle remplace facilement des interfaces graphiques plus lourdes tel que Gnome ou KDE.
Administration
Bibliographie
Liens
Le site officiel d'OpenBSD : (anglais) http://www.openbsd.org
Le site officiel d'OpenBSD en français : (français) http://www.openbsd.org/fr/
Le site de la communauté OpenBSD France : (français) http://openbsd-france.org/
Livres
Absolute OpenBSD de Michael Lucas
The Book of PF - A No-Nonsense Guide to the OpenBSD Firewall de Peter N. M. Hansteen
Secure Architectures with OpenBSD de Brandon Palmer, Jose Nazario.