Questions les plus fréquentes
après une installation
Changer
le shell par défaut
Créer le premier compte sous le
shell bash
Passer root avec la commande su
Comment passer
d'une console à une autre
Clavier Français
Autoriser Ctrl Alt Del
J'ai oublié le mot de
passe root
Où est le fichier de mot
de passe ?
Mettre à l'heure votre
machine
Modifier le prompt
Modifier le nom de machine
Envoyer du courrier
Les démons lancés par defaut
Modifier SSH
Le SMP (Multiprocesseur)
Transférer des comptes utilisateurs
Modifier
l'éditeur vi par défaut (Vim)
Rendez moi mon shell !
Le shell par défaut est le Korn Shell /bin/sh. Si comme moi vous
êtes familier du Bash, faites un pkg_add -v ftp://ftp.openbsd.org/pub/OpenBSD/3.0/packages/i386/bash-2.05-static.tgz
ou allez faire un tour du coté des ports : /usr/ports/shells/bash,
puis make && make install. N'oubliez pas de rajouter
le shell dans le fichier /etc/shells : /usr/local/bin/bash.
Si vous voulez faire du bash le shell par défaut de root, vous devez
éditer le fichier de mot de passe et modifier dans
la ligne concernant root /bin/sh par /usr/local/bin/bash
en utilisant la commande vipw.
Attention, Si vous vous êtes trompés, vous risquez de ne
plus pouvoir vous connecter au système. Par conséquent, passez sur une autre console, et connectez vous pour
vérifier.
Par la suite lorsque vous allez créer des comptes avec adduser, vous
n'avez plus qu'à choisir bash comme shell.
Comment passer d'une console à une autre ?
Oubliez le ALT+Fx de Linux, ici on utilise CTRL+ALT+Fx.
Où est le fichier de mots de passe ?
Icic, contrairement à Linux, point de /etc/passwd ou de /etc/shadow, le
fichier /etc/master.passwd contient les mots de passe. Il a les
droits -rw------ et appartient à root.wheel. N'éditez jamais ce fichier
à la main ! On vous aura prévenu! En utilisant la commande
vipw, non seulement vous n'interdisez pas la connexion simultanée
d'autres utilisateurs au système (vous ne verrouillez pas le fichier), mais
en plus vous laissez cette commande faire ses tests d'intégrité sur ce fichier.
De plus, ce fichier est regénéré à chaque appel de vipw, un changement manuel
ne serait pas pris en compte.
Si vipw ne répond plus pour cause de "file busy", supprimez le
fichier /etc/ptmp
Clavier francais (Devenu inutile en 3.1 et plus , car il est possible de configurer le clavier à l'installation)
1ère solution : echo "fr"
> /etc/kbdtype (Ce qui donne sachant que vous avez à ce moment
un clavier Français echo %fr% / !etc!kbdtype)
2nde solution : éditer le fichier
/etc/wsconsctl.conf et modifier la ligne kbd.....="ru" par .....="fr"
Dans les deux cas l'effet ne sera effectif
qu'au prochain redémarrage de la machine (!!!).
Dans le fichier /etc/sysctl.conf, modifiez la ligne
#Machdep.kbdreset=1 en Machdep.kbdreset=1 qui
vous autorisera à redémarrer un serveur en le CTRL+ALT+SUPPRant. Attention
ceci n'est pas très très sécurisé (c'est le moins que l'on puisse dire,
quelqu'un passant devant la console pourra réinitialiser votre machine!!)
J'ai oublié le mot de passe root
Il vous faut rebooter, puis au boot taper boot -s. Si vous
n'avez plus le noyau par défaut boot mon_noyau -s. Vous avez
alors accès au shell, toutefois il vous faut monter en écriture la (ou
les) partitions dont vous avez besoin.
Taper mount /etc (pour pouvoir écrire dans la partition
/etc).
Reste plus qu'à changer le mot de passe avec un coup de passwd.
Créer un premier
compte
Après l'installation il n'existe que le compte root. Vous devez donc
créer un, ou plusieurs comptes afin de pouvoir administrer cette machine
sans être root à chaque fois. Vous avez installé le shells bash et le clavier
français.
Tapez adduser. Si cela est la première fois il va vous demander un certain
nombre de chose afin de créer un fichier /etc/adduser.conf dans lequel
il va placer vos valeurs par défaut. Vous pouvez imaginer les avantages
puisque vous pouvez imposer des options pour la création des comptes utilisateurs.
Dans l'ordre il constate que /etc/adduser.conf n'existe pas. Il le crée,
en vous demandant, le shell par défaut, le répertoire ou mettre les répertoires
personnels, le type de cryptage.
Deuxième étape le fichier existe, il crée le premier compte et vous propose
les valeurs par défaut que vous avez rentré.
Il me demande le groupe par défaut, j'ai accepté le groupe asterix (en
fait pas utile) et je l'ai ajouté au groupe wheel.
Cela n'est nécessaire que si vous souhaitez qu'il puisse administrer la machine.
Attention à la fin il vous demande si vous souhaitez en créer un nouveau.
Par la suite il vous faut ajuster votre fichier de configuration
de sudo.
Je ne peux pas passer root avec su
Vous n'êtes pas dans le groupe wheel; seuls les utilisateurs de ce groupe
peuvent utiliser la commande su. C'est un bon moyen de sécuriser votre
système.
Pour les utilisateurs existants : Dans le fichier /etc/group,
ajoutez votre utilisateur : wheel:*:0:root,mon_user
Pour les nouveaux utilisateurs : Lors de la création avec adduser,
et à la question : Invite user into other groups : répondez wheel
Mettre à l'heure votre machine
Une petite chose à laquelle on ne pense pas tout de suite, mais qui est
importante pour un serveur, le mettre à l'heure. Attention il ne faut pas
confondre un serveur et un client. Ici la machine doit être cliente d'un
serveur de temps.
Vocabulaire :
GMT : Greenwich Meridien Time : Temps du méridien de Greenwich.
Anciennement heure de référence (1 horloge atomique)
UTC : Universal Coordinated Time : Temps universel coordonné
:Nouvelle heure de référence (une centaine d'horloge atomique). En pratique
identique à GMT.
RTC : Real Time Clock : Horloge Hardware d'un PC.
DST : Daylight Saving Time
Quelques infos sur la gestion hardware / Software de l'heure :
La plupart des OS (à l'exception notable de ceux de Microsoft!) gérent
l'heure de la manière suivante : Le RTC est réglé une fois pour toutes
à UTC. L'OS va, quant à lui calculer, en fonction du fuseau horaire spécifié,
l'heure locale de la machine, sans toucher à l'horloge Hardware. Le passage
à l'heure d'été/hiver se fera simplement en modifiant la base de calcul par
rapport au RTC non modifié. La seule modification de ce RTC se fera lors
de la synchronisation de temps sur un serveur
ntp.
Si vous utilisez un Windows quelconque, l'OS écrit dans le RTC pour
lui imposer l'heure locale.
Conséquence sur une machine en multiboot Windows/Unix , chaque OS est
perturbé au redémarrage par l'état du RTC laissé par l'autre OS.Sur mon portable,
ça se manifeste par un retard de 1h de Windows après une session OpenBSD
ou Debian.
Solutions :
- Régler l'horloge Hardware sur UTC. Les windows ne doivent pas
se mettre de l'heure d'été. OpenBSD sera réglé sur Europe/Paris.
- La suite dépend de vous : une modification définitive du noyau par
une recompilation, ou plus simplement la
modification d'un paramètre du noyau courant.
1. Recompilation.
Modifier le fichier /usr/src/sys/arch/i386/conf/RAMDISK
Pour Europe/ Paris, GMT+1, on a:
option TIMEZONE=60 # time zone to adjust RTC
time by Heure de votre fuseau horaire par rapport à GMT, en
minutes.
option DST=0 # daylight
saving time used by RTC Heure RTC par rapport à GMT, DOIT
rester à 0.
Et on recompile.
2. Configuration du kernel:
On utilise la possibilité offerte par l'OS de modifier à la volée le
noyau en place, au démarrage ou pendant le fonctionnement de la machine,
mais il faut alors redémarrer la machine, par contre on évite de devoir
recompiler. Pour en savoir plus sur cette méthode, voir la documentation suivante.
root@hendrix:/home/phil:#> config -fe /bsd
OpenBSD 3.1-stable (Monnoyau) #1: Wed Jun 5 14:52:24 CEST 2002
phil@hendrix:/usr/src/sys/arch/i386/compile/Monnoyau
Enter 'help' for information
ukc> timezone
timezone = 0, dst = 0
ukc> timezone +60
timezone = 60, dst = 0
ukc> quit
Pour d'autres informations sur les serveurs de temps, voir la documentation
suivante.
Il existe deux clients possibles pour mettre à l'heure votre machine
: rdate et ntpdate. rdate est déjà installé sur la machine, mais moins
précis.
Ajoutez le alors dans la crontab ou dans un script de lancement de votre
connexion ppp. Pour le lancer au démarrage de la machine transformez dans
/etc/rc.conf la ligne rdate_flags=NO en ntp.ac-creteil.fr. Utilisez autant
que possible le serveur de temps de votre provider. Attention renseignez
vous avant sur le serveur de temps que vous pouvez utiliser. N'oubliez pas
de prévenir le gestionnaire de cette machine,c'est plus poli.
Ntpdate n'est pas installé par défaut, si vous souhaitez l'utiliser vous
devez l'installer, vous devez utiliser le package ntp-4... qui se trouve
sur le ftp d'OpenBSD, ou utiliser le port ntp. La démarche est la même, vous
pouvez le lancer à chaque démarrage, modifier alors dans le fichier /etc/rc.conf
la ligne ntpdate_flags=NO en ntpdate_flags=ntp.mon_serveur_de_temps.
Attention, la mise à l'heure ne s'effectuera qu'une seule fois au
démarrage.
Attention la ligne ntpd=YES dans /etc/rc.conf est utile pour lancer
le serveur ntp, mais faut il encore que vous ayez installé celui-ci. Pour
faire de votre serveur OpenBSD un serveur de temps, consulter cette page.
Si vous souhaitez mettre à l'heure votre machine un peu plus souvent
que son redémarrage, ajoutez une crontab avec une mise à l'heure toutes
les heures par exemple : 0 * * * * /usr/local/bin/ntpdate
-b ntp.ac-creteil.fr
Modifier le prompt du
bash par défaut
Le prompt du bash par défaut n'est pas très
pratique, car il affiche simplement bash-2.05#
Si vous souhaitez par exemple connaître le répertoire dans lequel vous
vous trouvez, le nom de la machine, pratique lorsque l'on passe d'une machine
à une autre en un mot le personnaliser pour tous les utilisateurs de cette
machine, voilà la démarche. Créer le fichier /etc/profile avec les lignes
suivantes :
La ligne qui modofie le prompt de mon shell bash est la troisième et cela
donne philippe@soleil:/etc:#>
Par rapport à la formule le u donne le nom de login, h
le nom de la machine, w le chemin. On peut ajouter ou adapter autrement
(par exemple la date d mais cela donne vite un prompt trop long) celui-ci
me semble être le plus pratique. A vous de voir. Un fichier /etc/profile qui va
bien.
Le fichier /etc/myname contient une unique ligne : le nom de votre
machine. Si vous tapez quelquechose d'incompréhensible, votre machine se
nommera Amnesiac, ça peut sembler amusant, mais ca entraine quelques
facheux désagréments au niveau communications réseaux et fichiers de log...
Envoyer du courrier
Par défaut, l'agent de transport du courrier (MTA) installé avec votre
système est Sendmail. Pour faire court et sans lancer de troll, disons
que Sendmail est très ancien et porte avec lui une longue histoire de trous
de sécurité aussi graves que multiples. Apparemment, les dernières moutures
de ce logiciel (8.12) n'ont pas connues de trous depuis longtemps. De plus,
Sendmail n'est, enfin, plus setuid root! Autre bonne nouvelle, c'est un logiciel
fourni avec le système, il a donc subi l'audit
de sécurité.
Plus d'infos.
Les démons lancés par défaut
Par défaut OpenBSD lance
un certain nombre de processus, dont vous n'avez peut être pas besoin. En
un mot ne doit tourner que ce qui est utile. Un ps aux, puis un netstat
-na vous montre que tourne portmap, inetd.
Vous pouvez stopper cela si vous en avez pas l'usage.
Pour les stopper définitivement aller dans /etc/rc.conf et mettre NO
devant la ligne les concernant, puis faire un kill. Pour plus d'information
sur ce fichier de configuration voir ici.
Vous constaterez aussi le fait que votre machine est à l'écoute sur IPV6.
Si vous ne l'utilisez pas ;-) désactiver cela. Ils sont lancé dans /etc/inetd.conf.
Mettre un # devant tout ce que vous n'utilisez pas, à moins que vous ne stoppiez
inetd.
Modifier SSH par
défaut
Le démon sshd autorise la connexion root à distance. C'est pratique, donc
dangereux potentiellement, la sécurité d'un système repose sur le couple
login/mot de passe.
Cela oblige à se connecter sous votre nom d'utilisateur puis à passer root.
Deux possibilités :
Pensez à faire un kill -HUP
Remarque : A partir de la version 3.1 les fichiers de configuration de
ssh se trouvent dans /etc/ssh.
Les systèmes multiprocesseurs?
Non, le SMP n'est, pour l'instant, pas géré par OpenBSD. Si vous avez une
carte bipro avec les deux processeurs installés, seul un des deux sera vu,
l'autre dormira complètement et ne sera même pas détecté par l'OS.
Transférer des comptes
utilisateurs entre machines
Faire une sauvegarde de /etc/master.passwd.
Copier /etc/master.passwd d'une machine sur l'autre. Si ce n'est pas
à l'origine la même version d'OpenBSD faire un diff des deux fichiers. Il
y a des comptes différents ou en plus dans les différentes versions d'Open.
Faire la même chose avec /etc/group.
//////A tester
Lancer pwd_mkdb si vous avez ajouté de nouveaux utilisateurs.
Modifier
l'éditeur vi par défaut
L'utilisation de vi par défaut sous OpenBSD est un vrai calvaire. La
solution consiste à installer vim. Vous pouvez le trouver dans les ports
/usr/ports/editors/vim, puis faire un make && make install (si vous
n'avez pas installé le serveur X, mettre un # dans le fichier Makefile devant
subdir +=stable) ou si vous n'avez pas encore installé les ports faire un
pkg_add -v ftp://ftp.OpenBSD.org/pub/OpenBSD/3.1/packages/i386/vim-6.1-no_x11.tgz
(cela est à adapter à votre version d'OpenBSD). Ici je n'ai pas de serveur
X d'installé.
Copier dans votre répertoire personnel le fichier /usr/local/share/vim/vim61/vimrc_example.vim
en ~/.vimrc
Lancer vim (il se trouve dans /usr/local/bin).
Par la suite, il est souhaitable de rendre l'utilisation de Vim définitive,
vous pouvez par exemple ajouter un lien symbolique ou/et modifier le PATH
par défaut.
Vous pouvez activer la colorisation syntaxique
Voir aussi
man afterboot