securité et administration de reseaux.pdf
TRANSCRIPT
-
Scurit et administration rseaux
Yves Caniou
Module CCIR4 de l'UCBL Master 2
2005-2006
(version du 14 fvrier 2006)
-
Prsentation du module CCIR4
Scurit dans les systmes informatiques
Contenu et objectifs du module
IScurit grce la conguration
IInstallation de machines (desktop/serveur)
IAdministration des machines
IScurit grce l'utilisation d'outils (audit)
IProtocoles scuriss
IServices scuriss et leur gestion
Motivations
IOutil informatique omniprsent
IBesoin de scurit dans les quipements
Prrequis : Systme d'exploitation et notion de rseau
valuation
IUn examen sur table (date et modalits prciser)
Yves Caniou Scurit et administration rseaux (05/06) Prsentation du module CCIR4 (2/160)
-
Organisation du module
Choix des systmes d'exploitation
IProduits Microsoft prsents par Anne-Lyse
IWin 2000
IWin NT
IGnu/Linux dans ce cours
Pourquoi ces systmes ?
IImplantations direntes d'Unix
ILes plus rpandus avec des licences d'utilisation direntes
Alternatives vis--vis de la scurit : OpenBSD ! (version 3.8 le 1 nov 2005)
Yves Caniou Scurit et administration rseaux (05/06) Prsentation du module CCIR4 (3/160)
-
Quelques rfrences pour faire ce cours 1/2
Les docs de rfrence
ILe guide de rfrence Debian, le Securing-debian-howto
http://ploug.eu.org/doc/installation-debian.pdf
http://www.debian.org/doc/manuals/securing-debian-howto/securing-debian-howto.fr.pdf
ILes HOWTO's
ILes manpages !
Les magazines : Misc, Linux Mag', Hackin9, Login
Sites d'information
Ihttp://www.developpez.com/ : index de cours et tutoriels
Ihttp://www.commentcamarche.net/
Liens complmentaires intressants
IBase d'administration pour le superutilisateur (en franais !)
http://www.loli-grub.be/contrib/tlepoint/BASE/version-internet.html
Ihttp://people.via.ecp.fr/~alexis/formation-linux/formation-linux.html
Ihttp://www.linux-france.org/prj/inetdoc/cours/
Ihttp://www.fr.linuxfromscratch.org/view/blfs-1.0-fr/
Yves Caniou Scurit et administration rseaux (05/06) Prsentation du module CCIR4 (4/160)
-
Quelques rfrences pour faire ce cours 2/2
Support de cours d'autres personnes
Iyst. d'exploitation de Martin Quinson : http://www.loria.fr/~quinson
IClient/Serveur d'Olivier Glck :
http://www710.univ-lyon1.fr/~ogluck/supports_enseig.html
URL du cours
Ihttp://graal.ens-lyon.fr/~ycaniou/teaching/0506.html
Yves Caniou Scurit et administration rseaux (05/06) Prsentation du module CCIR4 (5/160)
-
Plan du module, partie Unix :
0
Avant-Propos
Systme d'exploitation et un peu de droit
1
Installation d'une machine
Arborescence Unix ; Avant l'install et pendant l'install
2
Administration d'une machine
Ouverture d'une session locale ; Shell et scripts shell ; Gestion des packages ;
Conguration de la machine ; Conguration du rseau ; Description des services au
dmarrage.
3
Admininstration d'un parc de machines GNU/Linux
Fichiers distribus (NFS) ; Les pages jaunes (NIS) ; Serveur de noms (DNS) ;
Annuaire distribu (LDAP) ; Les proxies ; Rseaux privs (VPN) ; Systme de
contrle de version (CVS) ;
Yves Caniou Scurit et administration rseaux (05/06) Prsentation du module CCIR4 (6/160)
-
Premire partie
Avant-Propos
Qu'est ce qu'un systme d'exploitation ?
Le systme GNU/Linux
La distribution Debian et sa licence
Rappels des objectifs
Un peu de droit et quelques dnitions
-
Qu'est ce qu'un systme d'exploitation ?
Logiciel entre les applications et le matriel
IOre une interface unie aux applications
IGre (et protge) les ressources
Disques durs
Cartes graphiques
Son
Systme d'exploitation
Matriel
Firefox KDEEmacs
Yves Caniou Scurit et administration rseaux (05/06) Partie I : Avant-Propos (8/160)
-
Le systme GNU/Linux
Le noyau : linux
I1991 : Linus Torvald crit un OS Unix-like.
ILinux est accessible en libre tlchargement sur le net, GPL !
INombreux dveloppeurs, modications supervises par Linus
IDe nombreuses architectures, de nombreux drivers
Les logiciels GNU
IProjet datant de 1984, Free software Foundation
IUn ensemble complet de softs, complmentaires (emacs, gcc, bash, gnome)
Les distributions
IFaciliter l'installation, la maintenance des logiciels
IPackages : excutables, scripts, documentations, bibliothques...
IPlusieurs distributions : Mandrake, Red-Hat, Suse, Slackware
Yves Caniou Scurit et administration rseaux (05/06) Partie I : Avant-Propos (9/160)
-
La distribution Debian et sa licence
INe en 1993 : Ian Murdock
IExigence : la libert promouvoir les logiciels libres
IDe trs nombreux packages, de trs nombreuses
documentations !
IDe nombreuses architectures supportes
IGestion performante des packages (dpendance, scurit)
IMises jour faciles
IStable, testing, unstable
Licence GPL (Gnu Public License)
ICopiez et donnez des copies du systme !
IAdaptez les logiciels vos besoins (vous pouvez mme distribuer le rsultat)
IAttention : logiciels fournis sans aucune garantie
IObligation de fournir le code source
IRq : existence d'une branche non-free
Yves Caniou Scurit et administration rseaux (05/06) Partie I : Avant-Propos (10/160)
-
Nos objectifs dans ce module
IInstaller le systme GNU/Linux de la distribution Debian stable (Sarge)
Les packages vont de unstable vers testing aprs une semaine complte o
pas un bug critique de signal. Pour les stations de travail, on utilisera plutt
testing, pour les serveurs, plutt stable. Attention dans ce cas, car testing reoit
plus lentement correctifs scurit.
IAdministrer et scuriser l'installation
IAdministration de plusieurs machines en rseau
INFS, base centralise d'utilisateurs...
IScuriser le systme
IConnexions scurises et PKI
IFirewall et proxy, ltrage de mails
IUtilisation de partitions chires
Yves Caniou Scurit et administration rseaux (05/06) Partie I : Avant-Propos (11/160)
-
Premire partie
Avant-Propos
Qu'est ce qu'un systme d'exploitation ?
Le systme GNU/Linux
La distribution Debian et sa licence
Rappels des objectifs
Un peu de droit et quelques dnitions
-
Tromper les individus et Droit
IEscroquerie : dnie aux art. 313-1 313-3 du Code Pnal :
Le fait, soit par l'usage d'un faux nom, soit par l'abus d'une qualit vraie, soit par
l'emploi de manouvres frauduleuses, de tromper une personne physique et de la
convaincre remettre des fonds, des valeurs ou un bien quelconque ou fournir un
service ou consentir un acte oprant obligation ou dcharge
Jusqu' 5 ans d'emprisonnement et 375 000 d'amende
IPhishing et scam
IUsurpation d'identit : patch scurit Microsoft, mail
ILa Cnil
1
qualie l'adresse lectronique de donne caractre personnel
ISanction pratique pour usage illicite de fausse identit de 3 ans
d'emprisonnement si bande organise. En pratique, 4 mois avec sursis.
IExemple : 21 mois d'emprisonnement avec sursis + 39h travaux d'intrt
gnral en hpital ou en maison de retraite pour le concepteur de Sasser.
IFausses informations et hoaxes
2
IMentir la Cnil (loi 92-1336)
IDnonciation mensongre quant au retrait de contenus illicites
(loi LCEN, art. 6-1-4, 1 an d'emprisonnement et 15 000 d'amende)
ISocial Engineering
1
Commission nationale de l'informatique et des liberts : http://www.cnil.fr
2
http://www.hoaxbuster.com/
Yves Caniou Scurit et administration rseaux (05/06) Partie I : Avant-Propos (13/160)
-
Tromper les systmes et Droit
ISTAD : relve du Code Pnal, Chap III, Des atteintes aux systmes de
traitement automatis de donnes , art. 323-I 323-7
Iart. 323-1 condamne le fait d'accder et se maintenir frauduleusement dans
une systme. Jusqu' 3 ans de prison et 45 000 d'amende
Iart. 323-2 sanctionne le fait d'entraver ou fausser le fonctionnement d'un Stad
de 5 ans de prison et 75 000 d'amende
Iart. 323-3 condamne l'introduction, la suppression ou la modication
frauduleuse de donnes. Jusqu' 5 ans de prison et 75 000 d'amende
Iart. 323-3-1 sanctionne la dtention et la mise disposition de moyens
permettant les dlits cits dans les articles 323-1 323-3 de la mme manire
que les dlits
Iart. 323-4 323-7 sanctionnent la prparation des dlits, l'intention, et
prvoient des peines supp. comme interdiction droits civiques et fermeture des
tablissements utiliss pour commettre les dlits.
ISpam
ISpam : LCEN art. 22 subordonne l'utilisation de courriels dans les oprations de
prospection commerciale au consentement pralable des personnes concernes
ISpam-indexing pour tromper les moteurs de recherche
IDensit et choix des mots clefs
ICloaking, cration de pages spciques chaque robot
IGooglebombing, liens entre sites pour goner articiellement leur notorit
Yves Caniou Scurit et administration rseaux (05/06) Partie I : Avant-Propos (14/160)
-
Deuxime partie
Installation d'une machine
Rappel sur l'arborescence d'Unix
Avant l'installation
Le BIOS de la machine
Partitionnement du disque dur
Les tapes de l'installation
-
Organisation de l'arborescence d'Unix
Sous Linux, TOUT EST FICHIER UNIQUE ARBORESCENCEIsa racine est nomme / et l'administrateur est root
IFichiers : normaux ; rpertoires ; spciaux ; liens symboliques
bin boot dev etc home lib mnt media proc sbin tmp
bin src X11R6
usr
cache log spool www
var
/
I/bin : excutables
I/boot : noyau vmlinuz et chiers de dmarrage
I/dev : rp. de chiers spciaux (communication avec les priphriques)
I/etc : rp. de chiers de conguration et principaux scripts de paramtrage
I/home : racine des rpertoires perso (...attention...)
I/lib : bibliothques et les modules du noyau
I/mnt, /media : racine des points de montage ( et /cdrom..)
I/sbin : excutables pour l'administration du systme
I/tmp : stockage des chiers temporaires
I/usr : prog. accessibles tout utilisateur (pas que...)
I/var : par exple chiers d'impression, traces de connexions http
I/proc : pseudo-rpertoire
Yves Caniou Scurit et administration rseaux (05/06) Partie II : Installation d'une machine (16/160)
-
Le boot de la machine
Au boot, le BIOS (Basic Input/Output System) excute une squence d'instructions
IConguration CMOS : Alt-F2 ; Alt-F9 ; F1 ; Del ; Esc ; Ctrl-Alt-Esc ...
IRglage heure/date
IScurit sur le BIOS : rglage ordre de boot ; mot de passe
IInitialise horloge interne et contrleur DMA
ITeste CPU, vrie le BIOS
ITeste si ROM corrompue, teste RAM
IVrications des devices
ISouris, clavier
Ilecteurs cdrom, dvd
Idisques durs
Irseau
IUSB
IEssaye de booter sur l'un des priphriques selon ordre donn
Changement du BIOS : un excutable Attention aux pannes de courant..
Yves Caniou Scurit et administration rseaux (05/06) Partie II : Installation d'une machine (17/160)
-
Le disque dur ou hard drive
Au tout dbut tait le disque dur vierge...
Avant CHS, maintenant LBA
Un disque dur...
Ise partitionne multi-boot possible !
Ise formate
propos du partitionnement
I4 partitions primaires maximum
IMoins de primaires et une partition tendue : contient partitions logiques
Formatage d'une partition cre le systme de chiers : ext2, ext3, ReiserFs...
(liste dans /proc/filesystems)
Yves Caniou Scurit et administration rseaux (05/06) Partie II : Installation d'une machine (18/160)
-
Les tapes de l'installation
IRq : supports utiliss
3
(cdrom
, USB...) en TP, cdrom puis rseau
INiveau d'install : expert ou non, kernel 2.4 ou 2.6
IUn partitionnement en gnral
I1 partition /
I1 partition swap (taille double de RAM)
I1 partition /home ou /users (dpend si NFS)
Ichoix langue, rglage heure etc.
ISlection des sources
IAttention sur
Imots de passe en shadow (OUI)
I/home/ en lecture
IGestion protocole SSH2 (on y reviendra)
ILa machine reboote avant l'installation de l'ensemble des packages !
Une install-party est prvue en TP, avec dmontage de machine !
3
http://ploug.eu.org/doc/installation-debian.pdf
Yves Caniou Scurit et administration rseaux (05/06) Partie II : Installation d'une machine (19/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Aprs le dmarrage
Mode graphique, ici avec kdm
Mode console, ici avec welcome2l
IRq prliminaire : certaines choses de ce qui suit peuvent se faire graphiquement
Mais pas toujours de X remote access ou console sur serveurIPossibilit d'avoir plusieurs sessions X, plusieurs consoles (tty) : /etc/inittab
Ctrl-alt-F7, Ctrl-alt-F8... / alt-F1, alt-F2...IDe l'intrt d'tre un utilisateur et pas root...
bugs, erreurs manip, etc.
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (21/160)
-
Se logguer
Mode console :
IUn shell est lanc aprs authentication positive avec /bin/login en lisant le
chier /etc/passwd
I chaque shell de connexion, chier /.bash_profile ou /etc/profile lu
I /.bashrc ou /etc/bashrc lu si shell sans fonction de connexionIApparition d'un prompt...
Rq : noms dpendant du shell de l'utilisateur ! Ici, bash
Rq : /.bash_logout lu quand utilisateur se dconnecte du systme
Mode graphique :
IX excut (mcanismes dcrits plus loin)
IPas de shell de connexion !
IAuthentication russie ouverture session graphique
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (22/160)
-
Exemple de chiers .bashrc et .bash_prole
/.bash_prole# settings for french speaking users
# set LANG
export LANG=fr_FR@euro
if [ -f /.bashrc ] ; thensource /.bashrc
fi
setxkbmap -layout fr
/.bashrcif [ -f /etc/bash_completion ] ; then
. /etc/bash_completion
fi
PATH=.:..:/usr/local/bin:$PATH:/sbin:/usr/sbin
alias ls='ls --color=auto'
alias ll='ls -l'
alias l='ls -l'
# Redfinit le prompt...
PS1="\[\033[01 ;33m\]\h\[\033[00 ;39m\]:\[\033[/01 ;36m\]\w\[\033[00 ;39m\]>"
alias mplayer="mplayer -vo xv -ao sdl -fs
alias rmc="rm *"alias gv="gv scale=-2 "
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (23/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Interfaces d'un systme d'exploitation
En gnral, deux interfaces
IInterface de programmation (Application Programming Interface)
IUtilisable partir des programmes s'excutant sous le systme
ICompose d'un ensemble d'appels systmes (procdures spciales)
IInterface de l'utilisateur, ou interface de commande
IUtilisable par un usager humain, sous forme textuelle ou graphique
ICompose d'un ensemble de commandes
ITextuelles (exemple en UNIX : rm *.o)
IGraphiques (exemple : dplacer l'icone d'un chier vers la corbeille)
Exemple sous UNIX :
Premire interface
de commande
Deuxime interface
de commande
programmation
Interface de
Noyau UNIX
Shell 2 Shell 1
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (25/160)
-
Exemple d'usage des interfaces d'UNIX
IInterface de programmation
Ci-contre : programme copiant un
chier dans un autre
(read et write : appels systme)
IInterface de commande
$ cp fich1 fich2
recopie ch1 dans ch2
IDocumentation
while (nb_lus = read(fich1, buf, BUFFSIZE )) {
if ((nb_lus == -1) && (errno != EINTR)) {
break ; /* erreur */
} else if (nb_lus > 0) {
ou_ecrire = buf ;
while (nb_ecrits =
write(fich2,ou_ecrire,nb_lus)) {
if ((nb_ecrits == -1) && (errno != EINTR))
break ; /* erreur */
else if (nb_ecrits == nb_lus)
break ; /* fini */
else if (nb_ecrits > 0) {
ou_ecrire += nb_ecrits ;
nb_lus -= nb_ecrits ;
} }
if (byteswritten == -1)
break ;
} }
man 1 : documentation des commandes (par dfaut)
man 2 : documentation des appels systme
man 3 : documentation des fonctions
d'autres sections, mais plus rares. Voir man 7 man ;)
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (25/160)
-
Shells et scripts shell
IPlusieurs shells disponibles
bash, csh, tcsh, ksh, zsh, ...mais installs sur machine ? /etc/shellsI /.bashrc : mettre en place environnementIExemple de variables d'environnement : PATH, LD_PATH (taper $> env...)
IQuelques commandes systme : ls, cd, mkdir, mv, rm, echo
IQuelques autres commandes : grep, man, passwd, ps, w, groups
Exemples :
I$> echo $PWD
I$> cat /.bashrcPour changer de shell : chsh
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (26/160)
-
Scripts shell - 1/8
On se sert de commandes shell squentielles dans un chier : script
Intrts :
ISi tche non ressource-intensive pour facteur vitesse
ISi pas de calculs complexes d'arithmtique...
ISi pas d'oprations extensives sur les chiers
ISi pas besoin de structures complexes de donnes
ISinon prfrer C, C++/java ou perl, python, ruby...
Convention : script.sh (Ne pas oublier chmod +x script.sh)
Exemples :
# !/bin/bash
echo Affiche $1
# Commentaire
a=5 echo a=$a
# !/bin/bash
E_NOTROOT=67 # Non-root exit error.
ROOT_UID=0 # Only users with $UID 0 have root privileges
# Check if root
if [ "$UID" -ne "$ROOT_UID" ]
then
echo "Must be root to run this script."
exit $E_NOTROOT
fi
LOG_DIR=/var/log
# Variables are better than hard-coded values.
cd $LOG_DIR
cat /dev/null > messages
cat /dev/null > wtmp
echo "Logs cleaned up."
exit # The right and proper method of "exiting" from a script.
Syntaxe
4
4
Voir le Advanced Bash-Scripting Guide l'URL http://www.tldp.org/LDP/abs/html/
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (27/160)
-
Scripts shell - 2/8
Caractres spciaux : #, ;, , ', `, ., *, \, $, ?
# !/bin/bash
######
# Caractere spciaux
echo "The # here does not begin a comment."
echo 'The # here does not begin a comment.'
echo The # here begins a comment.
echo `seq 1 9`
echo ${PATH#*:} # Parameter substitution, not a comment
# ${var#Pattern}, ${var##Pattern}
# Retire de $var le + court/long morceau de $Pattern qui matche le dbut de $var
# Exemple
echo ${PATH#*:}
echo $PATH
echo ${PATH#*/}
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (28/160)
-
Scripts shell - 3/8
Aectation
Exemple 1
# !/bin/bash
###### # Affectation
echo -n "Values of "a" in the loop are : "
for a in 7 8 9 11
do
echo -n "$a "
done
echo
for a in 1 2 3 4 5
do
echo -e "Press keys : "
read b
c=$b$c
done
echo "Reversed pressed keys : $c"
arch=$(uname -m)
echo -e "Ran on a $arch \n\n"
Exemple 2
# !/bin/bash
for i in `ls`
do
cp $i /dir/$i
echo "$i copie "
done
# Ne pas oublier pas les ` qui forcent
# l'excution du ls
for dir in /dev /usr /users/bin /lib ; do
num=`ls $dir|wc -w`
echo "$num fichiers dans $dir "
done
for i ; do
echo $i
done
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (29/160)
-
Scripts shell - 4/8
Variables non types : strings ou entiers
# !/bin/bash
######
# Variables non types
a=2334 # Integer.
let "a += 1"
echo "a = $a " # a = 2335
echo # Integer, still.
b=${a/23/BB} # Remplace 23 par "BB"
# This transforms $b into a string.
echo "b = $b" # b = BB35
declare -i b # Declaring it an integer doesn't help.
echo "b = $b" # b = BB35
let "b += 1" # BB35 + 1 =
echo "b = $b" # b = 1
echo
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (30/160)
-
Scripts shell - 5/8
Variables spciales : $0, $1, etc. ; $*, $@
# !/bin/bash
echo "Il y a $# paramtres"
index=1
for arg in "$*" ; do
# Doesn't work properly if "$*" isn't quoted
echo "Arg #$index = $arg"
let "index+=1"
done # $* sees all arguments as single word
echo "Entire arg list seen as single word."
echo
index=1 # Reset count.
# What happens if you forget to do this ?
echo "Listing args with \"\$@\" :"for arg in "$@"
do
echo "Arg #$index = $arg"
let "index+=1"
done # $@ sees arguments as separate words.
echo "Arg list seen as separate words."
index=1 # Reset count.
echo "Listing args with $* (unquoted) :"
for arg in $*
do
echo "Arg #$index = $arg"
let "index+=1"
done # Unquoted $* sees arguments as
# separate words.
echo "Arg list seen as separate words."
exit 0
# Comment accder au 12
e
argument ?
######
# utilisation de shift,
# voir les variables internes
# echo $PWD
# echo ${GROUPS[1]}
# echo $HOME
# echo $HOSTNAME
# echo $PATH
# echo $PS1 regarder le /.bashrc
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (31/160)
-
Scripts shell - 6/8
IQuoting : quoting et escaping (\n, \t)
IExit status
ITests
IOprateurs de test sur chier : -e, -f, -s, -d
if [ -x "$filename" ] ; then cmd fi
ID'autres oprateurs de comparaison :
Isur les entiers : -eq, -ne, -gt, -ge
Isur les strings : =, == et != (literal/pattern matching), ...
ILes oprateurs de calcul
ILes boucles : for i in [list] ; do cmd done
IContrler les boucles :
Iwhile [ test ] ; do cmd done
Ibreak ; continue
IFonctions
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (32/160)
-
Scripts shell - 7/8
Exemple 2 : lister en arbre de faon rcursive ( ls -R)# !/bin/bash
if [[ $# -ge 2 || $# -eq 0 ]] ; then
echo "Input the file/directory to list"
exit
fi
list_file () # list the file given in param
{
echo -e $3"list $1"
}
list_directory () # list dir given in param
{
echo "Listing directory $2$1"
cd $2$1
for i in `ls -a` ; do
# echo ${i}
if [[ "$i" != "." && "$i" != ".." ]]
then
if [ -d $i ] ; then
list_directory $i $2$1/ "__"$3
cd $2$1
else
list_file $i $2$1 "__"$3
fi
fi
done
}
path2here=""
if [ -f $1 ] ; then
list_file $1 $path2here ""
elif [ -d $1 ] ; then
list_directory $1/ $path2here ""
else
echo "Input is neither a file or a dir"
fi
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (33/160)
-
Scripts shell - 8/8
Rqs :
I propos de lancer un script et de source
IJe n'ai pas trop insist sur certains caractres spciaux
ls [ ml]*.tex, ls *ab ?pngIJe n'ai pas parl explicitement d'expressions rgulires
http://www.easyprogs.com/index.php?callPage=./Programmation/Shell-Batchs/index.phpIJe n'ai pas parl de grep, ni de sed ou encore de awk
IVous devez au moins comprendre les shell scripts !
Doc de Bash en franais plutt pas mal :
http://pages.videotron.com/bash/doc/docbashfr.html
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (34/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
La commande dpkg
Rqs :
Idpkg permet d'installer/dsinstaller packages
INe gre pas les dpendances ! viter en temps normal
Les options :
Idpkg -i package1.deb package2.deb installation de packages
Idpkg -r [--purge] package1 dsinstallation [+ eacement chiers cong]
Idpkg-recongure package lance le script de recong de package
Idpkg -S chier recherche du package contenant chier
Idpkg -L package liste les chiers installs par package
Idpkg --get-selections/--set-selections donne/restaure status de l'ens des packages
Exemples :
Idpkg -S /bin/bash
Idpkg --get-selection > packages_installes.txt
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (36/160)
-
La commande apt-get
kzako ?
IUtilise le chier /etc/apt/sources.list
ICouche intelligente de gestion des packages
Utilisation
Iapt-get update met jour la liste des packages
Iapt-get [-s] install package [simule] installation de package
Iapt-get upgrade met jour l'ens de l'installation
Iapt-get dist-upgrade volution de stable vers testing vers unstable
Iapt-get remove [--purge] package dsinstallation [+ chiers cong] de package
Iapt-get clean vide cache
Iapt-cache search keyword chercher mot cl
Iapt-cache show package donne info sur packageRemarque : packages stocks dans /var/cache/apt/archives
Exemples :
Iapt-cache search mplayer
Iapt-cache search tux
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (37/160)
-
D'autres outils
Texte
Itasksel : pour slectionner des groupes de packages debian
Idselect : systme de menus texte
Iaptitude : cens remplacer dselect
Graphiques
Ikpackage : interface graphique aux gestionnaires de paquetages RPM, Debian,
Slackware et BSD intgre KDE
Ignome-apt, gdeb : outils Gnome
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (38/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Ajout d'utilisateurs/groupes
Groupes
INotion de groupes trs importante : droits (audio, cdrom mais aussi lp, src)
IAjout group : addgroup [--gid ID]
IEacer : delgroup
IListe dans /etc/group
Utilisateur
Iadduser ou useradd
adduser [--home REP] [--shell SHELL] [--no-create-home] [--uid ID] [--group | --ingroup GROUPE | --gid ID] utilisateur
IAprs coup : adduser user group
IEacer : deluser
I/etc/adduser.conf contient infos relatives cration compte
Rqs :
IRpertoire /etc/skel contient chiers qui seront copis par dfaut dans tout
nouveau comptes utilisateur
ILe nom de ce rpertoire est dnit dans /etc/adduser.conf
Ipasswd pour changer les mots de passe !
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (40/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Connatre le hardware de sa machine
ILes books livrs avec matriel
IPour mieux congurer, s'informer : utilisation des commandes
Ilspci [-vv] (contenue dans le package pciutils)
Idmesg
IRegarder les chiers de log dans /var/log
I/var/log/dmesg
I/var/log/syslog
Attention aux droits !
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (42/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
L'achage graphique : X window Consortium
Ksako ?
IAppel aussi 'X' ou 'X11'
IL'un des plus grand succs OpenSource
IUn standard pour les OS Unix
IProcure l'achage graphique pour de multiples architectures
Mais encore...
IIndpendant de l'OS et du hardware
IConnexion transparente via le rseau
ISupport par la plupart des fournisseurs de hardware
IPlus de 30.106 utilisateurs
Fonctionne sur le modle client/serveur (et sera vu en CCIR5 :)
Dans Debian, XFree86 et maintenant x.org...
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (44/160)
-
L'achage graphique avec X.org
Installation/Conguration
IPackages : x-window-system, x-window-system-core, xbase-clients,
xserver-xorg, x11-common...
IProgs/Cong/Logs
I/usr/X11R6/
I/etc/X11/xorg.conf
(note sur clavier, drivers (vesa, proprio), souris/touchpad et rsolutions)
(dpkg-reconfigure xserver-xorg ou dition la main)
I/var/log/Xorg.$i.log
Exemple
Ide /etc/X11/xorg.conf
Ide /var/log/Xorg.0.log
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (45/160)
-
Lancer X (mais pas trop loin)
Mode graphique : alors X est dj lanc (via xdm, gdm ou kdm)
IIl y a eu excution de /etc/X11/Xsession (script sh)
I /.xsessionI Reste plus qu' choisir le desktop/window manager vouluMode console :
I/usr/X11R6/bin/startx : front-end pour /usr/bin/X11/xinit
I /.xinitrcRq : sur l'acclaration 3D
Iavec glxinfo
IDRM dans le noyau, DRI pour les packages
Iavec les logs !
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (46/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Compiler le noyau
Pourquoi ? puisqu'il y en a un fourni dans la distribution...
INoyau plus petit, plus rapide
INcessit de drivers, ventuellement patches
ICorrections de failles
Noyau et numrotation
Ibranches stables 2.2, 2.4 et 2.6...
Imais numrotation 2.6 spciale
Ilequel choisir ?
Trouver les informations utiles
I/proc/cpuinfo
Ilspci [-vv]
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (48/160)
-
Compiler son noyau linux sur mesure - 1/2
Mthode dirente de ce que prconise debian (chacun ses gots et c'est si
simple)
Rcuprer le noyau
I partir de http://www.kernel.org et vrier sa signature
packages wget, coreutils, bzip2
ILes patches : ceux de kernel.org != ceux de la distrib
IRq : les sources se mettent gnralement dans /usr/src
Conguration
IRle du chier .config et sa rutilisation
I l'aide des infos prcdentes, on est capable de slectionner les trucs qui
vont bien :)
make xconfig ou make menuconfig
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (49/160)
-
Compiler son noyau linux sur mesure - 2/2
Compilation
Imake bzImage
Imake modules
Imake modules_install
Installation
Imv arch/i386/boot/bzImage /boot/K-NUM
Iditer /etc/lilo.conf ou /boot/grub/menu.lst et changer ce qu'il faut
- Exemple d'un /etc/lilo.conf
IDans le cas de lilo, excutez /sbin/lilo
ICONSERVEZ PLUSIEURS ENTRES !
Exemple : comment les machines de TPs du Nautibus sont gres ?
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (50/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Retour sur les priphriques
Rappel : un priphrique est adress par l'intermdiaire d'un chier
IPriphrique pseudo-chier dans /dev/
ISon systme de chier doit tre ajout l'arborescence !
On parle de montage et point de montage
Monter un priphrique : disque dur, cdrom, usb...
Numrotation des priphriques :
IPriphriques IDE (disques durs, lecteurs multimdia) : hda, hdb, hdc, hdd
IPriphriques scsi : sda, sdb... ; scd..
IRq : les n
partitions hda1, hda2 ou sdb1, etc.Fichiers
I/etc/fstab : informations statiques sur le montage des systmes de chier
ce qui peut tre mont, les options et les droitsISavoir ce qui est mont : /bin/mount
ache le contenu de /etc/mtab
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (52/160)
-
Retour sur le disque dur
Ncessite dans le noyau : IDE et/ou SCSI
Commandes
Isur partitionnement : cfdisk, fidsk
Ipour savoir les espaces disques : df et du
option -h utile
Congurer le disque dur : hdparm
ICommande dangereuse !
ISeules les options -tT permises en TP !
IPermet notamment de congurer taille zone lost+found
VLM : Volume Logical Manager
IGestion de l'espace disque
ILa taille d'une arborescence qui n'est plus dpendante des partitions !
IPlus d'infos : http://lea-linux.org/leapro/pro_sys/lvm.html
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (53/160)
-
Les priphriques USB - 1/2
Ncessite dans le noyau : USB Mass Storage
Comment monter une cl USB ?
Idmesg donne message l'introduction d'un priphrique USB
IFaire un mount grce cette info
Rq : si un port USB dj pris, alors device peut changer d'une fois sur l'autre...
embtant pour points de montage statiques df dans /etc/fstab (.. icnes desktop)FIXME : Donner un EXEMPLE concret de comment on fait !
Solution :
IUtilisation du package udev
IFichiers de congurations dans /etc/udev/
I/etc/usev/rules.d contient les rgles parser
ajout d'un chier de rgles
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (54/160)
-
Les priphriques USB - 2/2
Solution :(suite)
IDans /var/log/dmesg ou /var/log/syslog
date time host kernel : usb 1-1 : new high speed USB device using ehci_hcd and address 2
date time host kernel : scsi0 : SCSI emulation for USB Mass Storage devices
date time host kernel : usb-storage : device found at 2
date time host kernel : usb-storage : waiting for device to settle before scanning
date time host kernel : Vendor : PHILIPS Model : CDRW/DVD SCB5265 Rev : TD15
date time host kernel : Type : CD-ROM ANSI SCSI revision : 00
date time host kernel : Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 5
date time host kernel : usb-storage : device scan complete
IUtilisation informations Vendor et Model pour forcer le device
IFichier de rgles contient
BUS="scsi", SYSFSmodel="CDRW/DVD SCB5265", NAMEall_partitions="mycdrom"
IRexcution de udev cration de /dev/mycdrom1
IOn peut changer /etc/fstab !
Autre Exemple, bien plus complet
http://www.debian-administration.org/articles/126
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (54/160)
-
(D)Montage automatique : automount - 1/2
Ncessite options dans le noyau
But : monter automatiquement
Iles disques amovibles
Iles systmes de chiers partags travers le rseau
Utilisation d'autofs
IUne partie Noyau, une partie package
IUn dmon /etc/rc.d/init.dFichiers de conguration
I/etc/auto.master
misc /etc/auto.misc --timeout=60
I/etc/auto.misc
kernel -ro,soft,intr ftp.kernel.org :/pub/linux
cdrom -fstype=iso9660,ro :/dev/cdrom
floppy -fstype=vfat :/dev/fd0
I/etc/auto.net : shellscript
I/etc/auto.smb : shellscript
I/etc/default/autofs
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (55/160)
-
(D)Montage automatique : automount - 2/2
Problmes
IMonte les rpertoires la demande !
Ils dans un rp. gr par automount ne donne pas forcment d'info
cd nomDuRp... ce qui suppose qu'on connaisse le nom :)IImpossibilit d'utiliser des patterns pour accder aux chiers
ls /home/e* ne fonctionne pasIpwd donne un chemin alatoire
utilisez la commande Pwd
IAu bout d'un moment d'inutilisation, un rpertoire mont est dmont
Ipwd peut vous rpondre : .. can't read
Iemacs peut vous dire : can't write
IUne solution : cd .
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (56/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Les imprimantes - 1/2
Plusieurs utilitaires dont CUPS (Common Unix Printer System) et lpr
lpr
IUtilise le dmon /usr/sbin/lpd lanc par le script /etc/init.d/lpd
IDefault printer lp, mais variable d'environnement PRINTER
IDsignation de l'imprimante utiliser : option -Pprinter
IFichier de conguration : /etc/printcap
ILes spools : /var/spool/lpd/printerName$i
Utilisation en ligne de commande : lpr -P maPrinter bla.ps
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (58/160)
-
les imprimantes - 2/2
Fichier de conguration :/etc/printcap
De la manpage...
Name Type Default Description
af str NULL name of accounting file
lf str /dev/console error logging file name
lp str /dev/lp local printer device, or port@host for remote
mx num 1000 max file size (in BUFSIZ blocks) ; 0=unlimited
pc num 200 price per foot or page in hundredths of cents
pl num 66 page length (in lines)
pw num 132 page width (in characters)
rm str NULL machine name for remote printer
rp str lp remote printer name argument
rs bool false remote users must have a local account
sd str /var/spool/lpd spool directory
sh bool false suppress printing of burst page header
Un exemple de /etc/printcap
lp|printerName:\:lp=:rm=serveurName.fr:rp=printerName:\:sd=/var/spool/lpd/printerName:lf=/var/log/lp-errs:sh:\:mx#0:
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (59/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
L'agent de transport du Mail : MTA
Conguration d'exim4
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (61/160)
-
Un client Mail : MUA (Mail User Agent)
Il existe de nombreux clients mails !
Textes
IMutt
IPine
Graphiques
IMozilla Thunderbird
IKmail
Propose
IGestion des protocoles POP, IMAP et leur version scurise
IPossibilit d'envoi du mail direct ou par MTA
IDes ltres
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (62/160)
-
Filtrer les Spams - 1/2
propos des ltres Bayesiens
FIXME : un peu de thorie sur les ltres bayesiens
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (63/160)
-
Filtrer les Spams - 2/2
Des packages
ISpamassassin (trademark de l'Apache Software Foundation)
Ispamd et spamc
ISupporte l'apprentissage bayesien
I/etc/default/spamassassin, /etc/spamassassin
IBogolter
I
Remarque : l'usage de ces deux packages est complmentaire
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (64/160)
-
Antivirus
Grce aux packages clamav, clamsmtp, clamcour, amavisd
Fournit
Iclamscan : scanne les chiers et les rpertoires
Ifreshclam : permet de mettre jour la base de donnes
Iclamsmtp : proxy SMTP scanneur de virus
Iclamcour : ltre de courrier entrant pour scan clamav
Iamavisd : interface entre MTA et scanner de virus
Remarque : on privilgiera l'installation de ltres de Spams et Antivirus sur le
serveur mail, pour des raisons videntes de performance
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (65/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Les interfaces rseau
Ncessite des options particulires dans le noyau
Interface loopback
Ilo
IRelie la machine elle-mme
IIP associe est 127.0.0.1
INom DNS associ est localhost
Autres interfaces
Ieth0, eth1...
Ippp0, ppp1...
Iwlan0, wlan1...
Iirlan0..
Liens intressants
Ihttp://www.linux-france.org/prj/inetdoc/cours/config.interface/
Ila manpage accessible via la commande : man interfaces
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (67/160)
-
Conguration du rseau
Conguration
IFilaire : /sbin/ifconfig
INcessite package : net-tools
IExemple :
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255
IWireless : /usr/sbin/iwconfig
INcessite package : wireless-tools
IExemple :
iwconfig eth1 essid ENS mode managed key open [1] 24CAB
I/sbin/route [add] IPpasserelle gw netmask 255.255.252.0
IPlus facile
/usr/sbin/dhclient si protocole dhcp (cf CCIC2)
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (68/160)
-
Les chiers de conguration
I/etc/hosts : correspondances statiques de noms d'htes
I/etc/networking/interfaces
Exemple 1 : dynamique avec dhcp
auto eth0
iface eth0 inet dhcp
Exemple 2 : allocation statique
auto eth0
iface eth0 inet static
address 192.168.0.12
netmask 255.255.255.0
gateway 192.168.0.1
I/etc/resolv.conf
search labo.fr
nameserver IP premier serveur DNS
nameserver IP deuxime serveur DNS
I/etc/host.conf
order hosts,bind
multi on
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (68/160)
-
Fichier de conguration sur un exemple - 1/2
Exemple tir du net
5
: quelles sont les congurations rseau faire pour le rewall ?
Le rewall est connect au rseau externe par son interface eth0 dont l'adresse IP
est 192.168.0.9, le masque est 255.255.255.0 et dont la route par dfaut est
192.168.0.1. L'interface interne eth1 a pour IP 10.0.0.1 avec un masque
255.255.255.0. Un autre rseau interne, 10.0.23.0/24 est situ derrire un routeur
interne dont l'IP dans le rseau 10.0.0.0/24 est 10.0.0.254.
Firewall
Rseau10.0.0.0/24
Routeur
10.0
.0.2
54
eth0
Rseau
192.168.0.0/24
eth110.0.0.1
Rseau10.0.23.0/24
192.168.0.9
5
http://guillaume.rince.free.fr/spip/article.php?id_article=62
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (69/160)
-
Fichier de conguration sur un exemple - 1/2
Exemple tir du net
5
: quelles sont les congurations rseau faire pour le rewall ?
Le rewall est connect au rseau externe par son interface eth0 dont l'adresse IP
est 192.168.0.9, le masque est 255.255.255.0 et dont la route par dfaut est
192.168.0.1. L'interface interne eth1 a pour IP 10.0.0.1 avec un masque
255.255.255.0. Un autre rseau interne, 10.0.23.0/24 est situ derrire un routeur
interne dont l'IP dans le rseau 10.0.0.0/24 est 10.0.0.254.
Firewall
Rseau10.0.0.0/24
Routeur
10.0
.0.2
54
eth0
Rseau
192.168.0.0/24
eth110.0.0.1
Rseau10.0.23.0/24
192.168.0.9
5
http://guillaume.rince.free.fr/spip/article.php?id_article=62
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (69/160)
-
Fichier de conguration sur un exemple - 2/2
/etc/networking/interfaces
# The loopback interface
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.0.9
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1
# The first network card
auto eth1
iface eth1 inet static
address 10.0.23.1
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255
# Routes statiques
up route add -net 10.0.23.0 netmask 255.255.255.0 gw 10.0.0.254
down route del -net 10.0.23.0 netmask 255.255.255.0 gw 10.0.0.254
Note : Pour que le routage entre les interfaces eth0 et eth1 devienne eectif, il faut modier le
chier /etc/sysctl.conf en y ajoutant le paramtre : net/ipv4/ip_forward=1
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (69/160)
-
Tester le rseau - 1/2
Validation de bon fonctionnement sur un rseau IP
IAdresse IP de l'interface de boucle locale : lo,
IAdresse IP de l'interface du poste de travail : eth0 ou ppp0,
IAdresse IP du destinataire de la passerelle par dfaut,
IAdresse IP extrieure au rseau local.
Outils
I/bin/ping
IValidation inter-processus : ping 127.0.0.1
IFonctionnement interface seule : ping 192.168.0.2
ICommunication vers le routeur : ping 192.168.0.1
IFonctionnement vers l'extrieur : ping 216.239.59.104
- Attention : pas forcment de rponse au ping
- Question : comment la communication se droule ici ?
ITest DNS : ping google.fr
Si chec, regarder /etc/resolv.conf
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (70/160)
-
Tester le rseau - 2/2
Outils - suite
I/sbin/route :
IConnatre l'tat de la table de routage de l'hte
ICongurer de nouvelles routes
IN'a rien voir avec le routage dynamique d'un routeur
ne sert qu' poser des routes statiques entre interfaces.Table de routage IP du noyau
Destination Passerelle Genmask Indic Metric Ref Use Iface
140.x.y.0 * 255.255.255.0 U 0 0 0 eth0
default 140.x.y.1 0.0.0.0 UG 0 0 0 eth0
I/usr/bin/traceroute
IListe les routeurs traverss pour atteindre un hte
IDonne des informations sur la route suivie
$> traceroute google.fr
traceroute : Warning : google.fr has multiple addresses ; using 216.239.57.104
traceroute to google.fr (216.239.57.104), 30 hops max, 40 byte packets
3 193.55.215.26 (193.55.215.26) 1.431 ms 1.543 ms 1.320 ms
4 lyon-g3-1-14.cssi.renater.fr (193.51.184.130) 1.329 ms 1.304 ms 1.532 ms
11 google-eu-customers-7.GW.opentransit.net (193.251.249.18) 168.032 ms 167.817 ms 171.875 ms
12 66.249.94.10 (66.249.94.10) 165.740 ms 168.448 ms 66.249.94.8 (66.249.94.8) 165.783 ms
13 216.239.47.194 (216.239.47.194) 197.687 ms 216.239.49.170 (216.239.49.170) 166.131 ms 165.953 ms
14 216.239.49.2 (216.239.49.2) 168.564 ms 216.239.49.93 (216.239.49.93) 170.017 ms 168.397 ms
15 * *
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (70/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Les services au dmarrage
Description de /sbin/init et de /etc/inittab
Description des services lancs dans /etc/init.d
Liens symboliques dans /etc/rc$i.d/ o $i
IDefault runlevel. The runlevels used by RHS are :
I0 - halt (Do NOT set initdefault to this)
I1 - Single user mode
I2 - Multiuser, without NFS
I3 - Full multiuser mode
I4 - unused
I5 - X11
I6 - reboot (Do NOT set initdefault to this)
Exemple : propos de S20welcome2l, S23ntp-server, S99kdm
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (72/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
Programmer l'excution de tches rcurrentes - 1/2
Grce aux dmons cron et anacron
Prsentation de cron
ICharg de lancer d'autres programmes de manire priodique et automatique
ISe rveille toutes les minutes, inspecte les tables, recharge si modies
I/etc/crontab, /etc/cron.d/
I/etc/cron.hourly/, /etc/cron.daily/, /etc/cron.weekly/,
/etc/cron.monthly/
IChaque utilisateur peut dnir sa crontab : crontab -e
dnit ainsi les progs lancer priodiquement
Pour quoi faire ?
I propos de /usr/bin/locate et /usr/bin/updatedb
IPour des sauvegardes !
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (74/160)
-
Programmer l'excution de tches rcurrentes - 2/2
Exemple : rveil tous les matins 7h29 en jouant un ogg
> crontab -e
29 7 * * * ogg123 ~/Muzix/song.ogg 1>/dev/null 2>&1
Explications
Iles minutes
Iles heures
Ile jour du mois
Ile mois
Ile jour de la semaine (Lundi=1, Mardi=2, etc.)
Rq : possibilit de dnir des intervalles, etc.
I* : a chaque unit de temps
I2-5 : les units de temps (2,3,4,5)
I*/3 : toutes les 3 units de temps (0,3,6,...)
I5,8 : les units de temps 5 et 8
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (74/160)
-
Troisime partie
Administration d'une machine GNU/Linux
Se connecter
Shell et scripts shell
Installer/congurer des packages sur Debian
Conguration de la machine
Ajout d'utilisateurs/groupes
Connatre le hardware
Que l'achage graphique soit !
Compiler son noyau
Retour sur les priphriques
Gestion des imprimantes
Le mail
Congurer le rseau
Description des services au dmarrage
Les services au dmarrage
Jobs synchrones/asynchrones
Conclusions
-
1er
bilan
Globalement, on sait comment installer/administrer une machine...
ILe dmarrage de la machine et les initscripts
ILes mcanismes relatifs la connexion (console et graphique)
IDes notions sur les shells et sur les scripts shell
IComment grer les utilisateurs, quelques priphriques...
IConguration rseau
ITches priodiques
ISuperviser via les logs du systme
Rien de concret encore sur la scurit !
Yves Caniou Scurit et administration rseaux (05/06)
Partie III :
Administration d'une machine GNU/Linux (76/160)
-
Exemple de rsultat de la commande lspci
0000:00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM
Controller (rev 03)
0000:00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics
Controller (rev 03)
0000:00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller
(rev 03)
0000:00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev
03)
0000:00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev
03)
0000:00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev
03)
0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3)
0000:00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97
Audio Controller (rev 03)
0000:00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03)
0000:00:1f.1 IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev
03)
0000:00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)
0000:01:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5751 Gigabit Ethernet PCI Express
(rev 01)
0000:02:01.0 CardBus bridge: Texas Instruments PCI6515 Cardbus Controller
0000:02:01.5 Communication controller: Texas Instruments PCI6515 SmartCard Controller
0000:02:03.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)
retour
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
De nouveaux problmes ?
Quelles sont les dirences importantes avec ce qu'on a vu ?
On veut
IQue les donnes soient accessibles depuis chaque machine
NFS (Network File System)IQue seules les personnes autorises puissent se connecter
NIS (Network Information Service)IQu'on puisse contacter une machine du parc par son nom
DNS (Domain Name Server)IDisposer d'un annuaire scuris consultable par tous
LDAP (Lightweight Directory Access Protocol)IQu'une machine se connecte automatiquement au rseau
Utilisation du protocole dhcpI... et seulement si elle est autorise le faire
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (79/160)
-
Un air de dj vu
En CCIR5, vous avez vu en particulier
ILes mcanismes du portmapper
ILe NFS
ILe DNS
Sur ces notions, un bref rappel
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (80/160)
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
Accder aux chiers distants
NFS
Objectifs
IAvoir un systme de chiers distants
IAccs transparent ses donnes pour l'utilisateur
Tout se passe comme en local (ls, mv, etc.) !
Pourquoi faire ?
IPouvoir accder ses donnes de plusieurs endroits
IAdministration
Protocoles existants
INFS : Network File System
ISMB : Server Message Block
IOpenAFS, Coda, InterMezzo
D'autres infos : http://www.linux-france.org/prj/inetdoc/cours/admin.reseau.nfs/
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (82/160)
-
Conguration ct server
Dans /etc/exportfs
ILes partitions exporter
IPar exemple
/etc/exportfs
/home 192.168.0.0/255.255.255.0 (rw,sync,all_squash,anonuid=1232,anongid=1322)
IQue fait la commande exportf -rv ?
Dans /etc/hosts.deny et /etc/hosts.allow
IDcrivent les services autoriss/interdits et pour quelles machines
IExemple
/etc/hosts.deny
ALL: ALL
/etc/hosts.allow
portmap mountd nfsd rsynd: 192.168. 10. 132.28.4.
sshd: 192.168. 10. 132.28.4. 132.28.18.
Iman hosts_access pour la syntaxe du langage de contrle d'accs
Lancer le script : /etc/init.d/nfs-kernel-server start
Rq : ce script n'existe pas sur toutes les distributions : sur debian, que fait-il ?
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (83/160)
-
Conguration ct client
Dans /etc/fstab
IContient les infos statiques sur les partitions montables
IExemple
/etc/fstab
/dev/hda6 none swap sw 0 0
/dev/hda5 / ext3 defaults,errors=remount-ro 0 1
192.168.0.1:/home /users nfs defaults 0 0
Crer les rpertoires qui seront monts
Tester l'accs au serveur et les partitions exportes
Irpcinfo -u 192.168.0.1 nfs
Ishowmount -e 192.168.0.1
Lancer le script : /etc/init.d/nfs-common start
Rq : ce script n'existe pas sur toutes les distributions : sur debian, que fait-il ?
Il faut encore tester les droits d'accs et les droits en lecture/criture !Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (84/160)
-
NFS et la scurit - 1/2
propos d'identiant
ILes accs ont lieu avec les uid et gid de l'utilisateur sur la machine cliente
Rq : sauf si l'option all_squash est prcise
Pas forcment la mme ID que sur le serveur !IProblme pour root...
Par dfaut, root devient nobody Possibilit de prciser l'option no_root_squash
Solutions
IDonner le mme identiant sur les machines clientes que sur serveur
Impossible ou trop lourd !INIS qui sera vu plus loin
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (85/160)
-
NFS et la scurit - 2/2
Ne pas croire forcment tout ce qu'il y a dans un cours ! :)
Pourquoi ?
Nouvelle version de NFS, donc nouvelles fonctionnalits
NFSv4
IDepuis peu de temps mais dj utilise
IPour le partage via Internet ?
ITechno de cache agressive
IRegroupement des requtes rseau (Compound request)
IScurisation ngocie et chirement des donnes : Kerberos 5, Certicats
(SPKM), Clefs publiques/prives (LIPKEY)
ICapacit pour les clients de maintenir des sessions ou de les rcuprer malgr
crash serveur ou panne du rseau
ISupport d'attributs chier nomms par le user
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (86/160)
-
Coda
Une alternative NFS : Coda version 6.0.12 le 21 sept. 2005
Ivolution d'AFS
IDate de 1987
ISystme de chier distribu
donc plusieurs serveurs rpliqusIUtilise un systme de cache
ISupporte les dconnexions volontaires ou non !
IPanne serveurs
IPanne rseau
Seule les donnes des serveurs manquants Rintgre les modications lors de la reconnexion
IScurit
IAuthentication des utilisateurs
IACL (Access Control List) permettent une gestion plus ne que les droits UNIX
Dans le noyau Linux !
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (87/160)
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
Gestion des utilisateurs distants
Network Information Server : NIS
IIntroduit par Sun en 1985 (Yellow Pages, yp l'origine)
IPas un standard mais largement rpandu
IBase de donnes distribues pour le partage d'infos systme sur le rseau
comme les login, passwords, rpertoires de connexion et infos sur les groupes
cd, /etc/passwd, /etc/hosts, /etc/groups, etc.
Pourquoi faire ?
IRduire le temps d'admin. d'un parc de machine !
ISimplier la gestion des comptes, mots de passes, etc.
IExemple : la cration d'un utilisateur sur le serveur NIS permet chaque
machine du parc d'avoir accs ses infos login
Rq : le serveur NIS n'est pas ncessairement le serveur NFS !
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (89/160)
-
Architecture de NIS
Dcoupage en domaines
ISelon un modle Client/Serveur au dessus des SUN-RPC
IO chaque domaine comprend
IUn serveur matre qui gre les maps (ou cartes)
(des informations contenue dans la base de donnes)
I[0-9]* serveurs esclaves jouant le rle de serveurs secondaires
(des rplicats consultables pour diminuer la charge)
IDes clients NIS qui consultent les serveurs NIS (matre ou secondaires)
RQ :
ILes esclaves diusent les maps sans pouvoir les modier
Sinon problme de cohrenceISeul le serveur matre peut modier une map !
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (90/160)
-
Schma de fonctionnement
GRO
UP
HO
STS
PASSW
D
GRO
UP
maitreServeur NIS
secondaireServeur NIS
PASSW
D
Mise jour via RPC
uid=1000, gid=1212, /users/toto
Serveur NFS
/home
ls ~
Station 1 Station 2 Station 3
Client NIS/NFS Client NIS/NFS Client NIS/NFS
poneyClub.oggdecemberists.ogg
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (91/160)
-
Fonctionnement
IMaps stockes sur le serveur dans /var/yp/nomDeDomaine
RQ : Un rpertoire /var/yp doit exister sur le client !
IQuand le chier source d'une map est modie (donc sur le serveur)
IRegnrer la map correspondante : make -C /var/yp
IPropoger les changements aux serveurs esclaves grce la commande yppush
/etc/hosts
/etc/passwd
make
cd /var/yp
passwd.byuid
passwd.byname
hosts.byaddr
hosts.byname
aux serveursDiffusion
esclaves
Chaque map stocke (cl,valeur)
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (92/160)
-
NIS ct client - 1/2
Conguration du client NIS - en direct
IUtilise les programmes clients : ypbind, ypwhich, ypcat, yppoll, ypmatch
IBinding pour interroger le serveur NIS
IRenseigner le nom de domaine avec domainname ou dans /etc/defaultdomain
IDsigner explicitement le serveur, pas de broadcast (scurit !)
Iypbind doit toujours tourner : recherche rgulirement le serveur NIS
Iypbind -broadcast : non ! Pas scure...
Iypset nomServeurNIS ; ypbind
Iypwhich permet d'acher le nom du serveur NIS
RQ :
Iun client NIS peut voir le contenu d'une map grce ypcat
IS'assurer que /sbin/portmap/ est lanc et que /var/yp/ existe
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (93/160)
-
NIS ct client - 2/2
Conguration du client NIS - via les chiers de conf
IFichier /etc/yp.conf
/etc/yp.conf
# plusieurs entre de ce genre sont possibles
domain grid5000 server 192.168.69.2
IAjouter en n de chaque chier qu'il faut consulter les maps associes
[email protected]#> tail -1 /etc/passwd
+::::::
[email protected]#> tail -1 /etc/group
+::::
IMettre l'option compat dans /etc/nsswitch.conf
RQ :
IS'assurer que /sbin/portmap/ est lanc et que /var/yp/ existe
I/etc/init.d/nis start
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (94/160)
-
NIS ct serveur - 1/2
Un serveur matre NIS fait tourner
Iypserv pour rpondre aux requtes clientes
Iypbind s'il est lui-mme client NIS
Iypxfrd pour rpondre aux requtes de mj des maps par les esclaves
Irpc.yppasswdd pour assurer les demandes de changement de password
Installation et excution
Iapt-get install nis qui lance les services NIS
on les arrte puisque rien n'est congur encore...IRelancer le portmapper
IRenseigner la variable NISSERVER dans /etc/default/nis
Iypinit -m sur le serveur matre pour initialiser NIS
Iypinit -s masterServer pour les serveurs esclaves
I/etc/init.d/nis start pour lancer NIS
RQ : Un serveur NIS esclave fait tourner
Iypserv pour rpondre aux requtes clientes
Iypbind s'il est lui-mme client NIS
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (95/160)
-
NIS ct serveur - 2/2
propos des netgroups
ISystme NIS permet de dnir groupes de machines ou d'utilisateurs
Permet d'autoriser/interdire accs une ressourceIDni dans /etc/netgroup qui constitue une map
IGroupe dni par liste de triplets (machine,user,nisDomain)
Exemple d'utilisation des netgroups
[email protected]#> cat /etc/netgroup
mes_mach (192.168.69.1grid5000) (192.168.69.2grid5000)
net_admins (,ogluck,) (,root,)
mes_users (,toto,) (,titi,)
[email protected]#> cat /etc/exports
# J'autorise mes_machines monter /home...
/home @mes_mash (rw,root_squash,async)
[email protected]#> tail -1 /etc/passwd
# Je rejette les lignes de la map pour les users titi et toto
-@mes_users :
# J'accepte les lignes de la map passwd pour root et pour ogluck
+@net_admins::::::
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (96/160)
-
Quelques remarques - 1/2
Pour s'assurer que tout fonctionne
IServices dmarrs
[email protected]#> rpcinfo -u 192.168.90.2 ypserv
program 100004 version 1 ready and waiting
program 100004 version 2 ready and waiting
[email protected]#> rpcinfo -u 192.168.69.2 ypbind
program 100007 version 1 ready and waiting
program 100007 version 2 ready and waiting
[email protected]#> ypwhich
192.168.90.2
IContrle de l'accs au serveur NIS
[email protected]#> cat /etc/ypserv.securenets
# This file defines the access to your NIS server
255.0.0.0 127.0.0.0
255.255.255.0 192.168.69.0
IEt faire quelques tests pour tre sr que les droits sont ok, etc.
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (97/160)
-
Quelques remarques - 2/2
Dfauts des NIS
IPas d'authentication des clients NIS :
Connatre le nom de domaine sut pour interroger le serveur Possibilit de connatre le contenu des maps !
IMaps transmises en totalits mmes si lgres modications de leur contenu
IEn ce moment, cass dans debian...
IShadow passwords sur NIS douteux voire inexistant
IUn peu vieux maintenant... LDAP
Voir le HOWTO : http://www.linux-nis.org/nis-howto/HOWTO/et la synthse NFS-NIS :
http://www.linux-france.org/prj/inetdoc/cours/admin.reseau.synthese-nfs-nis/
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (98/160)
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
S'appeler par son petit nom
Objectif : assurer la correspondance @IP nom d'hteDnition
IBase de donnes distribue sur une hirarchie de serveurs de noms
ICar Internet trop gd, trop de requtes
ITolrance aux pannes... une panne, tout le net tombe :)
IDlais de rponse
IMises jour continuelles de la base
IProtocole applicatif, modle client/serveur
Et ?
IPermet le Host aliasing
IPermet le Mail serveur aliasing : seveur mail et web ont mme pseudo avec IP
dirente
IPermet rpartition de charge : rotation d'@IP du serveur DNS
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (100/160)
-
Fonctionnement
Remarques
ISi un serveur n'a pas les donnes dans sa base, contacte un autre serveur
ITrois types de serveurs DNS
IServeurs de noms locaux en charge de la rsolution des requtes locales
IServeurs de noms racine pour propager la requte
IServeurs de noms de source autorise, contenant les corresp. ocielles
Schma
FIXME : Schma
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (101/160)
-
La suite
Sur les slides d'Olivier
Remarques : Et pour de la doc, faire un tour sur le site commercial :
http://guides.ovh.com/.
Vous y trouverez des infos complmentaires, y compris sur la conguration de
votre machine :
http://guides.ovh.net/DomaineFrProblemesZoneCheck/contenu.html
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (102/160)
-
Remarque sur la conguration
Dans named.conf, ajouter sa zone et rsolution inverse par ex.
6
zone "linux.bogus" {
notify no ;
type master ;
file "linux.bogux" ;
} ;
zone "196.168.192.in-addr.arpa" {
notify no ;
type master ;
file "db.192.168.196" ;
} ;
Avec les chiers en consquence correctement remplis, par ex.
@ IN SOA ns.linux.bogus.
hostmaster.linux.bogus. (
199802151 ; serial
8H ; refresh, seconds
2H ; retry, seconds
1W ; expire, seconds
1D ) ; minimum, seconds
;
NS ns ; Inet Address of name server
MX 10 mail.linux.bogus
MX 20 mail.friend.bogus.
;
localhost A 127.0.0.1
ns A 192.168.196.2
mail A 192.168.196.4
@ IN SOA ns.linux.bogus.
hostmaster.linux.bogus. (
199802151 ; Serial
8H ; Refresh
2H ; Retry
1W ; Expire
1D) ; Minimum TTL
NS ns.linux.bogus.
1 PTR gw.linux.bogus.
2 PTR ns.linux.bogus.
3 PTR donald.linux.bogus.
6
Voir le DNS-HOWTO : http://www.tldp.org/HOWTO/DNS-HOWTO.html
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (103/160)
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
Ranger des infos dans un annuaire distribu
Le protocole LDAP
INorme dnissant comment les infos sont changes entre client et serveur
IDnit la manire dont les donnes sont reprsentes
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (105/160)
-
Pour la suite
LDAP est considr comme non vu cette anne
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (106/160)
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
Un hublot vers Internet
Objectif : faire tampon entre le rseau local et le net
IProxy HTTP, FTP, ... proxy applicatif !
IServeur mandataire
mandat par une application pour faire la requte sur Internet sa place... exmple d'un service d'abonnement sur identit du proxy
IDonc aussi
Empcher les machines de se connecter librement sur le net Empcher un attaquant de dresser la carte du rseau interne Mais souvent remplac par routeur/rewall...Fonctionnalits
IFonction de cache : stocker temporairement
conomiser bande passante et minimiser temps de rponseIFiltrage : logs sur les requtes par user + ltres sur requtes, sites, contenus...
IAuthentication
IReverse-Proxy : accs un site interne de l'extrieur
Existants : plusieurs packages... .. Squid !
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (108/160)
-
Congurer Squid
Squid et sa conguration ne seront pas vus cette anne...
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (109/160)
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
Comme si on y tait
Mais pas cette anne...
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (111/160)
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
Brancher, c'est connect !
Dynamic Host Conguration Protocol
IProtocole client/serveur
ICongurer les postes clients de faon automatique
IIdal sur un LAN
ILe protocole derrire bcp de MHbox des providers
Fonctionnalits
IDonne une adresse IP unique un client
ILes bonnes infos concernant le rseau
IRenseigne sur le masque de sous rseau
IAdresses des serveurs primaires et secondaires DNS
IL'IP de la passerelle permettant d'accder au net
Fonctionnement
IClient (0.0.0.0) envoie DHCPDISCOVER en broadcast
IServeur retourne DHCPOFFER
IClient envoie DHCPREQUEST en broadcast contenant IDserveur_dhcp
IServeur envoie DHCPACK
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (113/160)
-
Conguration du serveur - 1/2
Le dmon
IDispose d'un intervalle d'adresses pour l'allocation dynamique
IDonne un bail reconductible au client
IPossibilit de grer des rseaux logiques (avec relais sur les routeurs grce
/etc/init.d/dhcrelay)
ILanc par le script /etc/init.d/dhcpd
diter pour indiquer quelles interfaces rseau couter via la variable INTERFACES
Remarques
IFichier de conguration /etc/dhcpd.conf
IOption allow unknown-clients mais peut n'accepter que @MAC donnes
IOption router pour spcier la passerelle par dfaut
INotion de variables globales
ILancez /etc/init.d/dhcpd restart aprs modif
Pour plus d'infos, un site vraiment bien fait :
http://christian.caleca.free.fr/dhcp/
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (114/160)
-
Conguration du serveur - 2/2
/etc/dhcpd.conf
ddns-update-style none ;
ddns-updates off ;
# toutes les addr MAC acceptes
allow unknown-clients ;
# Dure de vie du bail
max-lease-time 360000 ;
default-lease-time 360000 ;
# Infos donner aux clients
option domain-name-servers 192.168.0.1 ;
option routers 192.168.0.1 ;
subnet 192.168.0.0 netmask 255.255.255.0 {
# default gateway
option routers 192.168.0.1 ;
option subnet-mask 255.255.255.0 ;
# Seting up an ip address is better here
# option domain-name-servers ns.domain.org ;
option domain-name-servers 80.10.246.1 ;
option domain-name-servers 80.10.246.132 ;
range dynamic-bootp 192.168.0.10 192.168.0.20 ;
# default-lease-time 21600 ;
# max-lease-time 43200 ;
# we want the nameserver to appear at a fixed
# address
host corba
{
hardware ethernet 00:20:18:24:41:19 ;
fixed-address 192.168.0.21 ;
}
}
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (115/160)
-
Conguration du client
/sbin/dhclient
IIl existe plusieurs clients : pump, dhcpxd, dhcpcd ou dhclient
IFichier de conguration /etc/dhclient.conf
IDes scripts excuts automatiquement avant et aprs obtention du bail
IHistoriques des baux dans /var/lib/dhcp/dhclient.leases
IAdresse serveur conserve et recontacte lors de prochaine requte
IFichier /etc/network/interfaces (cf exemple) ;
/var/lib/dhcp/dhclient.leases
lease {
interface "eth0" ;
fixed-address 140.77.13.46 ;
option subnet-mask 255.255.255.0 ;
option routers 140.77.13.1 ;
option domain-name-servers
140.77.1.32,140.77.1.183 ;
option domain-name "cri2000.ens-lyon.fr" ;
option dhcp-lease-time 7200 ;
option dhcp-message-type 5 ;
option dhcp-server-identifier 140.77.1.183 ;
option dhcp-renewal-time 3600 ;
option dhcp-rebinding-time 6300 ;
renew 1 2006/1/16 16 :54 :16 ;
rebind 1 2006/1/16 17 :39 :16 ;
expire 1 2006/1/16 17 :54 :16 ;
}
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (116/160)
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
Un coin de paradis pour les dveloppeurs
Dveloppeurs au sens large
ICode
ILivres, articles...
Objectifs
IPermettre un travail collaboratif
IStocker les versions successives pour chaque modication
INe stocker que les dirences pour gagner de l'espace
Programmes alternatifs
IFront-ends graphiques : Cervisia
ISubversion (v 1.3.0), LibreSource
ICode : Git (linux), BitKeeper (propritaire, de BitMover)
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (118/160)
-
Fonctionnement
O
IUn machine serveur backupe
I... contenant l'archive CVS
Les commandes
ICharger un projet
IAjouter un projet
IAjouter un chier
IDans un projet, un CVROOT
De nombreuses documentations sur le Oueb !
Ihttp://www.nongnu.org/cvs/, le site de rfrence
Ihttp://www.idealx.org/doc/cvs.fr.html
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (119/160)
-
Fonctionnement
Exemple pour ajouter un projet
IAu tableau
Des sites o dposer les projets
Isourceforge.net
Isavannah
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :
Admin. d'un parc de machines GNU/Linux (120/160)
-
Quatrime partie
Admin. d'un parc de machines GNU/Linux
Prsentation Gnrale
Network File System : NFS
Network Information Server : NIS
Domain Name Server : DNS
Lightweight Directory Access Protocol : LDAP
Installer un proxy avec Squid
Virtual Private Network : VPN
Le protocole DHCP
Concurrent Version System : CVS
Conclusions
-
Conclusion
Je n'ai pas parl de
ISAMBA et de rseaux htrognes (apt-cache search + man)
IVoisinage rseau LAN
voir le service d'information LISA : help:lisa dans konqueror et l'URL :http://www.linux-france.org/prj/inetdoc/cours/admin.reseau.neigh/admin.reseau.neigh.lisa.html
Iet de plein d'autres choses encore...
Par contre, j'ai abord
ILes MTA, imap et pop, smtp et j'en oublie
Yves Caniou Scurit et administration rseaux (05/06)
Partie IV :