Administration System e
Administration System e
Administration System e
Xavier MONNIN
Bureau A308
Université Paris 13
xm@lipn.fr
http://lipn.fr/~monnin/
1 Introduction
3 Réseau
4 Intégration Réseau
6 Securité
1 Introduction
Présentation du cours
Généralités
Historique
Documentation sous UNIX
Rôles de l’administrateur système
Méthodologie d’administration
Marionnet
VirtualBox
Objectifs du cours
−→ centrée sur les systèmes UNIX (Linux – Debian) Mais des concepts généraux
Intégration dans un
Switching Hub
Ether 10/100
12345678 100
COL
! Power 10123612
25
5800
réseau informatique
Ethernet
Configuration/installation
Switch 10 d’un réseau informatique
Configuration réseau
d’une station de travail
Xavier MONNIN Administration Système 2017-2018 6 / 387
Introduction Présentation du cours
Cours :
• 6 séances de 1h30
TPs :
• 10 séances de 3h
Administration système
Complexité de l’administration
Définitions
Man
Les pages de manuel des commandes UNIX sont réparties en chapitres appelés des
sections :
• section 1 : commandes normales
• section 2 : appels systèmes
• section 3 : fonctions de programmation C
• section 4 : périphériques et pilotes de périphériques
• section 5 : format de fichiers système
• section 6 : jeux
• section 7 : divers
• section 8 : commandes de gestion du système
Autres sources
• Diplomatie, police
• Aspects légaux (chiffrement, Cnil...)
• Enquêtes judiciaires (vol, saccage, piratage informatique, articles pédophiles...)
• Relations commerciales
• Politique d’utilisation des machines
Connaissances de base
→ Expert Unix
• Environnement utilisateur
• Aide en ligne
• Système de fichiers
• Utilisation du shell
• Utilisation d’un éditeur de texte
• Commandes de base
• Programmation shell
Administrateur système
3 qualités nécessaires :
• Technicité
• Rigueur
• Bon sens
Méthodologie d’administration
Configuration/installation
d’une station de travail
Intégration dans un
Switching Hub
Ether 10/100
12345678 100
COL
! Power 10123612
25
5800
réseau informatique
Ethernet
Configuration/installation
Switch 10 d’un réseau informatique
Configuration réseau
d’une station de travail
Administration système
• Administrer un système est une lourde responsabilité
• L’ampleur de la tâche est variable selon les sites
Présentation de Marionnet
• Système d’émulation d’un réseau informatique basé sur des machines Linux
(Debian)
• Possibilité de configuration d’un réseau (switch, hub, station de travail)
• Simulation d’incidents
• Accès aux systèmes Linux pour une configuration complète
http://www.marionnet.org
Capture d’écran
Exécution de Marionnet
http://marionnet.org/download/Marionnet.ova
Terminologie
Système hôte (host) : système d’exploitation principal qui permet de faire fonctionner
VBox
Système invité (guest) : système d’exploitation installé à l’intérieur d’une VM
Machine virtuelle : ordinateur virtuel créé par VBox
VDI (Virtual Disk Image) : fichier (unique) contenant le Système invité
Présentation de VirtualBox
• https://www.virtualbox.org
• Logiciel libre (GPL)
• Système hôte :
• Architecture Intel/AMD
• Systèmes Linux, Windows, MacOS, Solaris.
• Système invité :
• La plupart des SE disponibles sur architecture Intel : Linux, Windows, DOS, Unices,
etc.
• https://www.virtualbox.org/wiki/Guest_OSes
Capture d’écran
Configuration/installation
d’une station de travail
Intégration dans un
Switching Hub
Ether 10/100
12345678 100
COL
! Power 10123612
25
5800
réseau informatique
Ethernet
Configuration/installation
Switch 10 d’un réseau informatique
Configuration réseau
d’une station de travail
Périphériques (1)
Représentation des périphériques à travers des fichiers spéciaux (Device Drivers) : blocs
ou caractères
Accès aux périphériques :
• Mode bloc : indirect, à travers les structures (partitions)
• Mode caractère (raw) : direct
Mode caractère
Périphériques (2)
Pourquoi partitionner ?
Partitionnement
• Précautions :
• Manuellement : Déterminer le bloc de départ et le bloc d’arrivée
• Éviter les recouvrements de partition (risque d’erreur très important)
• Outils :
• fdisk, cfdisk, parted
• gparted
Partition primaire
→ Système jeune
Structure du système
• Tout est fichier
• Arborescence de fichiers unique
• Les fichiers ne sont pas typés
• Montage : intégrer les partitions dans l’arborescence
Permet d’affecter tout système extérieur (disquette, cdrom, rép. réseau...) à un
répertoire créé pour cela dans l’arborescence
• 6 catégories de fichiers
• normaux
• répertoires
• périphériques
• liens
• pipes
• sockets
Xavier MONNIN Administration Système 2017-2018 49 / 387
Administration d’une station de travail Système de fichiers
(formatage haut-niveau)
(fonctionnalités supplémentaires)
Principales commandes :
• Création : mkfs, etc...
• Affichage des informations : dumpfs, fstyp...
• Vérification : fsck
• Montage/Démontage : mount/umount
• Agrandissement : fonctionnalité disponible dans l’utilitaire de repartionnement, ou
associée au système de fichiers (LVM)
• Modification des paramètres d’un système de fichiers :
tune2fs (ext2, ext3, ext4)
• / : racine de l’arborescence
• /boot : Noyau et configuration du noyau
• /dev : Périphériques
• /lost+found : Répertoire contenant les blocs et fichiers "perdus"
• /etc : Fichiers de configuration
• /lib : Librairies nécessaires au fonctionnement minimal du système (single user )
Mémoire virtuelle
(zone de swap)
• Chaque utilisateur doit être défini sur la machine pour pouvoir l’utiliser
• Création d’un compte utilisateur par un administrateur (le super-utilisateur)
• Caractéristiques du super-utilisateur :
• root
• UID=0
• tous les droits lui sont attribués
• shell privilégié avec su
Suppression :
• des fichiers utilisateurs (répertoire de connexion) et sauvegarde (sur bande, par
exemple)
• de la boîte aux lettres et sauvegarde
• des alias courrier
• des tâches d’impression et quotidienne (cron, at)
• de l’entrée dans /etc/passwd
• du username des groupes dans lesquels il apparaît
A priori, pas de modification des groupes créés lors de l’installation du système (bin,
sys, daemon...)
Procédure de démarrage
Mode single-user
Mode multi-utilisateurs
• Arrêt des systèmes UNIX à l’aide des commandes halt, shutdown ou reboot
• Passage en mode 0 ou 6 (telinit)
• Vidage des tampons et écriture sur le disque
• Démontage des systèmes de fichiers
• Terminaison des processus
ou lecture des scripts se trouvant dans /etc/rc[06].d
. /etc/init.d/functions
[ -f /sbin/syslogd ] || exit 0
[ -f /sbin/klogd ] || exit 0
# Source config
if [ -f /etc/sysconfig/syslog ] ; then
. /etc/sysconfig/syslog
else
SYSLOGD_OPTIONS="-m 0"
KLOGD_OPTIONS="-2"
fi
RETVAL=0
umask 077
Xavier MONNIN Administration Système 2017-2018 78 / 387
Administration d’une station de travail Démarrage
start() {
echo -n $"Starting system logger: "
daemon syslogd $SYSLOGD_OPTIONS
RETVAL=$?
echo
echo -n $"Starting kernel logger: "
daemon klogd $KLOGD_OPTIONS
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/syslog
return $RETVAL
}
stop() {
echo -n $"Shutting down kernel logger: "
killproc klogd
echo
echo -n $"Shutting down system logger: "
killproc syslogd
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/syslog
return $RETVAL
}
status() {
status syslogd
status klogd
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;; Xavier MONNIN Administration Système 2017-2018 81 / 387
Administration d’une station de travail Démarrage
status)
rhstatus
;;
restart|reload)
restart
;;
condrestart)
[ -f /var/lock/subsys/syslog ] && restart || :
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart}"
exit 1
esac
exit $?
at -m HEURE
$ at 11am tomorrow
warning: commands will be executed using (in order)
a) $SHELL b) login shell c) /bin/sh
at> scriptSauvegarde.sh
at> <EOT>
job 4 at 2012-01-11 11:00
Exemple :
$ crontab crontab_test
Exemple :
crontab -l
Exemple :
crontab -r
Exemple :
0 0 * * * find / -name core -print > /root/diskPicture.lst
5,20,35,50 * * * * /root/script-verif.sh
0 0 1 1 * /root/envoyerMailBonneAnnee.sh
0 19 * * 5 /root/envoyerMailBonWeekEnd.sh
Le noyau
Le noyau
Types de noyau
• Noyau statique :
• Génération du noyau avec tous les modules nécessaires à un moment donné
• Chargement intégral au démarrage
• La modification de la configuration du noyau implique un redémarrage de la machine
• Noyau dynamique :
• Noyau minimal pouvant charger des modules dynamiquement
• Pas de redémarrage nécessaire (sauf pour certaines modifications de certains
paramètres)
En pratique
• Exemple : httpd-2.0.52.tar.gz
tar xzvf httpd-2.0.52.tar.gz
(lecture du fichier INSTALL)
$ ./configure --prefix=/usr/local
$ make
$ make install
$ /usr/local/bin/apachectl start
3 0 78150744 hda
3 1 5116671 hda1
3 2 1 hda2
3 5 2040223 hda5
3 6 5116671 hda6
3 7 32941251 hda7
3 8 32933218 hda8
Contenu de /proc
Manipulations (1)
Lecture/écriture : appel de fonction ou de méthode associés aux objets implantés en
mémoire
$ ls -l /proc/cmdline
-r--r--r-- 1 root root 0 Jan 23 15:46 cmdline
$ file /proc/cmdline
cmdline: empty
$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-3.2.0-36-generic root=UUID=94e951f3-2cf2-4384-b
Manipulations (2)
Manipulations (3)
• Modification d’objets
Appel système write()
$ cat /proc/sys/kernel/threads-max
16378
$ echo 4096 > /proc/sys/kernel/threads-max
$ cat /proc/sys/kernel/threads-max
4096
Manipulations (4)
• Chargement/déchargement de modules
# ls -l /proc/sys
total 0
dr-xr-xr-x 2 root root 0 Jan 23 16:00 debug/
dr-xr-xr-x 7 root root 0 Jan 23 16:00 dev/
dr-xr-xr-x 5 root root 0 Jan 23 08:42 fs/
dr-xr-xr-x 4 root root 0 Jan 23 15:56 kernel/
dr-xr-xr-x 8 root root 0 Jan 23 16:00 net/
dr-xr-xr-x 2 root root 0 Jan 23 16:00 proc/
dr-xr-xr-x 2 root root 0 Jan 23 16:00 vm/
# lsmod |grep sunrpc
# modprobe sunrpc
# lsmod |grep sunrpc
sunrpc 122788 0
# ls -l /proc/sys
total 0
dr-xr-xr-x 2 root root 0 Jan 23 16:00 debug/
dr-xr-xr-x 7 root root 0 Jan 23 16:00 dev/
dr-xr-xr-x 5 root root 0 Jan 23 08:42 fs/
dr-xr-xr-x 4 root root 0 Jan 23 15:56 kernel/
dr-xr-xr-x 8 root root 0 Jan 23 16:00 net/
dr-xr-xr-x 2 root root 0 Jan 23 16:00 proc/
dr-xr-xr-x 2 root root 0 Jan 23 16:00 sunrpc/
dr-xr-xr-x 2 root root 0 Jan 23 16:00 vm/
Suivi de processus
# sysctl -w kernel.threads-max=4096
# sysctl kernel.threads-max
kernel.threads-max = 4096
Xavier MONNIN Administration Système 2017-2018 126 / 387
Administration d’une station de travail Logs
Contenu de /sys
3 Réseau
Rappels
Administration d’un réseau
Conception d’un réseau
Élaboration d’un réseau informatique
Conception du réseau
Configuration/installation
d’une station de travail
Intégration dans un
Switching Hub
Ethernet
Configuration/installation
Switch 10 d’un réseau informatique
Configuration réseau
d’une station de travail
Réseau : rappels
Interface Ethernet/IP
Adresse IPv4
• 4 octets (32 bits) : notation décimale pointée A.B.C.D (par ex. 194.254.167.1)
• Unique au monde :
• Configuration par logiciel
• Associée au chaque interface réseau
• Plusieurs classes : A, B, C, D, E
Attribution :
• classes A et B : le RIPE (Réseau IP Européen)
• classe C : en France le NIC
Adressage IPv4
• Classe D : multicast
• Premier octet compris entre 224 et 239
• Quatre premiers bits toujours égaux à 1110
• Classe E : réservé IANA, adresses comprises entre 240.0.0.0 et 255.255.255.255
Adresses particulières
Dans chaque classe d’adresse suivantes, il existe des plages particulières, dites
« privées »
• Classe A : 10.0.0.0 à 10.255.255.255
• Classe B : 172.16.0.0 à 172.31.255.255
• Classe C : 192.168.0.0 à 192.168.255.255
Ces adresses ne sont pas directement utilisables sur Internet (non routées/routables) et
ne peuvent donc servir que pour des réseaux locaux.
Administrer un réseau
• Concevoir (préliminaires) :
• Plan du réseau
• Mise en œuvre
• Assurer le bon fonctionnement :
• Surveillance
• Dépannage
• Offrir des services aux utilisateurs (ressources numériques, messagerie, stockage...)
• Recueillir les informations nécessaires à l’évolution du réseau
• Plan du réseau
• Topologie et architecture
• Plan d’adressage, de nommage et de routage
• Architecture des services réseaux (Messagerie, Annuaire, DNS, etc...)
• Organisation des ressources humaines
Plan du réseau
Routeur
(Passerelle)
Messagerie Serveur
(smtp et pop3/imap) de fichiers
Station
Serveur DNS
Station
Station
Routeur
Serveur Web
Passerelle
/Firewal
Serveur NIS Serveur
ou NIS+ de fichiers
Serveur DHCP
Station
Messagerie
(smtp et pop3/imap)
Station
Plan de nommage
Noms de domaine
• Facilité d’emploi
• Manipulation de noms symboliques plutôt que d’adresses sur 32 bits
• Association adresse IP / nom principal et secondaire (cf. /etc/hosts)
−→ Solution non satisfaisante avec l’explosion des réseaux
• Vers un modèle distribué : à partir de la manière de nommer les machines
• Une machine appartient à un réseau/domaine, un sous-réseau/sous-domaine : son
nom en découle
• L’adresse IP d’une machine est connue en interrogeant le DNS du réseau (chaque
administrateur gère ses machines sur son DNS)
Exemple : lipn.univ-paris13.fr
Routage
• Transmettre les informations d’un réseau (segment) à un autre
−→ Trouver un chemin (une route) vers la destination finale à travers des relais
(passerelles)
4 Intégration Réseau
Configuration de l’interface réseau
Contrôle du réseau
Incidents
Mise en place de la station
Intégration au réseau
Configuration/installation
d’une station de travail
Intégration dans un
Switching Hub
Ether 10/100
12345678 100
COL
! Power 10123612
25
5800
réseau informatique
Configuration/installation
d’un réseau informatique
Ethernet
Switch 10
Configuration réseau
d’une station de travail
• inetd et /etc/inetd.conf
Contrôle d’un ensemble de démons (rlogind, rshd, ftpd, telnetd, etc...)
/etc/inetd.conf
# Ftp and telnet are standard Internet services.
#
ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd
# Shell, login, exec, comsat and talk are BSD protocols.
#
shell stream tcp nowait root /usr/sbin/tcpd in.rshd
login stream tcp nowait root /usr/sbin/tcpd in.rlogind
• Équivalence de machines :
(mécanisme d’autorisation des r-commandes :
rlogin, rsh, rcp, rdump, rrestore)
Échec si pas d’autorisation mise en place sauf pour rlogin
Mise en place des autorisations :
• Déclaration de machines clientes dans /etc/hosts sur le serveur
• Déclaration des autorisations concernant les utilisateurs dans le fichier
/etc/hosts.equiv
nantes monnin
bourbaki monnin
painleve monnin
• Redémarrage du service :
# /etc/init.d/networking restart
# netstat -r -n
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.33.182.0 192.33.182.68 255.255.255.0 UG 40 0 0 eth0
192.33.182.0 0.0.0.0 255.255.255.0 U 40 0 0 eth0
10.10.0.0 0.0.0.0 255.255.0.0 U 40 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 40 0 0 lo
0.0.0.0 192.33.182.254 0.0.0.0 UG 40 0 0 eth0
$ ping 192.168.0.12
PING 192.168.0.12: 56 data bytes
64 bytes from lipn.up13.fr (192.168.0.12): icmp_seq=0. time=2. ms
64 bytes from lipn.up13.fr (192.168.0.12): icmp_seq=1. time=18. ms
64 bytes from lipn.up13.fr (192.168.0.12): icmp_seq=2. time=27. ms
64 bytes from lipn.up13.fr (192.168.0.12): icmp_seq=3. time=9. ms
^C
----192.168.0.12 PING Statistics----
4 packets transmitted, 4 packets received, 0% packet loss
round-trip (ms) min/avg/max = 2/14/27
• /usr/bin/netstat
Affichage des états des différents composants du réseau sur la machine locale
• Exemples :
$ netstat -i
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 0 6210183 0 0 018576108 0 0 0 BMRU
lo 16436 0 98687 0 0 0 98687 0 0 0 LRU
$ netstat -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:login *:* LISTEN
tcp 0 0 *:shell *:* LISTEN
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 *:telnet *:* LISTEN
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path
unix 3 [ ] DGRAM 103 /dev/log
unix 2 [ ACC ] STREAM LISTENING 152 /dev/printer
unix 2 [ ACC ] STREAM LISTENING 195 /dev/gpmctl
unix 2 [ ACC ] STREAM LISTENING 24775 /tmp/.X11-unix/X0
DANGEREUX !
Nécessite
• le support du mode promiscuous : accès du niveau programmation à tous les
paquets Ethernet
Certains UNIX ne proposent pas ce mode dangereux pour la sécurité (possibilité de
visualiser tous les paquets passant sur le réseau)
• le passage de l’interface en mode promiscuous
Intégration dans un
Switching Hub
Configuration/installation
Ethernet
Switch 10 d’un réseau informatique
Configuration réseau
d’une station de travail
Concepts d’annuaires
• Problème de l’administration système :
Architecture logicielle :
DHCP
Requêtes :
• DHCPDISCOVER : Localisatoin des serveurs DHCP disponibles
• DHCPOFFER : Réponse du serveur à un paquet DHCPDISCOVER – contient les
premiers paramètres
• DHCPREQUEST : Requête quelconque du client – par exemple prolongement du bail
• DHCPACK : Réponse du serveur – contient des paramètres et l’adresse IP du client
• DHCPNAK : Réponse du serveur – annonce au client de la fin de son bail ou d’une
mauvaise configuration réseau
• DHCPDECLINE : Annonce par le client au serveur que l’adresse est déjà utilisée
Requêtes :
• DHCPRELEASE : Libération de l’adresse IP par le client
• DHCPINFORM : Demande des paramètres locaux par le client – il possède déjà son
adresse IP
Exemple de messages dans /var/log/syslog
Jun 16 15:03:04 dns-dhcp dhcpd: DHCPREQUEST for 192.168.60.73 from 00:e0:81:27:29:db via eth0
Jun 16 15:03:04 dns-dhcp dhcpd: DHCPACK on 192.168.60.73 to 00:e0:81:27:29:db via eth0
Jun 16 15:03:15 dns-dhcp dhcpd: DHCPREQUEST for 192.168.60.35 from 00:04:75:d5:7e:a3 via eth0
Jun 16 15:03:15 dns-dhcp dhcpd: DHCPACK on 192.168.60.35 to 00:04:75:d5:7e:a3 via eth0
Jun 16 15:03:16 dns-dhcp dhcpd: DHCPREQUEST for 192.168.60.69 from 00:e0:81:27:1b:52 via eth0
Jun 16 15:03:16 dns-dhcp dhcpd: DHCPACK on 192.168.60.69 to 00:e0:81:27:1b:52 via eth0
Jun 16 15:03:28 dns-dhcp dhcpd: DHCPREQUEST for 192.168.60.72 from 00:e0:81:27:29:dc via eth0
Serveur DHCP
• Adresse IP Fixe
• Package dhcp3-server
• Lancement du démon dhcpd dans le script de démarrage
/etc/init.d/dhcp3-server
• Fichier de configuration : /etc/dhcp3/dhcpd.conf
• Déclaration des interfaces d’écoute :
/etc/default/dhcp3-server
• De nombreuses options, groupes...
Client DHCP
• Package dhcp3-client
• Fichier de configuration /etc/dhcp3/dhclient.conf
• Configuration de la machine en tant que client DHCP
via le fichier de configuration des interfaces réseau
/etc/network/interfaces
Assurer la correspondance entre les adresses IP et le nom des machines d’une zone
• Le serveur DNS
• possède tous les renseignements sur la zone
• peut faire autorité (serveur primaire)
• délègue l’autorité sur les zones de niveau inférieur
Hiérarchie
Informations
Stockage
Interrogation
Quelques outils d’interrogation :
• nslookup
• host
• dig
Exemple :
Non-authoritative answer:
Name: www.lipn.fr
Address: 194.254.163.36
Xavier MONNIN Administration Système 2017-2018 203 / 387
Services pour l’administration / les utilisateurs NIS
• Identification
• Authentification
• Localisation des données
Distribuer sur un réseau les informations contenues dans des fichiers de configuration
(/etc/hosts, /etc/passwd, ...)
Fonctionnement général
• Déploiement sur un réseau local
• Autour d’un machine centrale : NIS Master Server
• Clients :
• Référence aux informations présentes sur un domaine NIS
• Initialisation en broadcast
• Limitations :
• Absence de hiérarchie
• Impossibilité de communiquer entre deux domaines NIS
• Nom : quelconque, pouvant être différent (souvent) du nom du domaine
Exemple
Nom de domaine : adsys.univ-paris13.fr
Nom du domaine NIS : enseignement.galilee
Xavier MONNIN Administration Système 2017-2018 206 / 387
Services pour l’administration / les utilisateurs NIS
• Utilisateurs (passwd)
• Groupes (group)
• Résolution de nom (hosts)
• aliases, services, rpc, protocols, netgroup
• tables d’automontage
• ...
→NIS+
NIS+
• Successeur de NIS
• Résolution de certains problèmes liés à NIS :
• Sécurité (cache, niveaux d’accès)
• Structure hiérarchique permettant une administration répartie
• Administrateurs explicitement nommés (différenciés de root)
• Modification d’une entrée : uniquement diffusion de cette entrée
• Chaque domaine peut posséder plusieurs sous-domaines
→ Problème complexe
Protocole NFS
Protocole sans état (pour le serveur) : toutes les opérations sont mémorisées par le
client
• Chaque requête NFS doit être accompagnée de l’ensemble des données nécessaires
à son exécution
• Pas de mémorisation des opérations successives effectuées par le serveur
• Mémorisation de l’opération d’ouverture du fichier par le client et non le serveur
Auto-montage (1)
Auto-montage (2)
Samba (1)
• Service de partage de ressources sous UNIX pour les machines sous Windows
• Début en 1991 (Andrew Tridgell, Australie)
• Machines Unix visibles dans le voisinage réseau
• Architecture client/serveur
Samba (2)
Samba (3)
• Protocole réseau utilisé sur tout réseau prenant en charge le protocole TCP/IP
• Telnet : port TCP 23
• Commande permettant de créer une session et d’accéder à un terminal distant pour
taper des commandes
• Identifiant et mot de passe nécessaire pour se connecter, mais...
• ... protocole non sécurisé (pas de chiffrement des communications)
Plus généralement aujourd’hui :
• Application permettant à l’administrateur de jouer le rôle de client sur une machine
pour un service donné (débogage d’un service)
• Protocole réseau utilisé sur tout réseau prenant en charge le protocole TCP/IP
• SSH : port TCP 22
• Commande permettant de créer une session et d’accéder à un terminal distant pour
taper des commandes
• Protocole de communication sécurisé entre un client et un serveur
Précautions
On a accès à tous les fichiers de la machine, avec les droits de l’utilisateur connecté :
• OK : pour récupérer nos propres fichiers de n’importe quel endroit
• NOK : pour donner l’accès à quelqu’un d’autre
1 Time Protocol
2 Network Time Protocol (NTP)
3 Simple Network Time Protocol (SNTP)
Version simplifiée de NTP
Time Protocol
Fonctionnalités
Fonctionnement
6 Securité
Stockage des données
Sauvegarde des données
Sécurité informatique
Firewall
Disques
Différents bus :
• IDE/ATA : 1 à 1064 Mb/s (2 périphériques)
• SATA (ATA série) : 1 à 6 Gb/s (1 périphérique)
• SCSI : 40 à 4 Gb/s (7/15 à 128 périphériques)
• SCSI-SAS : jusqu’à 12 Gb/s
• FibreChanel (série) : 1 à 128Gb/s
• FireWire : de 100 Mb/s à 3,2 Gb/s (63 périphériques par bus – 1024 bus)
• USB : (1) 1,5/12 Mb/s, (2) 480 Mb/s, (3) 5 Gb/s
Rappel : (Réseau ethernet) 10 Mb/s, 100 Mb/s, 1 Gb/s, 10 Gb/s, 40 Gb/s, 100 Gb/s
Systèmes RAIDs
RAID 0 (1)
Stripping
RAID 0 (2)
Problème : la défaillance d’un disque entraîne l’impossibilité d’accès aux données
5 9 6 10 7 11 8 12
1 13 2 14 3 15 4 16
RAID 1
Mirroring
• Duplication des données d’un disque sur tous les autres disques du groupe RAID
• Accessibilité des données même en cas de défaillance
2 3 2 3 2 3 2 3
1 4 1 4 1 4 1 4
→ Technique onéreuse
Stripping et Mirroring
• Haute sécurité
• Performance de RAID 0
• Coût élevé
5 9 6 10 7 11 8 12
1 13 2 14 3 15 4 16
RAID 4 (1)
Stripping avec contrôle de parité sur disque dédié
• RAID 1 et RAID 0+1 : sécurité contre les pannes implique le doublement des
disques
• RAID 4 : utilisation du concept de parité
• Pour chaque groupe de x disques entrelacés, ajout d’un disque
• Disque supplémentaire : n-ième bit (bit de parité) formé à partir des n-ième bit des
x disques
• Crash d’un disque : restauration du contenu bit pour bit à partir de x − 1 autres
disques et du disque de parité
• Écriture de données : actualisation du disque de parité
• Rapidité inférieure à RAID 0 et RAID 1
Xavier MONNIN Administration Système 2017-2018 260 / 387
Securité Stockage
RAID 4 (2)
5 9 6 10 7 11 5 9
1 13 2 14 3 15 1 13
RAID 5 (1)
RAID 5 (2)
P 15 2 P 6 3 10 7 14 11
1 2 12 5 3 16 9 P 4 4 P 8
6 7 4 1
10 1 8 5
14 15 12 9
13
16
RAID logiciel
RAID matériel
• Remplacement des stockages centralisés (type Mainframe) par une répartition sur
de serveurs locaux et stations de travail
• Désormais retour à une centralisation des données :
• bus rapide
• mise en réseau de volume de données élevés
• Exigence de centralisation des données : une disponibilité élevée
1 immobilisation d’une entreprise en cas de défaillance
2 =⇒ chemin de données et stockage redondants
Mais aussi copie de données (instantanés) et réplique synchrone/asynchrone
Trois solutions :
• DAS (classique)
• NAS
• SAN (ou NAS + SAN)
DAS (1)
DAS (2)
Inconvénients :
• Peu de possibilités d’évolution
• Peu performants pour la gestion des redondances
Solutions : RAID SCSI ou Fibre Channel
NAS (1)
NAS (2)
SAN (1)
SAN (2)
SAN (3)
5 éléments de base :
• Serveurs
• Infrastructure (Fibre Channel Fabric)
• Stockage sur disques (RAID Fibre Channel, iSCSI/SCSI)
• Stockage sur bande
• Logiciel de gestion
Réseau Ethernet
Serveur Serveur
Storage Area
Network
Commutateur
FibreChannel
RAID
10
Fibre Channel Stockage sur bande
Avantages du SAN
Inconvénients du SAN
• peu de compatibilité
• solution propriétaire
• absence de norme
• peu de flexibilité et de facilité de gestion
• difficulté à avoir des SAN logiques
=⇒ en constante évolution
Utilisation du iSCSI (données SCSI transportées par Ethernet)
Sauvegarde et archivage
• Sauvegarde :
• Gestion d’index
• Protection et restauration des données utilisées couramment
• Archivage :
• Pas d’index
• Déplacement de données inutilisées sur des supports moins coûteux
Compression
Sauvegarde distante
• CD-ROM / DVD
• Disque
• Autres : plus ou moins dépassé, mais pouvant être utilisé pour la sauvegarde longue
durée (disque magnéto-optique) ou l’échange de fichiers (bande magnétique 1/2
pouce)
• tar :
• format portable
• mono-volume la plupart du temps
• simple à utiliser et à manipuler
• surtout employé au niveau utilisateur
cd /etc/
tar cvf /tmp/archive_tar_etc *
cd ..
tar cvf /tmp/archive2_tar_etc ./etc
cd /usr/restore
tar xvf /tmp/archive_tar_etc
• cpio :
• format portable
• multi-volume
• options complexes
• possibilité d’utilisation de la commande find
• conforme au standard XPG[23]
cd /etc/
ls | cpio -o > /tmp/archive_cpio_etc
cd /usr/restore
cpio -ivd < /tmp/archive_cpio_etc
• pax :
• portable archive interchange
• compatible avec tar
• présent sur la plupart des UNIX (origine OSF)
• conforme au standard XPG4 et à la norme POSIX
• dump / restore
dump / restore
• Sauvegarde multi-volume
Détection des fins de bandes
Sauvegarde sur plusieurs bandes
• Sauvegarde à travers le réseau
• Sauvegarde de partitions entières
2 étapes :
1 Structures d’inodes
Sauvegarde des blocs référant les inodes
2 Blocs de données
Accès aux périphériques en mode caractère
Accélération de la sauvegarde
Fréquence de sauvegardes
Différente suivant les systèmes de fichiers :
• Système de fichiers root :
Après configuration du système
Après chaque modification de la configuration
• Système de fichiers usr :
Après installation du système et des applications
Après ajout de nouvelles applications
• Système de fichiers contenant les données utilisateurs
Sauvegarde quotidienne
Archivage régulière (hebdomadaire)
Nécessite une réflexion sur la stratégie de sauvegarde
cd /usr
restore r
restore xh /usr
Fonctionnalité de restore
• Restauration complète
• Restauration interactive
• Restauration de fichiers à la demande
Synchronisation d’arborescence
NB : il est nécessaire de disposer des deux outils sur les deux machines
Synchronisation d’arborescence
NB : il est nécessaire de disposer des deux outils sur les deux machines
Thème large :
• Confidentialité : Accessibilité des données informatiques uniquement aux personnes
habilitées (organismes gouvernementaux, bancaires)
• Intégrité : Modification des données uniquement par les personnes habilitées
(pertes de données)
• Disponibilité : Garantie permanente de l’accès à l’outil informatique aux personnes
habilités
Niveau utilisateur
• Mais aussi de plus en plus (notamment sous Windows) : bien utiliser sa messagerie.
Messagerie
Différentes failles :
• Authentification et utilisateurs
• Faille de sécurité dans les programmes (dépassement de pile, ports ouverts)
• Incertitude concernant la sécurité sur certaines machines (ordinateurs portables) et
certaines parties du réseau (service Web et FTP, Wifi)
Solutions :
• Établir de règles de sécurité (voir précédemment)
• Crypter les connexions (SSH)
• Connaître son réseau et ses faiblesses (audit)
• Restreindre les accès (services, tcpwrappeur, pare-feu)
• Limiter la diffusion vers l’extérieur d’informations concernant votre réseau
• Se tenir au courant des évolutions de sécurité : CERT
(cert-advisory@cert.org), BugTraq
(bugtraq-request@crimlab.com)
Authentification
Principe du test :
• mot de passe crypté
• cryptage de tous les mots de passe du dictionnaire (plus quelques heuristiques)
• Comparaison avec le mot de passe à décrypter
• si le mot de passe et un des mots du dictionnaire sont identiques, alors le mot de
passe est découvert
Taille indicative d’un dictionnaire : 1.4 million de mots
Ne pas faire tourner des services inutiles sur une machine : Supprimer les services non
nécessaires
• Examiner le fichier /etc/inetd.conf
• Désactiver les services non nécessaires
• Ne lancer au démarrage que les services nécessaires
Examen des scripts de démarrage dans /etc/rc5.d ou /etc/rc3.d
=⇒ Supprimer les liens symboliques SXXxxxx non nécessaires
(ou utiliser chkconfig --del xxxx)
• Session utilisateur :
Problème : Détermination des connexions des utilisateurs
Solution : systèmes de mouchard (audit, wtmp, utmp, last)
• Outils d’analyse statique d’un système : Vérifier l’état des fichiers systèmes
• COPS (Computer Oracle Passwd and Security System) – pas d’analyse du réseau
• ISS (Internet Security Scanner) – spécialisé dans le diagnostic des problèmes de
sécurité du réseau
• Ntop : Analyse du trafic sur le réseau
• Crack ou John The Ripper – Analyse des mots de passe en fonction de leur degré de
sécurité
Éviter les modifications de programmes sensibles (passwd, ping, find, login, etc.)
• Tripwire :
• cliché du système sûr (après installation ou mise à jour)
• comparaison régulière avec un cliché de référence
# KILL_HOSTS_DENY='ALL : $TARGET$'
KILL_ROUTE='/sbin/iptables -P INPUT DROP
• Protection active (sur tcp et udp) : Advanced UDP stealth (audp), Advanced
TCP stealth (atcp)
Exécution :
portsentry -audp
portsentry -atcp
• Information dans les logs en cas d’attaque
Procédure ssh2 :
• identique à ssh1
1 Authentification par machine connue known_hosts
2 Authentification par clé publique
3 Authentification par mot de passe
Paramètre PreferredAuthentications : ordre de préférence des types de
connexion
• Utilisation des algorithmes DSA ou RSA
Chiffrement des données (tripleDES, Blowfish, CAST128, Arcfour)
Fichiers de configuration
Fichier /etc/ssh/sshd_config
Quelques options importantes :
• AllowHosts : Liste des adresses IP autorisées à se connecter
• DenyHosts : Liste des adresses IP non autorisées à se connecter
• AllowUser : Liste des utilisateurs autorisés à se connecter
• DenyUser : Liste des utilisateurs non autorisés à se connecter
• X11Forwarding : Redirection graphique (X11)
Autorisation d’ouverture de fenêtres graphiques
Nécessite un redémarrage du service
Host *
ForwardX11 yes
ForwardX11Trusted yes
Protocol 2,1
StrictHostKeyChecking no
(StrictHostKeyChecking : pas d’ajout des clés des machines, refus de connexion lors
d’un changement de clé)
• Connexion : ssh utilisateur@machine
ssh monnin@lipn
slogin -l monnin lipn
mIsEQoYJkwEEAKBF1NYYW+EhM3RTrpS/nyFyolXJ9Ut+L7QaLMhl63VtXPaA+nHG
P7pZj1+1/se3sN7wd+Aoo1TFO2GZbIsQyujIm/libhS/r3n9LElM4oAuYJCVp4V6
ZOvCQlASYx4KtsSEJOoaE87qGh77SU4pn284aJelQtikTWTjtFxBZezDAAYptEZU
aGllcnJ5IEhhbW9uICh0ZXN0IGRlIGNsZSBwZ3AgMikgPHRoaWVycnkuaGFtb25A
bGlwbi51bml2LXBhcmlzMTMuZnI+iLQEEwECAB4FAkKGCZMCGwMGCwkIBwMCAxUC
AwMWAgECHgECF4AACgkQi/9RQA+h+dQLKgP/VgMQ/ane6KVrF4Wm6ca9HvFiMvwB
twRl6x36mIP+k8jhdQOdA7+ORNsjWCvS7WudcSjYIwVpPxtGBPTfZR+NMdwqUOtI
4fyzrr8MOpTSW8d419gPeDAgnMXFFMsrCJZgHqoZzzOXBEDtPPhKY/kSiYP0tg04
vxnnS8WdIjHvYAk=
=XhGV
-----END PGP PUBLIC KEY BLOCK-----
Xavier MONNIN Administration Système 2017-2018 348 / 387
Securité Sécurité informatique
Syntaxe :
+ indication du destinataire
Entrez le nom d'utilisateur, en terminant par une ligne vide: Xavier Monnin
Added 1024g/B62FFEEF 2005-05-14 "Xavier Monnin (test de cle pgp) <xavier.monnin
hQEOAz7OBz7P72EJEAP+OZORv+1ANSrO4KLI0qJDSJn9BiHr4RKTZi69Zx5p8eOp
wASp6ZBkFhkd3INpTc/SWHT1HZ26Hu2ReRPzrhvf4KT8aEdq/8MUQxI9C/e0e9tQ
uvXf+0o5ydWO0P+nlmDv3Nne5FVXBx4AXcP2HkFxi2Jbg3cM/rZudVkRA0Y1qbgD
/A7+N8+Uy3riWIgwg1iY0ET1kz7hG5xrjOTVOGZJg8/RfmhM7enqG0g2vty+sNTZ
uR1BJDDxI1Dh6Ht1d8bLu1AZS3AOy/mfd520DuR4e7MF2pFqwsGUlwAX1vl2NfZS
0blEI0r5KBQEJmfj+HymRxzVpvuRduMFo30+JtAEPy7a0l4Bn55KE+pgqw2BHABW
kiqvhGYiqQjI+aVYvrhCqgPrCy8/7+TRQ9BKLyfLpZiokS/Q4pty9W7Ety+8fKlI
rfN4U2HwtGX2hyIrzxxkV4i+0DqN5BuIVy2VAUKzG09h
=Xlcu
-----END PGP MESSAGE-----
Important : Signer les messages cryptés (éviter l’usurpation d’identité)
Xavier MONNIN Administration Système 2017-2018 352 / 387
Securité Sécurité informatique
Vous avez besoin d'un mot de passe pour déverrouiller la clé secrète pou
l'utilisateur: "Xavier Monnin <xavier.monnin@lipn.univ-paris13.fr>"
clé de 1024 bits ELG-E, ID CFEF6109, créée le 2005-05-14 (ID clé princip
gpg: chiffré avec une clé de 1024 bits ELG-E, ID CFEF6109, créée le 2005
"Xavier Monnin <xavier.monnin@lipn.univ-paris13.fr>"
Fichier de test de cryptage GPG
Xavier MONNIN Administration Système 2017-2018 353 / 387
Securité Sécurité informatique
• Pour GPG :
# signature et compression du message
gpg -sa [message]
# signature uniquement
gpg --detach-sign [message]
Chiffrement et sgnature :
gpg -u Expéditeur -r Destinataire -sa -sign
--encrypt [message]
# Vérification
Vous avez besoin d'un mot de passe pour déverrouiller la clé secrète pour
l'utilisateur: "Xavier Monnin <xavier.monnin@lipn.univ-paris13.fr>"
clé de 1024 bits DSA, ID D44F3D5D, créée le 2005-05-14
$ ls -l test.txt*
-rw-r--r-- 1 monnin monnin 34 mai 14 17:52 test.txt
-rw-r--r-- 1 monnin monnin 189 mai 14 18:27 test.txt.asc
Xavier MONNIN Administration Système 2017-2018 357 / 387
Securité Sécurité informatique
$ cat !$
cat test.txt
Fichier de cryptage GPG
!
Firewall et NAT
• Firewall : Pare-feu
Filtrage des paquets entrants et sortants
Protection contre les intrusions
• NAT : Masquage d’adresse IP
Objectif : connecter un réseau privé à l’internet avec un seul point d’entrée
=⇒ Deux outils indispensables pour la mise en place d’un réseau privé sécurisé
Firewall
Protection des réseaux d’entreprise des attaques venant de l’Internet
Machine entre le réseau et l’internet
192.168.0.14
eth0 eth1
Internet
195.167.10.10 192.168.0.1
192.168.0.2
Principe de fonctionnement
Avantages et inconvénients
Avantages :
• transparents pour les utilisateurs
• pas d’authentification nécessaire pour sortir
• pas de paramétrage spécifique
Inconvénients :
• Pas d’authentification par utilisateur mais par adresse IP
• Pas de possibilité d’interdire la sortie à certains utilisateurs (sauf si bijection entre
utilisateur et machine/adresse IP)
Firewall proxy
Proxy d’applications
Proxy «sock»
IP Masquerading
Masquage d’adresse IP
Translation d’adresse IP : Network Address Translation (NAT)
Partage d’une adresse IP pour plusieurs machines
Principe :
• Machine connectée à l’Internet (modem, ADSL, Liaison Spécialisée)
• Machine interne au réseau (adresse privée)
• Machine interne doit passer pour la machine connectée à l’Internet
Trois comportements :
• Rejet (la source est prévenue) : REJECT
Comportement déconseillé
• Rejet (la source n’est pas prévenue) : DENY ou DROP
• Acceptation : ACCEPT
• Mise en attente : QUEUE
Chaîne : suite de règles
Mise en place d’un Firewall : définition de règle pour chaque chaîne
Si aucune règle ne s’applique, application de politique par défaut de la chaîne
Préparation
• Firewall : Machine avec deux cartes réseau, ou au moins deux interfaces réseau
• Adresse privée (plage 192.168.XXX.XXX par exemple)
(passerelle/firewall : 192.168.0.1)
• Adresse(s) publique(s) (routable sur Internet)
• Définir les services devant être disponible pour l’extérieur (Web/http, ssh, smtp,
pop3/pop3s, imap/imaps
=⇒ Mise en place conjointe du filtrage, masquerading, routage
Configuration du noyau :
• Chargement des modules pour l’IP Masquerade (ip_masq*)
Activation :
Accès vers l’extérieur pour toutes les machines de réseau
Exemple (1)
Exemple (2)
La table NAT
Network Address Translation – IP Masquerading
table utilisée pour la translation d’adresse ou la translation de port
Chaînes :
• PREROUTING : opération à effectuer à l’entrée du firewall
• POSTROUTING : opération à effectuer à la sortie du firewall
Cibles :
• SNAT : modification de l’adresse source du paquet
• DNAT : modification de l’adresse destination du paquet
• MASQUERADE : Transformation des paquets sortants Les paquets semblent provenir
du firewall (allocation dynamique d’un port)
Réponse sur le port : utilisation d’une table de correspondance (fait suivre le paquet sur la
bonne machine)
Xavier MONNIN Administration Système 2017-2018 374 / 387
Securité Firewall
Opérations
• chaîne : input,output,forward
• interface : eth0, lo, eth1
• source : adresse IP particulière (192.168.1.1/24) ou classe d’adresse IP entière
(192.168.1.0/24).
/24 : masque de sous réseaux (255.255.255.0)
• polices : ACCEPT,DENY,REJECT
Exemple de filtres
Anti-spoofing :
spoofing : changement de l’adresse IP source (par un pirate)
Le filtre doit rejeter tous paquets IP d’adresse 192.168.0.XXX venant de eth0 (interface
extérieure) :
iptables -A INPUT -i eth0 -s 192.168.0.0/24 -d 0.0.0.0 -j DENY
iptables -L INPUT
Politiques :
1 Rejet de tous les paquets. Ouverture au fur et à mesure
Politique fortement conseillée
2 Ouverture à tous les paquets. Fermeture aux paquets dangereux
Initialisation :
# Autorisation pour le forwarding dans le noyau
echo 1 > /proc/sys/net/ipv4/ip_forward
# Mise à zéro
iptables -F
iptables -F -t mangle
iptables -F -t nat
iptables -X
iptables -X -t mangle
iptables -X -t nat
Xavier MONNIN Administration Système 2017-2018 380 / 387
Securité Firewall
Arrêt :
iptables -F
iptables -F -t mangle
iptables -F -t nat
iptables -X
iptables -X -t mangle
iptables -X -t nat
Filtrage :
# Suppression des broadcasts
iptables -A INPUT -s 0.0.0.255/0.0.0.255 -j DROP
iptables -A INPUT -d 0.0.0.255/0.0.0.255 -j DROP