Professional Documents
Culture Documents
Version 2.0
Auteur : F. Micaux
fmicaux@actilis.net
2/270
TP avec instructions.......................................................................................................................64
Les sauvegardes..................................................................................................................................67
Les Outils De Sauvegarde..............................................................................................................68
Les Outils De Sauvegarde..............................................................................................................69
Compression de donnes...............................................................................................................70
La Sauvegarde Par tar ..............................................................................................................71
La sauvegarde par CPIO................................................................................................................73
Options de la commande cpio........................................................................................................75
La commande rsync.......................................................................................................................76
La Sauvegarde Par dd ..............................................................................................................78
La sauvegarde incrmentale...........................................................................................................80
Les Bandes.....................................................................................................................................81
TP - Les sauvegardes.....................................................................................................................82
TP avec instructions.......................................................................................................................83
Les disques.........................................................................................................................................85
Les Disques Physiques...................................................................................................................86
Les Disques de Linux....................................................................................................................87
Le partitionnement.........................................................................................................................88
Ajout Dun Disque.........................................................................................................................89
Le Raid Logiciel sous Linux..........................................................................................................90
RAID Logiciel sous Linux : mise en oeuvre.................................................................................91
RAID Logiciel : maintenance........................................................................................................92
Logical Volume Manager..............................................................................................................93
Schma dun systme LVM...........................................................................................................94
Logical Volume Manager : Mise en oeuvre..................................................................................95
Logical Volume Manager : Mise en uvre (suite)........................................................................97
LVM : Maintenance.......................................................................................................................98
Le swap ....................................................................................................................................99
Le swap : mise en oeuvre.......................................................................................................100
TP : Les disques Physiques et logiques.......................................................................................102
TP avec instructions.....................................................................................................................103
Les Systmes de fichiers..................................................................................................................106
Arborescence Et Systmes De Fichiers.......................................................................................107
Arborescence Et Systmes De Fichiers.......................................................................................108
Les Diffrents Types De Systmes De Fichiers..........................................................................109
Les Diffrents Types De Systmes De Fichiers..........................................................................110
La Gestion De Lespace Disque..................................................................................................111
Commandes De Gestion Des FS..................................................................................................112
Commandes propres ext2..........................................................................................................113
Montage des systmes de fichiers................................................................................................115
Rfrence du systme de fichiers principal.................................................................................116
Le fichier /etc/fstab......................................................................................................................117
Montage et dmontage automatique............................................................................................118
Les Quotas...................................................................................................................................119
Mise en place de quotas...............................................................................................................120
Version 2.0 2004
fmicaux@actilis.net
3/270
4/270
TP avec instructions.....................................................................................................................173
Les priphriques..............................................................................................................................176
Introduction..................................................................................................................................177
Les fichiers spciaux....................................................................................................................178
Les modules.................................................................................................................................179
Les modules.................................................................................................................................180
TP La gestion des priphriques..................................................................................................181
TP avec instructions.....................................................................................................................182
Le Noyau..........................................................................................................................................183
Le rle du noyau : Linux, c'est a !..............................................................................................184
Pourquoi reconstruire le noyau....................................................................................................185
Notion de Noyau monolithique....................................................................................................186
Sauvegardes avant construction d'un noyau................................................................................187
Installation des sources du noyau................................................................................................188
Construction dun nouveau noyau en 5 tapes............................................................................189
Construction dun nouveau noyau...............................................................................................191
Un mot sur le kernel 2.6...............................................................................................................192
Les paramtres de Linux..............................................................................................................193
Les IPC........................................................................................................................................194
Informations complmentaires sur le noyau................................................................................195
TP - Construction du noyau 2.4...................................................................................................196
TP avec instructions.....................................................................................................................197
Les performances..............................................................................................................................198
Les ressources surveiller...........................................................................................................199
Les commandes de surveillance..................................................................................................200
La commande vmstat...................................................................................................................201
TP - La gestion des performances................................................................................................203
TP avec instructions.....................................................................................................................204
Gestion des logs................................................................................................................................205
Les fichiers de log........................................................................................................................206
Le service de traage : syslogd....................................................................................................207
Le fichier de configuration /etc/syslog.conf................................................................................208
Identification des messages.........................................................................................................209
Logrotate : la rotation des logs....................................................................................................211
Logrotate : configuration.............................................................................................................212
Logrotate : configuration.............................................................................................................213
Les interfaces rseau.........................................................................................................................215
Les adresses IP.............................................................................................................................216
Les adresses prives.....................................................................................................................217
Les interfaces rseau....................................................................................................................218
Les pilotes de priphriques........................................................................................................219
Les pilotes de priphriques : traces............................................................................................220
Configuration des interfaces........................................................................................................221
Configuration des interfaces........................................................................................................222
Configuration des interfaces........................................................................................................223
Version 2.0 2004
fmicaux@actilis.net
5/270
6/270
Introduction
Un peu d'histoire
Quelques concepts
7/270
Administration avance
Les priphriques
Le Noyau
Configuration rseau
La gestion des logs
Monitoring systme
Les services
Introduction au Firewall
Introduction aux services rseau
Administration systme
X-Window
Automatisation de tches
Arrt et dmarrage
8/270
Prsentation du module
Thmes du module
Lhistorique de Linux;
Objectifs
Comprendre le mouvement Open Source, GNU, Linux
Savoir chercher de l'information dans la documentation
9/270
Les Processus,
10/270
GPL.
11/270
Lhistorique de Linux
Linux le systme de Linus Torvalds
Janvier 1991 : le point de dpart
Dbut 1991, Linus assiste une confrence de Richard Stallman Helsinki. RMS est l'auteur de
Emacs.
Linus achte un PC pour ses 20 ans, qui lui est livr le 5 janvier 1991.
La phase Minix
Minix est le systme dAndy (Andrew) Tanenbaum, et est l'illustration de son livre Operating
pas.
Il y ajoute un pilote disque et un systme de fichiers (compatible avec celui de Minix, le but tant
12/270
Les annonces
3 juillet 1991 : Le premire annonce au public
Le 3 juillet 1991, Linus poste un article sur comp.os.minix demandant o trouver la norme
POSIX , rest sans rponse immdiate (il reu par la poste les 3 volumes Standards POSIX
plus tard)
Il consulte alors les manuels de lUnix Sun de sa fac, pour dterminer les spcifications des
appels systmes quil allait dvelopper, plus certains pris dans le livre dAndy Tanenbaum.
Puis, quelques lecteurs avertis sintressrent la question, devinant quun projet ncessitant de
systmes quil na pas encore ralis. GCC, le compilateur C de GNU s'excute lui aussi. A partir
de l, tout va plus vite, et le dclic se produit.
Linus avait imagin appeler son projet Freax sil le diffusait, et lappela finalement Linux ,
13/270
14/270
15/270
dinconnus.
Linus demanda chaque utilisateur de lui envoyer une carte postale, pas dargent. Il reu environ
"
2000 cartes postales d'un peu partout dans le monde, o il tait connu sans jamais avoir quitt sa
chambre et son PC.
16/270
17/270
En 2002
RedHat 7.3, Mandrake 8.2 , et Debian 3.0 sont alignes sur le noyau 2.4.18, le dernier disponible
%
En 2003
Mandrake 9 et RedHat 8.0 et 9 distribuent le noyau 2.4.20.
&
En 2004
Mandrake 10 et Fedora Core 2 distribuent un noyau 2.6
'
)
0
18/270
Spcificits Linux
Multi-plateformes : Intel, Alpha, SPARC, PPC, 68000, etc.
5
9
@
19/270
de la documentation
C
Trs scure, car les packages sont prouvs (une version par an, mais stable), idale pour les
F
serveurs
Mise jour par Internet grce "apt-get", outil de gestion de version des paquetages.
G
On conseille Woody pour les serveurs et Sid pour les stations de travail.
P
Q
A propos de Fedora / RedHat : Fedora est considrer comme RedHat 9.x, et suit la
mme logique que les anciennes distributions RedHat. RedHat ES/AS, est une
distribution optimise i686, mais payante.
20/270
SuSE est payante depuis la version 8. On peut tlcharger une version d'valuation.
W
Peut tre une des plus scure , idale pour des serveurs (lgret, scurit).
`
21/270
Le Rle De Ladministrateur
Grer
Les utilisateurs et groupes
Les fichiers et les disques
Les sauvegardes
Surveiller
Lespace disque
Les ressources et les performances
La scurit
Dclarer, installer et Administrer
Les priphriques
Les services
Les nouveaux produits
22/270
Comment Administrer
Plusieurs solutions
Excuter les commandes dadministration
Mthode la plus adapte, permettant de matriser les commandes pour ensuite les automatiser par
c
des scripts
dadministration
f
g
23/270
q
r
24/270
La documentation
Axiome de dpart
Un bon administrateur est un individu sachant lire la documentation.
De nombreuses sources de documentation existent
Les pages du manuel
La commande man
s
-h / -H
w
25/270
Installation du Systme
Application pratique
Thmes du module
Etapes et modes d'installation d'une distribution GNU/Linux
Objectifs
Raliser une installation en local ou via le rseau
26/270
Installation de Linux
Application
Installation de la distribution RedHat 9.X
Installation possible de Debian 3.0
4 grandes tapes
Dmarrage
Chargement dun mini-systme fonctionnant grce un disque virtuel. Lancement de loutil
dinstallation
Configuration du systme
Collecte des informations propres la machine et configuration des fichiers dadministration
27/270
dveloppement, etc.), impliquant une diffrence dans la slection des paquetages installs
dautres serveurs.
28/270
Installation : Booter
Ncessite
un cd/rom bootable,
Ou
une disquette de dmarrage bootable
Depuis Windows
Par lutilitaire rawrite fourni avec la distribution (rpertoire dosutils)
Fichiers image
Ce sont les fichiers *.img sur le CD dans le rpertoire images
e
29/270
Installation : partitionnement
Au moins 2 partitions sont ncessaires
Au moins une partition de swap
Au moins une partition systme (root), qui sera monte sur /
f
Partition Magic
i
k
l
30/270
bin
boot
dev
etc
home
initrd
lib
mnt
opt
proc
root
sbin
tmp
usr
var
:
:
:
:
:
:
:
:
:
:
:
:
:
:
:
31/270
/usr
n
o
/tmp
/home
p
q
r
Et ventuellement
/boot
20 Mo
/usr/src
/opt
/var/log
/var/spool
/var/data ou /data
s
t
u
v
w
x
Nos clients choisissent souvent un seul agrgat RAID (1 ou 5) mont dans /var/data
ou /data, quils dcident de sparer en sous-rpertoires.
32/270
Le choix manuel des paquetages installer est une opration fastidieuse, prvoir une demi|
Conseil
Une installation minimale, et un script dinstallation automatique des paquetages souhaits
}
33/270
34/270
TP : Installation du systme
Plusieurs possibilits sont offertes :
Installer la distribution fournie sur CD : RedHat
~
Installer une autre distribution par le rseau (via NFS, FTP, ou HTTP)
Linstallation depuis un partage SMB (serveur Windows) est elle aussi supporte par certaines
distributions
35/270
:
:
:
:
:
bf24
128 Mo
1000 Mo
3000 Mo
1000 Mo
1000 Mo
Noyau et Modules :
Indiquer CDROM
Configuration rseau :
192.168.0.xxx
Configuration des modules : Choisir le module de la carte 3COM
Systme de base :
Le chargeur de boot
Disquette d'amorage
Redmarrage
36/270
37/270
x-window-system-core
Installation de KDE :
apt-get install kde-base konqueror konsole kpackage
Installation de GNOME :
apt-get install gnome-session gnome-core sawfish-gnome gedit gnome-terminal
gnome-panel gmc gnome-control-center nautilus
Installation d'OpenOffice :
apt-get -t testing -u install openoffice.org
Installer aussi :
apt-get install mc vim kernel-headers-2.4.18bf2.4 screen ssh
hdparm make autoconf
synaptic gcc
38/270
Les paquetages
Thmes du module
Prsentation de RPM
Les commandes
Objectifs
Les diverses manires dinstaller et de dsinstaller un logiciel sous Linux
39/270
Les commandes
rpm : installation et dsinstallation, consultation de paquetages, construction de paquetages.
40/270
Les commandes
dpkg : le pendant de la commande rpm de RedHat.
41/270
La commande rpm
Options et arguments
Installation
rpm
i nom_package-version.arch.rpm
Mise jour
rpm -U nom_package-version-N+1.arch.rpm
Dsinstallation
rpm e nom_package
Les Query :
Liste des paquetages installs
rpm qa
rpm -q nom_package
rpm qf chemin_complet_fichier
42/270
Paquetage install
rpm qi nom-package
Paquetage install
Qualits / dfauts
La commande reconnat les dpendances entre les paquetages.
Elle ne sait pas les satisfaire en automatique.
43/270
La commande dpkg
Options et arguments
Installation
dpkg i nom_package-version.deb
nom_package
Dsinstallation totale
dpkg P
nom_package
44/270
Les requtes
Liste des paquetages installs
dpkg get-selections
\*
dpkg -I
nom_package.deb
dpkg -c
nom_package.deb
dpkg l
nom_package
dpkg L nom_package
dpkg -S fichier
45/270
APT
Atout inconstable de la distribution Debian, APT est aussi devenu disponible pour
RedHat.
Le fichier /etc/apt/sources.list : gestion des sources
Saigon:/# cat /etc/apt/sources.list
deb http://security.debian.org/ stable/updates main
deb http://ftp.us.debian.org/debian/ stable main non-free contrib
deb-src http://ftp.us.debian.org/debian/ stable main non-free contrib
http.us.debian.org
46/270
nom_package
nom_package
Supprimer un paquetage
apt-get remove [--purge]
nom_package
47/270
48/270
Autres outils
Synaptic
Outil provenant de la distribution unstable Debian propossant un frontal graphique apt-get
Up2date
Outil de mise jour du systme aprs enregistrement sur le site de la RedHat.
GnoRPM
Interface graphique Gnome la commande rpm
Kpackage
Interface graphique KDE de la commande rpm
49/270
TP installation de packages
Exercice 1
Lister les paquetages installs.
Lister le nom (le champ Name) et la description (le champ Summary) des paquetages installs.
Exercice 2
Tlcharger sur le serveur FTP de linstructeur: Webmin, Acrobat Reader 5
ftp 192.168.0.199
Login= ftp et mot de passe= ftp
lcd
/opt
mget
web*
Installer Webmin
Installer Acrobat Reader 5 partir de ses sources
50/270
TP avec instructions
Exercice 1
Lister les paquetages installs.
rpm -qa
Lister le nom (le champ Name) et la description (le champ Summary) des paquetages installs.
rpm e telnet-0.17-23
51/270
Exercice 2
Tlcharger sur le serveur FTP de linstructeur: Webmin, Acrobat Reader 5
ftp 192.168.0.199
Login= ftp et mot de passe= ftp
lcd
/opt
mget
web*
Installer Webmin
rpm ivh webmin-1.080-1.noarch.rpm
52/270
La gestion des
utilisateurs
Objectifs
Crer des utilisateurs et des groupes;
Les fichiers
/etc/passwd, /etc/shadow
/etc/group, /etc/gshadow
/etc/default/useradd,profiles et *shrc
53/270
54/270
Un utilisateur dispose dun rpertoire par dfaut (home) et utilise une commande par
dfaut (shell).
Un utilisateur = une ligne dans le fichier /etc/passwd
login:pwd:uid:gid:finger-info:home:shell
55/270
56/270
Les commandes
Comptes utilisateurs :
useradd
usermod
userdel
Groupes dutilisateurs :
groupadd
groupmod
groupdel
57/270
chsh
Informations personnelles
chfn
Le mot de passe
passwd
58/270
RedHat ajoute dans le fichier .bashrc par dfaut des utilisateurs une instruction
forant l'excution de /etc/bashrc si celui-ci est prsent. Ceci n'est pas standard.
A la dconnexion :
Si .bash_logout existe, il est excut
59/270
Exemple :
export PS1="\[\033[35m\][\$(date
+%H:%M)]\[\033[32m\]\u@\h:\w\n:>\[\033[00m\]"
Affichage du nom dutilisateur, de lUID (savoir qui lon est est pratique)
Affichage du nom de la machine (savoir sur quel serveur on est logu)
60/270
61/270
boite lettre. Le destinataire pourra tre averti de la prsence de messages lors de sa connexion
La communication directe
write, wall
Permet dcrire un ou lensemble des utilisateurs connects
On ne peut crire qu'aux utilisateurs qui autorisent grce la commande mesg y la rception
talk
Permet dengager une session de dialogue avec un autre utilisateur
Les fichiers
/etc/issue
Affich avant la connexion (mire de connexion)
/etc/motd
Affich aprs lauthentification dun utilisateur (message de bienvenue)
62/270
TP - Gestion utilisateurs
Exercice 1
Crer un compte utilisateur usera
Faire en sorte que chaque nouvel utilisateur dispose dun rpertoire tmp lors de sa cration.
Exercice 2
Crer les groupes admin et dev
Modifier lutilisateur usera pour que son groupe par dfaut soit admin
Exercice 3
Synchroniser lheure du BIOS avec lheure du systme
Exercice 4
Lorsque usera se connecte, il souhaite automatiquement prvenir par un message sur la
Faire en sorte que lorsque root lance un shell bash , il soit affich sur son terminal
Exercice 5
Faire en sorte que lheure, le nom de la machine, le login et le rpertoire courant complet soient
63/270
TP avec instructions
Exercice 1
Crer un compte utilisateur usera
adduser usera
Faire en sorte que chaque nouvel utilisateur dispose dun rpertoire tmp lors de sa cration.
mkdir
/etc/skel/tmp
/etc/shadow,
/etc/group
et
adduser u 0 o g 0 admin
64/270
Exercice 2
Crer les groupes admin et dev
groupadd admin
groupadd dev
usermod
-G admin, dev
usera
Modifier lutilisateur usera pour que son groupe par dfaut soit admin
usermod
-g admin usera
Exercice 3
Rechercher les commandes adquates avec man k xxxxxx
hwclock --systohc
Dans
/etc/profile, mettre :
setleds
-D +num
65/270
Exercice 4
Lorsque usera se connecte, il souhaite automatiquement prvenir par un message sur la
Faire en sorte que lorsque root lance un shell bash , il soit affich sur son terminal
Exercice 5
Faire en sorte que lheure, le nom de la machine, le login et le rpertoire courant complet soient
+%H:%M)] \u@\h:\w:>
66/270
Les sauvegardes
Thmes du module
Compression
Archivage, Copie bloc bloc
Sauvegarde incrmentale
Les bandes
Commandes (11)
compress, uncompress, gzip, gunzip
tar, cpio, pax
dd, dump, restore, mt
Objectifs
Utiliser les outils systme usuels de sauvegarde
Sauvegarder des fichiers, des rpertoires, des partitions ou le disque dur
67/270
pax
Sauvegarde incrmentale
dump
restore
Utiliser les outils de sauvegarde incrmentale dump et restore au 21me sicle est
peut-tre un peu inconscient.
Manque de souplesse des restaurations
Manque au niveau du catalogue de chaque sauvegarde
68/270
Plan de sauvegarde
A dterminer en fonction des interrogations suivantes
quoi , quand , persistance , stockage , support , capacit , fentre horaire ,
restauration , automatique
Fiabilit,
Rapidit de la sauvegarde
69/270
Compression de donnes
Le standard Unix compress
Commande portable (prsente sur tout Unix)
Compression : compress nom-fichier
Bzip2
Nouveau compresseur encore plus performant que GNU zip, utilis notamment pour
la compression du noyau.
Compression : bzip2 nom fichier
Dcompression : bunzip2 nom-fichier
70/270
Les actions
Actions souhaite
Option
71/270
Option
f NOM-ARCHIVE
T fic-liste.txt
C REP-DEST
Attention :
Les options qui ncessitent un argument (f, T, C), forcent l'utilisation du caractre - pour les
Exemples :
tar czvf arch.tar.gz
/etc
tar xzvf arch.tar.gz
-C /opt
tar T ficliste czvf archive.tar.gz
Exemple :
tar czf
72/270
En mode restauration, cpio lit le contenu restaurer sur son entre standard.
Cela permet de mettre en oeuvre des scripts effectuant des opration puissantes de
sauvegarde :
Sauvegarde de fichiers : option o
Schma logique : find | cpio o | compression > support
73/270
Commandes lies
En combinant une commande de recherche de fichiers et une de compression, on
arrive crire des scripts puissants
Pour lister les fichiers sauvegarder : find
Exemple :
Mettre en oeuvre une sauvegarde rseau incrmentale :
ssh user@serveur find . -mtime -1 \| cpio -oca \| gzip | cpio -icbdBmu
Cette commande cre sur le serveur distant une archive CPIO compresse qui va tre rplique
!
standard).
Les options utilises ici sont o (output) pour crer l'archive, et i (input) pour
restaurer localement.
74/270
Option
La commande cpio dispose de son propre format (format portable SVR4 grce l'option c ),
#
mais on peut lui demander de travailler dans le format de tar, par exemple.
L'option H permet de spcifier un format.
$
75/270
La commande rsync
Prsentation
La commande rsync permet de copier distance comme rcp, et est intelligente
(elle ne transfert que le delta entre la source et la cible).
Elle peut aussi :
Compresser le trafic
%
&
'
Options utiles
Actions
Option
Mode archive
(prserve toute information lie l'inode)
-a
-z
-e ssh
-u
76/270
d'Actilis, stocks sur le serveur de fichiers d'Actilis, que moorea sait joindre par le nom
actilis.net via Internet, mais exclusivement en ssh.
Cot actilis.net , le serveur accepte les connexions ssh provenant de l'adresse ADSL de
0
77/270
La Sauvegarde Par dd
La commande dd sert copier des blocs physiques d'un support en les
convertissant vers un autre support.
Proprits
Copie tous les blocs, mme ceux inutiliss
1
Mono volume
3
Options
if=fichier, si pas prcis, alors cest stdin
5
9
@
78/270
Quelques utilisations de dd
Exemples :
Sauvegarde du MBR
A
dd if=/dev/hda
Autre exemple :
Sauvegarde de la partition Windows (hda1) dans /home, en cas d'attaque de virus ou de
B
Note : cette faon de faire des sauvegardes est oprationnelle mais est moins
performante qu'un logiciel comme partimage .
79/270
La sauvegarde incrmentale
La sauvegarde incrmentale : dump
u : mmorise les paramtres dans /etc/dumpdates
D
Exemples
dump 0f /dev/tape : sauvegarde totale sur bande (fin de semaine)
G
H
I
La restauration : restore
t :visualise le contenu dune sauvegarde dump
Ces commandes ne sont pas installes par dfaut sur la plupart des distributions.
80/270
Les Bandes
Format dune bande
Les fichiers (enregistrements) sont stocks les uns la suite des autres
P
La commande mt
Permet de se positionner sur la bande
T
Le mineur < 128 est rserv pour les priphrique avec rembobinage
Le mineur > 128 correspond aux priphriques sans rembobinage
b
c
/dev/st0
/dev/tape
81/270
TP - Les sauvegardes
Exercice 1
Faire, grce tar, une archive compresse par gzip de lensemble des rpertoires dont le nom
d
commence par user suivi dune lettre se trouvant dans /home. Nommer le fichier darchive
users-az.tar.gz et le stocker dans /tmp.
Attention, cette archive devra pouvoir tre utilise pour recrer larborescence dans un autre
e
Exercice 2
Mme exercice que le prcdent, mais par cpio et en prenant en compte les rpertoires des
f
utilisateurs user suivi dun numrique. Nous souhaitons aussi que larchive soit compresse
par gzip. Cette archive devra tre stocke dans /tmp et tre nomme user-n.cpio.gz.
Exercice 3
Restaurer, dans /testfs, le contenu de larchive users-az.tar.gz.
g
Exercice 4
Tlcharger le partimage.tar.gz sur le serveur de linstructeur
i
p
q
82/270
TP avec instructions
Exercice 1
Faire, grce tar, une archive compresse par gzip de lensemble des rpertoires dont le nom
r
commence par user suivi dune lettre se trouvant dans /home. Nommer le fichier darchive
users-az.tar.gz et le stocker dans /tmp.
cd /home;
tar
czvf
/tmp/users-az.tar.gz
user[a-z]
Exercice 2
Mme exercice que le prcdent, mais par cpio et en prenant en compte les rpertoires des
s
utilisateurs user suivi dun numrique. Nous souhaitons aussi que larchive soit compresse
par gzip. Cette archive devra tre stocke dans /tmp et tre nomme user-n.cpio.gz.
cd /home; find
user[0-9] | cpio
-ova | gzip
>
/tmp/users-n.cpio.gz
Exercice 3
Restaurer, dans /testfs, le contenu de larchive users-az.tar.gz.
t
cd
/testfs ; tar
xzvf
users-az.tar.gz
cd /testfs; zcat
/tmp/users-n.cpio.gz | cpio
-iv
83/270
Exercice 4
Tlcharger le partimage-0.6.2 .tar.bz2 sur le serveur de linstructeur
v
Sauvegarder grce partimage , le rpertoire /testfs de votre voisin dans votre /backup
x
adduser partimag
passwd partimag
mkdir /backup
chown partimag /backup
mkdir /usr/local/etc/partimaged
echo partimag >> /usr/local/etc/partimaged/partimagedusers
chown partimag:partimag >> /usr/local/etc/partimaged/partimagedusers
chmod 600
/usr/local/etc/partimaged/partimagedusers
84/270
Les disques
Thmes du module
Les disques physiques
y
Les partitions
Commandes (20)
fdisk, cfdisk
mkraid, raidstart, raidstop
pvcreate, pvdisplay, vgcreate, vgdisplay,
vgchange, vgremove, vgextend, vgreduce,
lvcreate, lvremove, lvextend, e2fsadm
mkswap, swapon, swapoff
Objectifs
A lissue de ce chapitre, le participant pourra:
85/270
Linterface SCSI
Disques, Bandes, lecteurs cdrom
86/270
2.4)
Les partitions
IDE : 63 partitions par disque
g
Nommage
IDE : /dev/hd?n
SCSI : /dev/sd?n
i
j
87/270
Le partitionnement
4 partitions physiques (primaires) par disque sur PC
Partition tendue (une des 4 primaires)
k
s
t
88/270
u
v
89/270
Disques RAID
Gestion logicielle (doit tre active dans le noyau)
y
RAID Logiciel :
Les devices RAID sont priphriques de type bloc (comme les partitions de disques), de nom
|
/dev/md*
Configur par le fichier /etc/raidtab, le support du RAID est simple implmenter et maintenir
La configuration est faisable par webmin, y compris distance
}
~
La rparation sur incident (migration vers de nouveaux disques) est elle aussi aise,
et se fait, comme pour une carte RAID, en arrire plan, nempchant pas (ou peu) la
continuit de service.
90/270
raiddev /dev/md0
raid-level
nr-raid-disks
chunk-size
device
raid-disk
device
raid-disk
1
2
8
/dev/hdb1
0
/dev/hdc1
1
Les partitions hdb1 et hdc1 doivent tre de type LINUX RAID (0xfd).
Il faut auparavant les crer grce fdisk.
3 - Utilisation
On utilise un priphrique RAID comme une partition disque normale.
Exemple :
mkfs.ext3
91/270
dmarrage).
Ces scripts excutent la commande raidstart pour dmarrer le RAID, et raidstop pour larrter.
Cela reconstruit en tche de fond la copie des donnes et la progression est visualisable grce
Exemple :
cat /proc/mdstat
92/270
On dcoupe de manire logique ces Volumes Groups, ce qui donne naissance des Logical
Volumes.
Un Logical Volume sutilise comme une partition classique dun disque, mais peut tre tendu
dynamiquement.
Dfinitions
Ces quelques termes font partie du langage utilis dans LVM
Volume Group (VG) : macro unit, cest un regroupement Volumes Physiques (partitions
physiques)
Volume Logique (LV) : quivalent dune partition logique. Peut contenir un FS, cest un block
device
Ensemble Logique (LE) : Division logique dun LV (Logical Extent), une sorte de gros bloc
Volume Physique (PV) : unit physique (un disque, une partition dun disque, ou un volume
RAID)
Ensemble Physique (PE) : Division logique dun PV (Physical Extent), identique en taille un
LE
93/270
94/270
vgremove mon_vg
vgdisplay mon_vg
95/270
vgchange a n mon_vg
pvdisplay /dev/hdd1
Si OK, alors
96/270
Cre un LV de 1500 Mo, et cre aussi le fichier spcial /dev/mon_vg/lv1 (de type block)
umount /dev/mon_vg/lv1
Le supprimer :
lvremove /dev/mon_vg/lv1
97/270
LVM : Maintenance
Pour tendre un Logical Volume :
lvextend L10G /dev/mon_vg/lv1
Extension 10 Go
Ou alors :
lvextend L +4G /dev/mon_vg/lv1
Augmente la taille de 4 Go
umount /dev/mon_vg/lv1
Le redimensionner :
resize2fs /dev/mon_vg/lv1
Le remonter :
98/270
Le swap
Rle
Cest une zone dchange avec la mmoire RAM, stocke sur disque
Swap primaire : obligatoire ds linstallation
Partition ddie
Activ au dmarrage par le noyau
Avant le noyau 2.1 : limit 127 Mo (version 0)
Swap secondaire
Localisation au choix
Sur partition ddie
Dans un fichier dune partition non ddie : moins performant, mais peut rendre un grand service
99/270
Dans un fichier
Crer le fichier
chmod 600
Le swap primaire est toujours dans une partition ddie. Lorsque l'on souhaite ajouter
du swap, cela peut tre ralis dans une autre partition ou un fichier ddi.
100/270
Tronc commun
Crer le swap :
mkswap
/var/fic1.swap
Activer le swap :
swapon
/var/fic1.swap
Dsactivation du swap :
swapoff
/var/fic1.swap
101/270
Exercice 2
Dmarrer un Multiple Device (/dev/md0) de type RAID1 reposant sur les deux partitions
restantes
Crer un systme de fichiers sur ce priphrique.
Exercice 3
Crer un systme LVM ave 3 PVs de 500 Mo, 1000 Mo et 2000 Mo.
102/270
TP avec instructions
Exercice 1
A laide de la commande fdisk, crer 3 partitions de 500 Mo
fdisk /dev/hda
n pour crer une nouvelle partition (New)
l pour choisir une partition logique
9 un numro pour indiquer le numro de la partition
+500M pour indiquer une taille de 500 Mo
t pour choisir un type de filesystem
fd pour choisir le type RAID
103/270
Exercice 2
Dmarrer un Multiple Device (/dev/md0) de type RAID1
Crer /etc/raidtab
raiddev /dev/md0
raid-level
nr-raid-disks
chunk-size
8
device
raid-disk
device
raid-disk
1
2
/dev/hda9 # La premire partition RAID cre
0
/dev/hda10 # La deuxime partition RAID cre
1
mkraid
/dev/md0
mkfs.ext3
/dev/md0
mkdir
/dev/md0
/mnt/raid
/dev/md0
/mnt/raid
ext3
defaults
104/270
Exercice 3
Crer un systme LVM ave 3 PVs de 500 Mo, 1000 Mo et 2000 Mo.
fdisk
/dev/hda
mon_VG
mon_VG
e2fsadm
-L +500
/dev/mon_VG/lv1
105/270
Montage, dmontage
Les quotas
Commandes (21)
quota, repquota
Objectifs
Formater et utiliser des diverses partitions
106/270
107/270
108/270
109/270
Lien symbolique rapide (de taille < 64 octets) est stock dans linode et ne consomme pas de
bloc de donnes
Comptage des montages et dmontages pour excuter fsck prventif automatique.
Taille maximale dun fichier limite 2 To avec une taille de bloc de 4 Ko.
Et
ReiserFS, ext3, JFS, XFS : systmes de fichiers journaliss disponibles depuis le noyau 2.4
ReiserFS tait dj disponible en version exprimentale pour le noyau 2.2.
110/270
Affiche les informations lies lespace utilis, lespace libre, le taux de remplissage, de chaque
Options :
-i : informations lies aux inodes
-t : prcise le type de FS
Options :
-s : total uniquement
POSIXLY_CORRECT
Affichages en blocs de 512 octets si elle est dfinie
Sa valeur est libre mais 512 est "parlant"
Par dfaut, sous Linux, les commandes fonctionnent par blocs de 1Ko.
111/270
La commande badblocks peut tre utilise avant mkfs . Le but est dindiquer mkfs
Crer un FS
mkfs
Elle peut utiliser et tenir compte dun fichier rfrenant les secteurs dfectueux.
Vrifier un FS
fsck
Paramtre obligatoire :
Nom du disque concern
112/270
Pour crer un FS de type ext3 : (option -j, car ext3 = ext2 journalis).
mke2fs -j
Exemples :
migration de ext2 vers ext3
tune2fs
/dev/hdX
113/270
Commandes de rparation
Vrifier un systme de fichiers
e2fsck y
/dev/hdXn
ou
fsck.ext2 -y /dev/hdXn
mkfs.msdos
mkfs t msdos
114/270
Loption -o permet de passer des options de montage (ro, rw, remount, usrquota, grpquota,
etc..)
Dmontage : umount
Suppression du lien entre le point de montage et le FS
115/270
Exemple :
rdev /dev/hda1
Cela doit tre indiqu au noyau pour qu'il puisse trouver /sbin/init et /etc/inittab au dmarrage.
On a donc intrt ne pas crer sur des systmes de fichiers spcifiques /sbin ni /etc.
116/270
Le fichier /etc/fstab
Le fichier /etc/fstab contient la liste des FS connus par le systme
Ce fichier contient une ligne par FS
Exemple :
LABEL=/
LABEL=/data
none
none
none
none
/dev/hda3
/dev/cdrom
/dev/fd0
/
/data
/dev/pts
/proc
/dev/shm
/tmp
swap
/mnt/cdrom
/mnt/floppy
ext3
defaults
1 1
ext3
defaults,usrquota
1 2
devpts gid=5,mode=620 0 0
proc
defaults
0 0
tmpfs
defaults
0 0
tmpfs
defaults,size=256M
0 0
swap
defaults
0 0
udf,iso9660 noauto,owner,kudzu,ro 0 0
auto
noauto,owner,kudzu 0 0
117/270
umount a
118/270
Les Quotas
Dfinitions
Le noyau doit les supporter pour que le systme puisse les grer
Cette option est active sur les noyaux standards des distributions
#
0
1
119/270
8
9
120/270
repquota -a : reporting global sur tous les FS, pour tous les utilisateurs et groupes
D
Elles ne sont pas forcment altres par le temps, mais sont trs rapidement fausses lorsque les
F
121/270
fichiers quota.user et quota.group de lancien format lorsque lon disposait de systmes les
utilisant (RH 6.2, par exemple).
Les fichiers sont dsormais appels aquota.user et aquota.group.
I
Exemple :
convertquota u /home
convertquota g /home
Elle peut les prsenter avec un espace entre nombres et units mais ne les comprend que sans.
S
122/270
Exercice 2
Crer une partition de 100 Mo dans lespace libre du disque dur.
X
Crer un filesystem de type ext2 sur cette partition, pouvant contenir 100000 fichiers maximum.
`
a
b
123/270
Limites Soft
Chaque utilisateur aura la possibilit de crer 10 fichiers, pour un volume total de 2 Mo
maxi.
Chaque groupe sera limit 100 fichiers, pour un volume total de 10 Mo.
g
Limites Hard
Pendant un dlai de grce de 15 minutes, un utilisateur ou un groupe pourra dpasser ses
p
q
Etapes :
Inscription dans /etc/fstab des nouvelles options lies aux quotas pour le FS.
r
Remontage du filesystem avec les options de gestion des quota utilisateur et groupe.
s
Cration des fichiers de quota pour les utilisateurs et pour les groupes.
t
v
w
124/270
TP - avec instructions
Exercice 1
Quels sont les filesystems existant sur le ou les disques ?
x
fdisk l
/dev/hda
Tous les filesystems dans /etc/fstab sauf ceux avec loption noauto
df h ; mount; cat
/etc/mtab
Exercice 2
Crer une partition de 100 Mo dans lespace libre du disque dur.
fdisk /dev/hda
rebooter
Crer un filesystem de type ext2 sur cette partition, pouvant contenir 100000 fichiers maximum.
mke2fs
-N 100000
/dev/hdaxx
/dev/hdaxx
/testfs
ext2
defaults
125/270
X-Window
Thmes du module
Configuration de XFree86
XDM, startx
X-Window en rseau
Objectifs
Configurer XFree86, rsoudre les diffrents pannes du serveur X
126/270
Introduction
Dfinitions
X-Window est linterface graphique dUnix
XFree86 est le nom du projet de portage dX-Window sur les Unix libres
Serveur X
X-Window est un serveur ralisant laffichage des applications clientes
Les applications que lon utilise sous X sont appels des clients
127/270
XFree86 : configuration
Configurer un serveur X
Pr-requis
Il faut au pralable installer le serveur grant votre carte video
e
Configuration du serveur X
Elle est ralise par /etc/X11/XF86Config (3.3) ou XF86Config-4 (4.x)
f
Polices de caractres
h
n
o
128/270
Le Window Manager
Le Window Manager (WM)
Cest lenvironnement applicatif
p
GNOME
u
Attention : pour RedHat 8.0 et +, le script xinit , qui fait le choix, a chang.
x
Personnalisation
Chaque utilisateur peut choisir au login son environnement
{
129/270
de l'utilisateur.
Le lanceur xinit
Son rle est de lancer la session X (par xinit), avec les paramtres dtermins en
fonction de choix de lutilisateur.
Les choix sont faits dans
/etc/sysconfig/desktop pour le choix du WM par dfaut
ou dans le fichier $HOME/.xinitrc des utilisateurs sils personnalisent
130/270
X-Window en rseau
Notion de terminal X
Un terminal X est capable d'afficher des fentres et de grer clavier et souris. XFree86 est un terminal X .
Plusieurs projets existent pour faire de Linux un client lger
LTSP est le plus connu
xhost +
export DISPLAY=votre_@IP:0.0
Lancer lapplication
131/270
/usr/X11R6/bin/X -broadcast
Le serveur X s'ouvre alors sur votre machine et recherche sur le rseau un serveur applicatif
On aurait pu fixer le serveur utiliser grce l'option -query x.y.z.t au lieu de broadcast .
132/270
serveurs XDM.
L'URL : www.ltsp.org
On peut aller jusqu' crer des stations de travail sans disque, capables de booter partir du
rseau.
La solution Solstice
Ralise par Solunix, socit nantaise partenaire d'Actilis.
133/270
Et
de travail du rseau.
134/270
(dtournement cran/clavier/souris).
Rdesktop : qui vous permettra depuis votre station sous Linux de prendre la main sur
135/270
TP - Configuration de X window
Exercice 1
Vrifier votre configuration de X-Window et simplifier le fichier de configuration.
Exercice 2
Configurer votre station X pour que KDE soit lanc pour tout le monde, sauf usera, qui prfre
GNOME.
Exercice 3
Faire en sorte que votre machine soit en runlevel 5 et puisse accueillir des terminaux X, mais
Avec GNOME
Exercice 4
Avec VNC, visualiser ce que fait votre voisin en mode graphique.
Administrer distance le poste de votre voisin via un navigateur Web ayant la prise en charge de
Java
136/270
TP avec instructions
Exercice 1
Vrifier votre configuration de X-Window et la simplifier par dition du fichier de configuration.
vi
/etc/X11/XF86Config-4
Retirer les lignes de type Modeline qui ne servent pas dans votre cas.
Retirer les lignes de type Devices qui ne servent pas dans votre cas.
Exercice 2
Configurer votre station X pour que KDE soit lanc pour tout le monde, sauf usera, qui prfre
GNOME.
Mettre dans /etc/sysconfig/desktop: KDE
Crer /home/usera/.xinitrc et insrer exec gnome-session
Exercice 3
Faire en sorte que votre machine soit en runlevel 5 et puisse accueillir des terminaux X, mais
Avec KDE
137/270
Exercice 4
Avec VNC, visualiser ce que fait votre voisin en mode graphique.
Administrer distance le poste de votre voisin via un navigateur Web.
IP_du_voisin:1
138/270
Lautomatisation de
tches
Thmes du module
Prsentation
Planification priodique
Les batches
Objectifs
Planifier et faire excuter une tche ponctuelle
Planifier des tches rcurrentes
139/270
Le dmon atd
Excute de faon diffre de commandes soumises par la commande at
utilisateurs "avec pouvoir", c'est dire dont les UID sont infrieurs 100, mais pas les autres
utilisateurs.
Tous les utilisateurs sont autoriss (cas de la Red Hat)
140/270
Nouvelle version de AT
Le nouveau planificateur at prend en charge lenvironnement en cours au moment de la
planification.
Celui-ci nest donc pas rduit.
Sortie standard
Par dfaut, elle est expdie par mail au propritaire du processus excut.
Avertissements
On peut demander at, mais pas cron, de prvenir par mail lorsque le travail a t effectu.
141/270
Crontab : Utilisation
Format dune crontab
Priodicit
CRON,
ses arguments,
les redirections de l'entre et de la sortie standard ou erreur
Exemple complet :
#Min
0
Heure
9-18
#CMD
/home/usera/cmd.sh <fic_entre >output 2>err
La commande crontab
Editer sa crontab : crontab e
Rpertoires de stockage
Les "crontabs" sont stockes dans /var/spool/cron (ou /var/spool/cron/crontabs pour certaines
142/270
Dmarche
Les planifications sont faites dans /etc/crontab
Par dfaut, le procd met en jeu 4 rpertoires :
cron.hourly, cron.daily, cron.weekly, cron.monthly
Tout ce quils contiennent sera excut (rle de run-parts)
La commande run-parts
Excute tout fichier prsent du rpertoire pass en paramtre
Son algorithme simplifi serait si l'on voulait refaire manuellement le procd :
Il suffirait alors dans la crontab de "root", d'appeler l'heure dite quelque chose
comme :
/usr/local/bin/run-parts3lignes USER /etc/cron.daily
143/270
La commande atrm
Supprimer un job de la file dattente
Exemple :
[root@tetiaroa root]# at 1800
warning: commands will be executed using (in order) a) $SHELL b) login shell
c) /bin/sh
at> echo "Il est 18h00" | mail -s "Rappel" fmicaux@actilis.net
at> <EOT>
job 1 at 2003-12-04 18:00
CTRL-D
[root@tetiaroa root]# atq
1
2003-12-04 18:00 a root
144/270
TP Planification de processus
Exercice 1
Planifier pour quelle sexcute 17h30 ce jour, une tche consistant rechercher tous les fichier
Exercice 2
Planifier, pour quelle soit excut par lutilisateur usera tous les soirs 20h00 sauf le samedi
et le dimanche, une recherche avec suppression de tous les fichiers *.bak quil possde.
Exercice 3
R-crire le procd de la crontab systme " la main", pour faire la mme chose, mais en mieux
:-)
Vider la crontab systme, crire le script /usr/local/bin/mon-run-parts
Planifier dans la crontab de root les actions suivantes :
A 0 de chaque heure, excuter le contenu du rpertoire /etc//cron.heure
145/270
TP avec instructions
Exercice 1
Planifier pour quelle sexcute 17h30 ce jour, une tche consistant rechercher tous les fichier
find /
-name *.old
> /tmp/oldies.txt
2> /dev/null
at f script.sh 17:30
Exercice 2
Planifier, pour quelle soit excut par lutilisateur usera tous les soirs 20h00 sauf le samedi
et le dimanche, une recherche avec suppression de tous les fichiers *.bak quil possde.
Prparer un script menage.sh qui fait le mnage des fichiers .bak.
find
-user usera
0 20 * * 1-5
/home/usera/menage.sh
146/270
Exercice 3
R-crire le procd de la crontab systme " la main", pour faire la mme chose, mais en mieux
:-)
Ecrire le script /usr/local/bin/mon-run-parts
Planifier dans la crontab de root les actions suivantes :
A 0 de chaque heure, excuter le contenu du rpertoire /etc//cron.heure
mon_run_parts
mon_run_parts
mon_run_parts
mon_run_parts
mon_run_parts
root
root
root
root
root
/etc/cron.heure
/etc/cron.soir
/etc/cron.hebdo
/etc/cron.mensuel
/etc/cron.nouvel-an
147/270
Larrt et le dmarrage
Thmes du module
Le dmarrage dun PC
Les scripts rc
Les sessions
Larrt du systme
Objectifs
Changer le niveau dexcution par dfaut
148/270
Le Dmarrage Dun PC
Lorganisation des disques dun PC
Pour faire cohabiter plusieurs systmes, deux solutions :
Plusieurs disques
Partitionnement d'un disque
Ces deux techniques ncessitent un moyen de dmarrer sur l'un ou l'autre des
systmes installs.
Le boot sector des disques dur
Sur chaque disque le premier secteur (appel boot sector ) est spcifique. Sa
structure est la suivante :
446 premiers octets : MBR
Soit un total de 512 octets, cela reste un secteur de disque dur :-)
Le dmarrage d'un PC
Le BIOS charge et excute le programme damorage du MBR
Pris sur le boot-sector du disque Maitre de l'interface primaire
Si il ny a pas de programme damorage sur le MBR, alors le BIOS excute celui du premier
149/270
Ce code est forcment stock sous la forme d'un fichier visible par MS/DOS
OS Loader (Solaris)
Sait booter nimporte quel systme dexploitation, passe la main aux chargeurs des boot-blocks
de partition.
Dautres chargeurs existent, quils soient commerciaux ou open source, ils ont la
mme finalit.
150/270
nouveaux paramtres
GRUB
Gnial pour son cot paramtrage dynamique lors du boot
#
Intressant car il vite la r-installation du MBR lors des modifications d'options ou de noyau
$
(
)
cela)
151/270
Le rle du chargeur
Il a pour but d'initialiser le noyau en lui passant quelques options :
Il dtermine s'il faut pr-charger un ramdisk initial
0
5
6
Le noyau doit pouvoir trouver la partition sur laquelle se trouve le rpertoire /sbin,
qui repose donc forcment sur / .
152/270
153/270
Le Processus init
Principe
Gre des niveaux de fonctionnement de la machine : les runlevel
Le fichier /etc/inittab lui indique ce qu'il faut lancer (commandes pour chaque niveau)
8
La commande "init runlevel" (ou "telinit runlevel") active ces commandes (par changement de
@
"runlevel"
A un instant T, la machine est dans un tat que l'on appelle runlevel. Il s'agit d'un niveau de
B
154/270
Les runlevels
Sur RedHat, les runlevels sont dfinis comme ci-dessous.
0 : arrt,
D
1 : single user,
E
3 : 2 + RPC
G
4 : un ventuel 3 personnalis,
H
5 : 3 + XDM,
I
6 : 0 + reboot
P
Leur signification peut varier d'un systme l'autre, mais globalement, elle ressemble
fortement celle de RedHat. Les variations se touvent surtout pour les niveaux 2 5.
Dautres existent
7 , 8 , et 9 : libres
Q
a , b , c : libres aussi
R
155/270
Le fichier /etc/inittab
Il est compos de lignes de 4 champs spars par le caractre :
L'identifiant de ligne
U
W
X
0
1
2
3
4
5
6
156/270
Y
`
Swap
b
Hostname
c
Vrification de / et /proc
d
Montage des FS
e
h
i
157/270
Le mode wait dans lequel init lancera cette commande lui indique d'attendre sa fin avant de
q
Le script rc
Grce au script rc , il y a appel des scripts de dmarrage
Celui-ci peut tre schmatis de la manire suivante
Dans le script ci-dessous : X est le runlevel cible.
r
s
158/270
/etc/rc3.d/K20nfs
/etc/rc3.d/K74ntpd
Scripts de dmarrage
u
L'ordre d'excution est forcment celui de l'toile (*) et est donc dfini par affectation
de numros d'ordre chacun des scripts de dmarrage.
Ces fichiers ne sont que des liens symboliques vers les scripts du rpertoire
/etc/init.d.
159/270
RedHat fournit des outils qui en tiennent compte pour crer les liens symboliques
automatiquement.
160/270
chkconfig
--add
service
chkconfig
--level XYZ
service
on
chkconfig
chkconfig
--list
chkconfig
--del
service
161/270
Exemple :
ntsysv
--level 345
La commande service
Permet de piloter un service (Arrt/Dmarrage) sans saisir le chemin complet d'accs son script.
Exemple :
service httpd restart
Si cette commande n'est pas prsente (propre RedHat/Mandrake), on peut l'crire ce cette
manire :
function service () {
if [ -x /etc/init.d/$1 ]; then
/etc/init.d/$1 $2
else
echo Le service $1 n\'est pas un excutable.
fi
}
162/270
163/270
Le service rlogind
Lanc ds quun client arrive sur le port 513 (par dfaut) si les rgles de scurit lautorisent
d
164/270
La commande login
Vrification des rgles dauthentification, dont (voir PAM) :
Validit du mot de passe fourni
Rgle implmente par la librairie pam_unix.so.
En ssh
Le shell est directement lanc aprs vrification des cls ou du mot de passe si les
cls ne sont pas existantes.
165/270
Exemple
shutdown h now
shutdown i 0 g 0 y
#(BSD)
#(AT&T)
Sur la plupart des noyaux, le shutdown est termin par un arret lectrique.
Dans le cas contraire (pour Debian notamment)
Editer /etc/lilo.conf et regnrer la MBR par la commande lilo
q
append=apm=on apm=power-off
ou
Editer /etc/modules.conf si le module apm est un module du noyau
r
apm power_off=1
166/270
Les applications sont arrtes proprement (TERM puis KILL si pas de rponse)
t
Les sessions des utilisateurs sont stoppes (car les processus sont arrts)
u
On peut aussi utiliser directement les commandes halt et reboot, qui sont de toute faon appeles
z
167/270
Le multi-boot
Pouvoir dmarrer un systme parmi plusieurs installs.
On souhaite se donner les moyens de lancer LILO depuis Windows.
}
Avec NTLOADER
NT crase LILO si on linstalle aprs Linux
~
mcopy fichier-image a:
168/270
LILO
Structure de la configuration
Configur par un fichier texte : /etc/lilo.conf
Exemple
# Options globales
boot=/dev/hda
lba32
keytable=/boot/fr-latin1.klt
prompt
timeout=300
default=Linux
# Section Linux
image=/boot/vmlinuz-2.4.10
label=Linux
read-only
root=/dev/hda1
# Section NT
other=/dev/hda2
label=NT
169/270
GRUB
Publicit
GRUB est un chargeur plus dynamique que LILO
Il permet notamment de modifier les options passes en ligne de commande au noyau sans avoir
le regnrer.
Installation
En premier lieu, on installe son chargeur minimal
grub-install /dev/hda
Configuration
On utilisera le fichier /boot/grub/menu.lst ou /etc/grub.conf (si le symlink est cr)
# Options globales
boot=/dev/hda
default=1
timeout=10
splashimage=(hd0,6)/boot/grub/splash.xpm.gz
# Section Linux
title Red Hat Linux (2.4.18-14)
root (hd0,6)
kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/
initrd /boot/initrd-2.4.18-14.img
# Section NT
title Windows 2000 Pro
root (hd0,0)
makeactive
chainloader +1
170/270
Commande
RedHat/Mandrake:
mkbootdisk $(uname r)
Debian :
mkboot
Personnalisation de la disquette
La disquette boote le systme normalement, (partition root du disque dur).
On peut choisir de booter en mode maintenance, mais pour cela, il faut modifier son
/etc/lilo.conf, etc)
171/270
TP Larrt Et Le Dmarrage
Exercice 1
Lobjet de ce TP est de prparer une configuration LILO qui dmarre
en mode Frame Buffer
Exercice 2
Le mme exercice avec GRUB
Exercice 3
Faire en sorte que les consoles virtuelles des terminaux 3 6 ne soient pas dmarres en runlevel
4 et 5.
Exercice 4
Dans le gestionnaire ntsysv de dmarrage de services, faire en sorte que le service crond
et le service atd ne soient pas dmarrs dans le runlevel 4, mais le soient dans le runlevel 3 et
5.
Tenter de refaire lopration en utilisant loutil chkconfig au lieu de ntsysv .
Execice 5
Ecrire un script de service qui dmarre le RAID chaque dmarrage.
172/270
TP avec instructions
Exercice 1
Lobjet de ce TP est de prparer une configuration LILO complte
prompt
timeout=50
default=linux
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
message=/boot/message
lba32
image=/boot/vmlinuz-2.4.18-3
label=linux_FB
initrd=/boot/initrd-2.4.18-3.img
read-only
root=/dev/hda5
image=/boot/vmlinuz-2.4.18-3
label=linux
initrd=/boot/initrd-2.4.18-3.img
read-only
root=/dev/hda5
vga=788
image=/boot/vmlinuz-2.4.18-3
append=single
password=orsys10p
label=linux-single
read-only
root=/dev/hda5
other=/dev/hda2
label=WinNT
other=/dev/fd0
label=Floppy
unsafe
173/270
Exercice 2
Le mme exercice avec GRUB
boot=/dev/hda
default=1
timeout=10
splashimage=(hd0,6)/boot/grub/splash.xpm.gz
title Red Hat Linux (2.4.18-14)
root (hd0,6)
kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/
initrd /boot/initrd-2.4.18-14.img
title Red Hat Linux en mode single
root (hd0,6)
password mon_mot_de_passe
lock
kernel /boot/vmlinuz-2.4.18-14 ro single root=LABEL=/
title Red Hat Linux (2.4.18-14) avec FB
root (hd0,6)
kernel /boot/vmlinuz-2.4.18-14 ro vga=788 root=LABEL=/
initrd /boot/initrd-2.4.18-14.img
title Floppy
root (fd0)
chainloader +1
174/270
Exercice 3
Faire en sorte que les consoles virtuelles des terminaux 3 6 ne soient pas dmarres en runlevel
4 et 5.
Dans /etc/inittab, dans le second champ, pour les lignes dID de 1 6,
retirer 4 et 5
Exercice 4
Dans le gestionnaire ntsysv de dmarrage de services, faire en sorte que le service crond
et le service atd ne soient pas dmarrs dans le runlevel 4, mais le soient dans le runlevel 3 et
5.
ntsysv level 35 : activer atd
ntsysv level 4 : dsactiver atd
Execice 5
Ecrire un script de service qui dmarre le RAID chaque dmarrage.
Sinspirer de /etc/rc.d/init.d/webmin
Crer les liens adquats dans /etc/rc3.d/ et /etc/rc5.d
175/270
Les priphriques
Thmes du module
Introduction
Les fichiers spciaux
Les modules
Objectifs
Identifier un priphrique
Charger les bons drivers pour son utilisation
176/270
Introduction
Tout est fichier
Les priphriques sont vus comme des fichiers : tout est fichier
Pour y accder
Utilisation dAPIs du noyau (il permet/contrle tout ce qui se passe)
Accs un priphrique (du point de vue programme utilisateur)
Ouverture du fichier spcial concern
Lecture / criture doctets
Fermeture du fichier spcial
Dvelopper un driver
Cest crire un ensemble de fonctions
ralisant des lectures / critures vers le fichier spcial dsignant le priphrique.
Ils font linterface entre un nom de fichier spcial et les adresses (IO) et IRQ grce auxquels on
177/270
Crer un priphrique
C'est la commande mknod qui permet de crer des fichiers spciaux.
mknod nom Mode Majeur Mineur
La commande /dev/MAKEDEV
Seule commande se trouvant dans /dev
Son rle est de crer, en phase avec les paramtres du noyau, les fichiers priphriques
Quelques remarques
Les interfaces ide possdent chacune leur majeur
Les disques hda et hdb sont respectivement le maitre et l'esclave de l'interface ide0, et possdent
donc le mme (majeur 3, mineur 0), alors que les disques hdc et hdd sont connects sur
l'interface ide1 (majeur 22, mineur de 64).
En IDE, on pourrait donc en thorie disposer de 63 partitions par disque.
Les disques SCSI (sda sdp) connects sur la premire interface SCSI possdent
tous le mme majeur (8).
On note que le second disque SCSI (sdb) possde un mineur de 16, ce qui limite 15 le nombre
178/270
Les modules
Intrt
Permet dajouter ou de retirer la demande certains pilotes du noyau sans avoir
redmarrer le systme.
Chargement dun module
Par /etc/rc.d/*rc* au dmarrage
La commande modprobe
charge automatiquement les modules ncessaires (rsoud les dpendances).
connat des paramtres usuels pour les priphriques, et les probe donc automatiquement
179/270
Les modules
Liste des modules chargs
Par la commande lsmod
La liste affiche le nombre dutilisations des modules
Le fichier /etc/modules.conf
Contient les options de certains modules pour chargement automatique par kmod.
Ce fichier sappelle /etc/conf.modules dans les anciennes distributions (dans les anciennes
versions du noyau)
Cest le cas pour RH < 7, et MDK < 7.2
180/270
Exercice 2
Dfinir pour la configuration des modules le fait que lorsque lon dsigne linterface eth0, le
Exercice 3
Lister les modules chargs.
Exercice 4
Dcharger le module.
181/270
TP avec instructions
Exercice 1
Depuis la console tty1, afficher un message sur la console tty2.
echo message
echo message
>
>
/dev/tty2
/dev/pts/1
Exercice 2
Dfinir pour la configuration des modules le fait que lorsque lon dsigne linterface eth0, le
/etc/modules.conf, ajouter
Exercice 3
Lister les modules chargs.
lsmod
Exercice 4
Dcharger le module.
rmmod 3c59x
modprobe 3c59x
insmod
182/270
Le Noyau
Thmes du module
Le rle du noyau
Compiler et installer le noyau et les modules
Obtenir et modifier les informations systme
Objectifs
Eviter les cueils dune recompilation du noyau
183/270
Ils dialoguent avec le noyau via un ensemble dAPIs : POSIX les dfinit toutes pour Linux
Les priphriques
droits daccs et interface
Les fichiers
laccs aux systmes de fichiers est garanti par le noyau
La mmoire
allocation, nettoyage, paging, swapping
184/270
On peut vouloir optimiser, allger, patcher son noyau, ajouter des composants
Driver, fonctionnalit rseau, etc.
185/270
Puis compiler
make dep ; make clean ; make bzImage, lilo, etc
186/270
TESTER le redmarrage
187/270
cd /usr/src
tar xjf /tmp/linux-2.Y.Z.tar.bz2
188/270
make mrproper
1 - Configurer la compilation
Il s'agit de dcider de ce que l'on va compiler ou pas (en statique, en module)
make config
make menuconfig
make xconfig
Cette tape ncessite une bonne connaissance du matriel qui compose le serveur. Nous sommes
en train de dfinir prcisment un noyau adapt au matriel dont nous disposons, et dont nous
seul disposons.
Il n'y a donc pas un .config qui marche pour tout le monde , et il est mme abrant d'en parler.
189/270
make dep
make clean
Linux 2.0 est devenu trop gros pour, on utilise depuis une image compresse.
Historiquement compresse par gzip, elle est devenue trop grosse pour booter.
On est donc pass une image compresse par bzip2.
Les commandes
make
make zImage
make bzImage
Le rsultat
Le noyau vmlinux est dans la racine des sources
Les images compresses sont dans /usr/src/linux/arch/i386/boot et s'appellent zImage ou
bzImage
190/270
make
modules
make
modules_install
191/270
make help
Compilation
La compilation se fait dsormais en une seule passe :
192/270
Exemples
cat /proc/swaps
cat /proc/cmdline
ls -l /proc/$$
echo 1 >/proc/sys/net/ipv4/ip_forward
193/270
Les IPC
Le noyau peut ne pas le supporter (choix lors de la compilation)
General Options / System V IPC
Leurs valeurs par dfaut sont codes dans les sources du noyau, et c'est d'ailleurs la
seule manire de les modifier dans les noyaux < 2.4
Dans /usr/src/linux-x.y.z/include/kernel :
Message Queue : msg.h
194/270
195/270
Configurer le noyau
#
Redmarrer le systme
Analyser tous messages concernant les priphriques
(
196/270
TP avec instructions
Compilation du noyau
Les sources sont fournis dans un fichier nomm linux-2.y.z.tar.gz., qui doit tre tlcharg par les
)
Configuration du noyau :
1
Compilation du noyau :
2
cp /usr/src/linux/arch/i386/boot/bzImage
/boot/bzImage
make modules
make modules_install
197/270
Les performances
Thmes du module
Les ressources surveiller
Commandes de surveillance
La commande vmstat
Objectifs
A lissue de ce chapitre, le participant saura:
Collecter les informations pour surveiller son systme
198/270
B
C
199/270
Processus
ps : Informations sur les processus
H
Rseau
netstat -i : statistiques sur les ressources rseau
Q
200/270
La commande vmstat
Rle
Donner des informations moyennes depuis le dmarrage
S
Affichage format, les rsultats peuvent tre utiliss par un tableur pour gnrer des
U
Syntaxe
vmstat [-n] [delai] [nbr
Exemples
600 mesures raison de une par seconde
`
vmstat 1 600
vmstat n 10
201/270
La commande vmstat
Informations fournies
Procs : running, sleeping, swapped
b
f
g
Exemple
et de
202/270
Arrter les processus Netscape, et lancer plusieurs recherches de fichiers complexes en tche de
q
fond.
Constater quels champs de vmstat voluent
r
de fond
Constater quels champs de vmstat voluent
t
TP : Supervision du rseau
Tlcharger et installer NTOP, l outil de supervision du rseau
u
203/270
TP avec instructions
Exercice 1
Sur la console n1, lancer la commande vmstat pour 600 affichages raison de un toutes les
v
Arrter les processus Netscape, et lancer plusieurs recherches de fichiers complexes en tche de
y
fond.
Constater quels champs de vmstat voluent
IO: find
{}
de fond
Constater quels champs de vmstat voluent
204/270
205/270
Dans le cas d'Apache, si l'on fait de l'hbergement mutualis, on choisira plutt de grer un
fichier de log par site hberg (plus simple pour les statistiques).
Les services grs par xinetd peuvent eux aussi tre paramtrs pour grer leur
propre fichiers de log.
Du point de vue clart et donc scurit, il est intressant de sparer les fichiers de logs de chacun
des service.
206/270
La commande logger , disponible sur tout Unix, et utilisant fonction syslog(), permet de poster
Syslogd n'est pas forcment utilis par tous les services. Apache par exemple ne
l'utilise pas.
La commande logger
Elle permet de poster des messages au service syslogd local.
On peut prciser un couple de la forme metteur.niveau (-p E.N)
Exemples
logger -p local0.info -t ESSAI 'Message caractre informatif'
logger -p local0.debug -t LOGSTDIN
# Trace l'entre standard
207/270
Destinations possibles
Codification
Signification
/var/log/messages
-/var/log/messages
usera
write
wall
@servlog.actilis.net
ou @192.168.1.200
|/tmp/fifo
208/270
E.=N
Provenance=E, niveau = N
E1,E2.N
*.N
E.*
*.*
Tout message
*.*;E1.none;E2.none
local7
Le niveau de gravit
209/270
C'est un nom correspondant globalement un tat dans lequel se trouve le systme (ou le sousg
NOTICE : Il se passe quelque chose de normal, mais qui doit tre soulign
m
n
o
210/270
r
s
211/270
Logrotate : configuration
Configuration
Le fichier de configuration utiliser est spcifi sur la ligne de commande.
/etc/logrotate.conf est sans doute un trs bon nom.
Le programme logrotate accepte d'inclure des sous-fichiers de configuration, La
directive "include" sert inclure un fichier ou un rpertoire.
Le rpertoire /etc/logrotate.d est sans doute un trs bon endroit pour ajouter des
"includes".
Il contient des fichiers dfinissant les rgles de rotation de fichiers de log groups gnralement
t
u
v
212/270
Logrotate : configuration
Quelques mots cls intressants
Dcrire les rotations
Priodicit : daily, weekly, monthly
w
Traitement d'erreurs
Avertissement en cas d'erreur : errors adresse-mail
Traitement des erreurs : missingok, nomissingok
213/270
automatiquement gravs.
Penser aux PATH et autres variables. L'environnement des scripts que l'on utilise est celui de
CRON, parce que c'est lui qui excute logrotate.
214/270
215/270
Les adresses IP
Principe
Chaque hte d'un rseau IP dispose d'une adresse. Il s'agit de l'adresse IP (de forme
a.b.c.d), qui associe un masque rseau dfinit la porte du rseau : les machines
adressables sur le rseau local.
Classes dadresses
A : Le premier octet est fixe (masque = 255.0.0.0)
Usuellement
Classe A : 1 <= a <= 126 : 126 rseaux de 16 777 214 htes
Classe C : 192 <= a <= 223 : 2 097 150 rseaux de 254 htes
l'interface
216/270
172.16.y.z 172.31.y.z
192.168.y.z
217/270
218/270
Par exemple :
alias eth0 8139too
alias eth1 ne
alias eth2 smc-ultra
Les modules doivent tests par la commande modprobe avant d'tre rfrencs dans
/etc/modules.conf.
219/270
220/270
221/270
Linterface est alors reconfigure. Si elle tait arrte, alors elle est dmarre dans la
foule.
222/270
dfaut (subnetting) ou un masque plus ouvert (supernetting), doutrepasser les masques par
dfauts attenants aux classes de rseau.
Pour cela, il faut le prciser sur la ligne de commande ifconfig.
255.255.255.248
223/270
/etc/sysconfig/network
Configuration gnrale de la machine (Nom, Routage, Gateway, etc)
/etc/sysconfig/network-scripts/ifcfg-INTERFACE
Un fichier par interface rseau (Adresse IP, LAN @, Broadcast @, )
/etc/sysconfig/network-scripts/ifcfg-INTERFACE:X
Un fichier par Alias d@ IP (forme identique ifcfg-IFACE)
Debian
/etc/init.d/networking
Cest le script charg de dmarrer le service rseau
/etc/network/interfaces
Le fichier de configuraton des interfaces rseau et des alias d'IP
224/270
225/270
On obtient la liste des interfaces rseaux en recherchant les fichiers ifcfg* prsent
dans ce rpertoire, puis en retirant ifcfg-lo , ifcfg-ippp* , pour ne garder que
les noms du type ifcfg-[a-z0-9] et en remplaant au moyen de la commande sed
la chaine ifcfg- par rien.
Cette variable va servir pour configurer et ventuellement dmarrer chaque interface
lors du boot de la machine.
226/270
227/270
Ce mode peut tre dynamique (DHCP ou BOOTP) ou statique (paramtres renseigns dans le
fichier ifcfg-ethX).
Plus bas dans le script, on constate, dans le mode statique, que la commande ifconfig est utilise
-z "$NETMASK" ]; then
`/bin/ipcalc --netmask ${IPADDR}`
-z "$BROADCAST" ]; then
`/bin/ipcalc --broadcast ${IPADDR} ${NETMASK}`
-z "$NETWORK" ]; then
`/bin/ipcalc --network ${IPADDR} ${NETMASK}`
Ce passage sert valoriser des variables qui ne seraient pas renseignes (NETMASK,
BROADCAST, et NETWORK) dans le fichier ifcfg-ethX, par calcul. Les seules
valeurs renseigner absolument sont donc DEVICE et IPADDR.
228/270
netmask
${NETMASK}
broadcast
${BROADCAST}
Les autres variables (ARP, MTU) sont utilises aprs expansion par le shell si elles
sont positionnes seulement.
229/270
230/270
231/270
On peut aussi sen servir pour surcharger un rseau, pour mesurer des temps daccs vers une
Exemple :
Envoi de 5 datagrammes ECHO_REQUEST
ping c 5 www.actilis.fr
232/270
Autre option : le Flood Ping, servant surcharger un rseau, est demand par loption
-f.
Il sert voir combien de paquets sont perdus et donc tester la qualit du rseau.
233/270
files nisplus
files nisplus
files nisplus
#hosts:
hosts:
Service
Mthodes
Quelque
soit le service,
mthode files se rapporte toujours au fichier du nom du service dans /etc.
la
234/270
# File : /etc/hosts
127.0.0.1
Adresse IP
Nom d'hte
Le
client
sert faire un appel un serveur DNS
Alias
DNS ,
qui
search actilis.net
nameserver 192.168.0.200
235/270
TP Le Rseau
Interface principale
Configurer linterface principale eth0 avec les adresses IP dfinies pendant le cours (en fonction
de la salle)
Il faudra penser diter le fichier /etc/modules.conf pour ajouter les ventuels paramtres lis au
Scripts de dmarrage
Prparer le script ifcfg-eth0 permettant la configuration automatique de linterface au prochain
dmarrage.
Relancer le script de dmarrage relatif la configuration de votre interface rseau.
236/270
TP Le rseau
Exercice 1
A laide de la commande ifconfig, effectuez les oprations suivantes :
Exercice 2
A laide de la commande ping , vrifier que vous pouvez joindre les machines situes votre
A laide de la commande netstat, lister les ports ouverts et leur programme associ
Exercice 3
Le fichier /etc/nsswitch.conf permet entre-autres de dfinir les mcanismes de recherche de
noms dhtes.
Faire en sorte que votre machine utilise en premier lieu le DNS, et en second lieu son fichier
hosts .
En cas dchec de recherche aprs le fichier hosts , la machine doit abandonner.
Exercice 4
Configurer la machine pour quelle puisse aller sur Internet
237/270
TP avec instructions
Exercice 1
A laide de la commande ifconfig, effectuez les oprations suivantes :
ifconfig
Exercice 2
A laide de la commande ping , vrifier que vous pouvez joindre les machines situes votre
A laide de la commande netstat, afficher les statistiques lies au trafic sur votre interface eth0.
netstat -i
A laide de la commande netstat, lister les ports ouverts et leur programme associ
netstat -plnt
netstat
-r
238/270
Exercice 3
Le fichier /etc/nsswitch.conf permet entre-autres de dfinir les mcanismes de recherche de
noms dhtes.
Faire en sorte que votre machine utilise en premier lieu le DNS, et en second lieu son fichier
hosts .
Dans /etc/nsswitch.conf, la ligne hosts doit tre :
hosts:
dns files
hosts:
Exercice 4
Configurer la machine pour quelle puisse aller sur Internet
route
nameserver 192.168.0.199
239/270
Le Firewall Netfilter
Thmes du module
Introduction au Firewall NetFilter
Objectifs
Lire un script de firewall (IPCHAINS /IPTABLES)
Mettre en uvre un firewall
240/270
Il s'appuie sur les enttes des paquets uniquement, jamais sur le contenu.
241/270
Les 3 commandes ont des syntaxes qui se ressemblent, et il existe des scripts de conversion.
Chacune des versions du firewall de Linux descend de la prcdente, et ipfwadm elle-mme est
242/270
Le principe de NetFilter
Netfilter peut tre apprhend comme un pipeline compos de 3 sous-ensembles
(input, forward, output), qui pourront tre parcourus successivement par chaque
paquet filtrer.
On appelle ces sous-ensembles des chaines , dont chacune peut tre bloquante. Une chaine
n'est qu'un ensemble de rgles reconnaissant les paquets et prenant une dcision.
Dans les noyaux 2.2, pour qu'un paquet puisse passer, il doit pouvoir traverser les 3 chaines
243/270
Hooks / Chaines
Il existe dans NetFilter les chaines standards dj prsentes dans ipchains :
input, output, forward
Dans la version 2.4 du noyau, il existe d'autres chaines (prerouting, postrouting) dont il est
244/270
245/270
246/270
ip_tables
ipt_state
ipt_udp
ipt_defrag
interfaces, adresses, protocoles, mais aussi sur les flags des paquets.
Ainsi, on peut autoriser passer des paquets s'ils sont en relation avec une connexion tablie.
247/270
248/270
Les rgles
Spcification dune adresse et dun port source (-s)
"
Les Flags
On peut prciser l'tat des connexions
Stafeful : --state INVALID, NEW, ESTABLISHED, RELATED
Ncessite de prciser -m state
5
6
249/270
Exemple de firewall
Nous imaginons que nous sommes le Firewall entre deux rseaux
192.168.0.0/24 : notre "LAN"
7
F
G
250/270
H
I
modprobe iptables
iptables P input
REJECT
iptables P forward ACCEPT
iptables P output ACCEPT
iptables
iptables
iptables
iptables
iptables
A
A
A
A
A
input
input
input
input
input
p
p
p
p
p
tcp
tcp
tcp
tcp
ICMP
s
s
s
s
s
192.168.0.199
192.168.0.199
192.168.0.201
192.168.0.0/24
192.168.0.0/24
d
d
d
d
d
0/0
0/0
0/0
0/0
0/0
--dport
--dport
--dport
--dport
80
21
25
23
j
j
j
j
j
ACCEPT
REJECT
ACCEPT
ACCEPT
ACCEPT
Activer le routage
U
echo 1 >/proc/sys/net/ipv4/ip_forward
ou
V
sysctl -w net.ipv4.ip_forward
251/270
Principe
Tous les protocoles sont routs de lintrieur vers lextrieur.
Le routeur r-crit les adresses sortantes (remplace celle du demandeur par la sienne) et
Y
affecte un numro de port sortant dynamiquement puis cre une connexion sortante.
Ainsi, lorsque la rponse arrive, il sy retrouve, par le n de port auquel la rponse est expdie,
`
252/270
Sur le routeur
Configurer le lien dialup (ppp, ADSL, cable ou autre)
c
Scuriser le serveur
On ferme les applications qui ne doivent pas tre accessibles par l'extrieur
d
h
i
253/270
echo 1 >/proc/sys/net/ipv4/ip_forward
254/270
donnes mises par le port 20 du serveur sur un port local ngoci par le client chaque
transaction. Il pose donc un problme global du point de vue firewall.
Deux solutions :
Utiliser FTP en mode passif (transferts sur le port 21), mais cela ne fonctionne pas toujours sur la
s
v
w
255/270
Fonctionnalits intressantes
LVS permet de rpartir la charge vers plusieurs serveurs.
Le DNS dsigne une machine, qui grce LVS relaye les requtes (en round-robin, par exemple),
vers N serveurs fonctionnant sur N serveurs cachs derrire le serveur LVS, la tte de cluster.
Translation de port
LVS permet de modifier le port cible
Une connexion arrivant pour le port 80 du routeur LVS peut tre achemine vers le port X de nos
serveurs "internes".
256/270
257/270
TP - Firewall
Exercice 1
Empcher tout le monde sauf votre voisin de venir en SSH chez vous
Tracer
toutes
les
tentatives
de
ping
sur
votre
machine
dans
un
fichier
/var/log/firewall.log
Rediriger le trafic HTTP vers un proxy HTTP local
Exercice 2
Ecrire un petit firewall laissant passer les trafics SSH, DNS, HTTP,POP, SMTP, HTTPS du LAN
vers lextrieur
258/270
TP avec instructions
Exercice 1
Empcher tout le monde sauf votre voisin de venir en SSH chez vous
Ou
Tracer
toutes
les
tentatives
de
ping
sur
votre
machine
dans
un
fichier
/var/log/firewall.log
iptables A INPUT p icmp j LOG
iptables -t nat A
Ou
259/270
Annexes
Thmes prsents
Gestion des services avec Xinetd
Objectifs
Configurer les services standard ncessaires l'administration distante
260/270
Il fournit une excellente scurit contre les intrusions, et limite certains risques d'attaques par
prvention efficace contre les attaques de type Deny of Services (DoS) qui bloquent une machine
f
limitations du nombre de serveurs d'un mme type qui peuvent tourner en mme temps,
limitations sur la taille des fichiers de log,
h
i
RedHat de pilotage des services de chaque runlevel utiliss par RedHat et Mandrake.
261/270
Outils de configuration
Le fichier /etc/xinetd.conf configure, le dmon xinetd (une option de la ligne de
commande permet d'en dsigner un autre).
Si la configuration de xinetd n'est pas trs complique, elle est longue et la syntaxe
diffre de celle employe par son prdcesseur Inetd.
Deux utilitaires (itox et xconv.pl) sont fournis avec xinetd et permettent de convertir
le fichier /etc/inetd.conf en fichier de configuration pour xinetd.
Bien videmment, ceci ne suffit pas dans la mesure o les rgles stipules dans les
fichiers de configuration du wrapper (tcpd) sont ignores.
itox n'volue plus, mme s'il est encore maintenu. xconv.pl offre une meilleure
solution, mme si le rsultat ncessite d'tre modifi, ne serait-ce que parce que
xinetd offre plus de possibilits qu'inetd.
Utilisation de xconv.pl
CHEMIN/xconv.pl < /etc/inetd.conf > /etc/xinetd.conf
k
l
262/270
TP : installation de Xinetd
Installer le paquetage "xinetd".
Accepter la conversion de format de "inetd" vers "xinetd" en cas de besoin.
Dsinstaller inetd s'il tait install.
263/270
Configuration de Xinetd
Le fichier de configuration commence par une section par dfaut dont les attributs
seront utiliss pour tous les services pris en charge par xinetd.
Suivent alors autant de sections que de services dsirs, chacun pouvant redfinir des
options qui lui seront spcifiques par rapport celles par dfaut.
La section des valeurs par dfaut peut par exemple tre :
defaults
{
instances
only_from
log_type
log_on_success
log_on_failure
}
=
=
=
=
=
60
127.0.0.1
SYSLOG authpriv
HOST PID
HOST RECORD
264/270
Inclusion de sous-fichier
On peut inclure dans la configuration des sous-fichiers (nomms ou contenus dans un
rpertoire nomm).
On utilise la directive Include pour un fichier ou Includedir pour un rpertoire :
include /root/essais-xinetd.conf
includedir /etc/xinetd.d
Le fichier /root/essais-xinetd.conf (pour des tests ponctuels par exemple) est intgr
dans la configuration.
Tous les fichiers contenus dans /etc/xinetd.d sont aussi intgrs par Xinetd comme
si les services qu'ils dcrivent taient intgrs directement dans le fichier de
configuration principal.
265/270
service <service_name>
{
<attribut> <oprateur> <valeur> <valeur> ...
...
}
TP : configuration de Xinetd
Mettre jour la configuration de Xinetd pour clater le fichier de configuration en plusieurs
p
parties
Le fichier "/etc/xinetd.conf" ne doit contenir que les directives par dfaut.
Chaque service doit donner lieu un sous-fichier contenu dans /etc/xinetd.d
q
r
266/270
protocol (RPC and unlisted services only) : doit tre list dans /etc/protocols.
w
rpc_version (RPC services only) : numro de la version de RPC (un nombre ou un intervalle).
x
rpc_number (unlisted RPC services only) : Numro RPC (sauf si service list dans /etc/rpc)
port (unlisted non-RPC services only) : Si prcis pour un service list dans /etc/services, alors il
y
z
Autres attributs
Il en existe une bonne trentaine documentes dans la page du manuel de xinetd.conf.
Les attributs "disable", "only_from", "instances", "access_times", "log_type",
"log_on_success", "log_on_failure", "bind", "banner", "banner_fail" sont les plus
intressants.
267/270
Les oprateurs
Les oprateurs peuvent tre :
= : assignation d'une liste de valeurs un attributs
{
no_access
log_on_success
log_on_failure
passenv
env (ne supporte pas "-=")
268/270
instances
log_type
log_on_success
log_on_failure
}
service telnet
{
flags
socket_type
wait
user
server
log_on_failure
only_from
}
=
=
=
=
10
SYSLOG authpriv
HOST PID
HOST RECORD
= REUSE
= stream
= no
= root
= /usr/sbin/in.telnetd
+= USERID
= 192.168.0.0/24
269/270
23000.
Configurer Xinetd pour que ce service rponde sur le port 23000 tout client, alors que le vrai
(/tmp/nom)
Arrter ensuite le service telnet fonctionnant sur le port 23 sans supprimer sa description
270/270