Introduction

modifier

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

modifier

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é

modifier

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

modifier

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

modifier

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

modifier

Compatibilité matérielle

modifier

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

modifier

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

modifier

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

modifier

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

modifier

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

modifier

Vous pouvez télécharger le logiciel tftp32, offrant le service DHCP ainsi que tftp.

Sous Unix/Linux

modifier

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

modifier

Sous Windows

modifier

Sous Debian

modifier

Sous OpenBSD

modifier

Avant de commencer/En cas de problème

modifier
  1. Sauvegardez vos données!
  2. Si l'installation s'arrête, il est toujours possible:
    1. De la recommencer
    2. De booter sur un shell minimal pour voir les problèmes
    3. ...

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

modifier

Séquence de boot

modifier

Début de l'installation

modifier

Après l'installation

modifier

Installer des logiciels

modifier

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

modifier

Configuration

modifier

Les commandes vitales

modifier

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

Configurer le matériel

modifier

Configuration du clavier et de la souris

modifier

Configuration de l’environnent utilisateur

modifier

Configuration de Xenocara (X11)

modifier

Configurer le réseau

modifier

Configurer une connexion Ethernet

modifier

Configurer une connexion wifi

modifier

Configurer une connexion PPP

modifier

Configurer Packet Filter (Pare-feu)

modifier

Une première approche

modifier

Administrer Packet Filter

modifier

Configuration basique

modifier

Configuration avancée

modifier

Configuration d'un NAT

modifier

Configuration avec un IDS

modifier

Quelques utilitaires pratiques

modifier

Introduction à mg

modifier

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

modifier

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

modifier

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

modifier

Bibliographie

modifier

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/

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.