Vous êtes sur la page 1sur 62

Université Virtuelle du Senegal

Administration des Systèmes d’exploitation


Linux
Pr. Maïssa MBAYE
maissa.mbaye@ugb.edu.sn
Partie 3 : Services de partage de fichiers

2
• Plan
 Service FTP
 Service SAMBA

3
vsFTPD : Partage de fichier par FTP

4
Serveurs FTP

• Les serveurs FTP implémentent le service de transfert de fichier


basé ce protocole
• FTP est l’un des premiers services utilisés pour le partage de fichier dans les
réseaux IP
• FTP suit le modèle client/serveur
• Exemples de serveurs FTP

Advanced TFTP (atftpd) Trivial FTP (tftpd)


Secure FTP (krb5-ftpd)

Netkit FTP (ftpd)


TwoFTPd (twoftpd) Pure-FTPd (pure-ftpd)
WU-FTPD (wu-ftpd)
Pro-FTPd (proftpd)

Very Secure FTP (vsFTPD) 5


Serveur : Very Secure FTD

• vsFTPD
– Serveur FTP proposé par défaut proposé par Ubuntu
– Celui qui est installé par le paquet virtuel ftp-server
• C’est le serveur FTP de kernel.org (distribution du noyau Linux)

6
Serveur vsFTPD : Installation (Débian/Ubuntu)

• Il y un seul paquet à installer : vsftpd

7
Serveur vsFTPD : Installation (Débian/Ubuntu)

Commande d’installation
$ sudo apt-get install vsftpd

8
Serveur vsFTPD : Fichiers de configuration

• Deux fichiers clés :


/etc/vsftpd.conf : fichier contenant les paramètres de configuration

/etc/ftpusers : fichier de configuration des utilisateurs qui n’ont pas de


comptes Unix

9
Serveur vsFTPD : Les variables

• Variables de protocole d’écoute

# activation Inet.D
listen=YES # écoute les interfaces
listen_ipv6=YES # activation d’IPv6
connect_from_port_20=YES # activation de la connexion de données

10
Serveur vsFTPD : Les variables

• Activation de l’accès des utilisateurs

# Accès utilisateurs ayant un compte UNIX


local_enable=YES # Activation de l’accès
write_enable=YES # Autorisation de déposer des fichiers

# Accès utilisateurs anonymes


anonymous_enable=YES # activation de l’accès anonyme
anon_upload_enable=YES # Autorisation de déposer des fichiers
anon_mkdir_write_enable=YES # Autorisation de créer des
répertoires par les utilisateurs anonymes

11
Serveur vsFTPD : Les variables

Limitation de l’accès au système de fichier

# activation Inet.D
chroot_local_user=YES # Limite les utilisateurs à leurs
repertoires home
#chroot_list_enable=YES # Limitation basée sur une liste
#chroot_list_file=/etc/vsftpd.chroot_list

12
Serveur vsFTPD : Démarrage et arrêt (Débian/Ubuntu)

• (Re)Démarrage
sudo start vsftpd
sudo restart vsftpd

• Arrêt
sudo stop vsftpd

13
Clients FTP : FileZilla (Windows)

14
Clients FTP : FileZilla (Linux)

15
Clients FTP : Explorer (Windows) (1)

16
Clients FTP : Explorer (Windows) (2)

17
Clients FTP : Ligne de commande(Windows)

18
Clients FTP : Nautilus (Linux)

19
Clients FTP : Ligne de commande (Linux)

Commandes UI du
client FTP

20
Service Samba

21
Présentation

• Samba est un serveur conçu par Andrew Tridgell


– Le projet a commencé le projet en 1991 alors qu’il travaillait à DEC sur
PathWorks
– Le protocole évolua vers Server Message Block ancêtre de CIFS

Origine du nom Samba

Ne pouvant donner au nouveau serveur le nom SMB qui


était déjà une marque déposée. Pour trouver le nom,
il tapa la commande :
$ grep -i '^s.*m.*b.*' /usr/dict/words
salmonberry
samba
sawtimber
Scramble
22
Présentation

• Samba est un serveur qui implémente le protocole CIFS qui est


le protocole de communication des machines Windows
• Il permet entre autre la communication entre des machines Unix
avec des machines Windows ou des systèmes qui implémentent
le protocole CIFS

23
Services Communs de Samba (1)

• Partage de répertoires dans le réseau entre machines Windows


et Unix
• Espace de nommage des machines commun pour système de
fichier distribué (MS-DFS)
• Gestion Centralisée des imprimantes réseau
– Paramètres d’impression
– Drivers pour les clients Windows

24
Services Communs de Samba(2)

• Assistance des clients pour la navigation réseau


• Authentification des machines clientes dans un domaine
Windows
• Fournit une assistance pour la résolution de nom avec Windows
Internet Name Service (WINS)

25
Cas d’utilisation de Samba

• Samba peut remplacer un serveur de fichier ou d’impression


Windows NT
– Pour des raisons de couts de licence par exemple
• Samba peut être un système de login unifié pour des clients
Unix/Linux utilisant un domaine Windows NT (utilisateurs et
groupes)
• Samba peut être utilisé comme PDC (Primary Domain Controller)
pour un domaine Windows NT 4.0
• Samba peut se comporter comme serveur de répertoires
utilisateurs
– Pour que les HOMEs Unix et Windows co-existent dans un espace
commun

26
Configuration simple avec Serveur Samba

• Partage d’imprimante et de documents

27
Apparence d’un Serveur Samba sur un client Windows

28
Liste des Partages d’imprimantes et Fax sous Samba

29
Common Internet File System

• Le protocole CIFS fournit un API pour :


– La manipulation des fichiers
– L’implémentation de fonctionnalités d’administration à distance
• Modification de login et Mot de passes
– L’implémentation des services d’impression
• Les systèmes d’exploitation Windows récentes repose sur un
Protocole nommé CIFS

30
Pile de Protocole CIFS/SMB

SMB/CIFS

NetBIOS

NetBEUI TCP/IP IPX

Réseau

31
Notion de WORKGROUP Windows

• Un WORKGROUP est un
ensemble de machines
susceptibles de partager
– Des fichiers
– Des Imprimantes
– Des connexions Internet
• L’authentification se fait en
mode pair à pair
– Chaque machine est cliente et
serveur et gère localement sa
base de données des comptes
utilisateurs

32
Notion de WORKGROUP Windows

• Authentification dans le groupe de travail se fait


localement sur chaque pair

33
Notion de DOMAINE Windows

• Un DOMAINE Windows est similaire à un


WORKGROUP sauf pour l’authentification
– Pour un DOMAINE les informations sur les comptes
sont centralisées sur un serveur qui authentifie l’accès
à n’importe quelle ressources dans le domaine
– Un login et un mot de passe permettent aux utilisateurs
d’acceder à toutes les ressources du domaine
• Le serveur d’authentification est appelé contrôleur
de domaine (Domain Controller)

34
Notion de DOMAINE Windows

• Modèle d’authentification avec le contrôleur de domaine

35
Etapes de l’installation

1. Installation des paquets Samba


2. Configurer les partages dans smb.conf
3. Tester la configuration avec testparm
4. Démarrer les services smbd et nmbd
5. Vérifier au niveau des clients

36
Installation des paquets de Samba (Debian/Ubuntu)

• Les paquets à installer sur le serveur sont :


samba(serveur) samba-common(tous) samba-client(client-Linux)

37
Installation des paquets de Samba (Debian/Ubuntu)

• Installation du serveur

$sudo apt-get install samba samba-common

• Quelle est ma version de Samba ?

38
Installation des paquets de Samba (Debian/Ubuntu)

• Principaux services installés


nmbd
• Daemon de resolution de nom qui fournit la fonctionnalité WINS(Windows Internet
Naming Service)
• Répond aux requêtes de correspondance noms-adresses IP
smbd
• Daemon gérant les ressources partagées entre le serveur Samba et ses clients
(Windows ou Linux)
• Fournit les services de partage de fichier et d’imprimantes aux clients
• Traite toute les notifications entre le serveur Samba et les clients réseaux
• Gère aussi l’authentification des utilisateurs, les verrous sur les ressources et le
partage de données avec le protocole SMB/CIFS

39
Quelques commandes Utiles de la distribution

Commande Description
smbpasswd Permet de créer une mode passer réseaux Windows pour un utilisateur.

findsmb Permet de chercher les machines du réseau qui répondent aux requêtes du protocole
SMB(Serveur SMB ayant des partages)
net Permet d’administrer à distance un serveur Samba. Fonctionnalités similaires à celle de la
commande net de Windows
smbclient Une commande qui ressemble à FTP pour se connecter aux ressources partagée; Dans le
paquet (samba-client)
(u)mount.cifs Permet le (de)montage des répertoires Samba partagées. Successeur de la commande
smbmount
smbtree Liste les répertoires partagés par tous les serveurs Samba connectés

smbstatus Liste les connexions en cours sur un serveur Samba

testparm Permet de tester les erreurs de syntaxe sur le fichier de configuration de Samba

40
Configuration de Samba (Ubuntu/Debian): le fichier smb.conf

• Le fichier de configuration de Samba est


/etc/samba/smb.conf(5)

41
Configuration de Samba (Ubuntu/Debian): le fichier smb.conf

• Le fichier smb.conf suit les principes suivants :


– C’est un fichier ASCII (même format que les .INI de Windows)
– Les commentaires commencent à partir d’un # (dièse) ou d’un ;(point-
virgule) jusqu’à la fin de la ligne
– Son contenu est composé de sections
• Chaque section commence par son entête indiqué par le nom de la section entre
crochets [] et continue jusqu’au début de la prochaine section
• Les paramètres de configurations son sous la forme :
<parametre> = <valeur>

42
Les sections par défaut de smb.conf

• Trois sections par défaut


[global]
– Contient les paramètres qui déterminent le comportement global de
Samba (obligatoirement présente)
[homes]
– Partage par défaut permettant de partager le répertoire HOME de tous
les utilisateurs CIFS (section optionnelle)
[printers]
– Partage par défaut permettant d’exporter toutes les imprimantes de la
machine via CIFS (section optionnelle)

43
Les sections par défaut de smb.conf

Exemple de smb.conf (minimaliste)


#======== Paramètres globaux smb.conf
[global]
; définit le nom NetBIOS du serveur
netbios name = ubuntu
; définit groupe de travail ou le domaine NT concerné
workgroup = WORKGROUP
;Le nom qui va apparaitre comme description du serveur sur les clients
server string = %h UGB server (Samba, Ubuntu)
security = user
encrypt passwords = yes
#========== Définition de partage
[MonPartage]
path = /samba/partage
browsable =yes
writable = yes
guest ok = yes
read only = no

44
Création de partage de répertoire

• Pour partager un répertoire il faut ajouter une


section dans smb.conf
# partage d’un répertoire /export/partage
[ugb-ufrsat]
comment = "Exemple de partage"
path = /export/partage
read only = no
guest ok = yes

Paramètre Valeur par Description


défaut
path /tmp Chemin du répertoire sur disque à partager
comment "" Brève description du partage. Définit la chaine affichée sur les propriétés du
partage
browesable yes Est-ce que ce partage peut être listé sur les partages du serveur ?
read only yes Est-ce que smbd doit permettre au client d’écrire sur le partage? Option
inverse de l’option writable
guest ok no Permet aux utilisateurs de se connecter sans mot de
passe
45
Création de partage de répertoire

• Résultat

46
Création de partage de répertoire

• Partage des répertoires HOME des utilisateurs


# Export des repertoires utilisateurs
[homes]
comment = home directory for %u
path = %H
valid users : %S
read only = no

• Chaque utilisateur pourra se connecter sur le partage


\\nomserveur\sonlogin

47
Création de partage de répertoire

• Partage des répertoires HOME des utilisateurs

48
Test de la configuration avec testparm(1)

terparm est un outil permettant de tester la configuration afin d’en


élever les erreurs syntaxiques

49
Options communes de la section [global]

Paramètre Description
workgroup Nom du workgroup qui a accès aux partages
nebios name Nom Netbios (unique) du serveur
log file, log level Chemin vers le fichier de log de Samba, niveau de
détail des logs (0 à 10)
server string Chaine de description du serveur
security Granularité de l’authentification : user, domain, …
invalid users Les utilisateurs qui ne peuvent accéder au partage
encrypt passwords Cryptage des mots de passe

50
Autres outils de la distribution

• swat
– C’est le Samba Web Administration Tool (SWAT) qui est une interface
Web d’administration du serveur Samba
• winbindd
– Ce daemon est utilisé pour récupérer les informations sur les utilisateurs
et les groupes à partir d’un contrôleur de Domaine Windows
– Permet à Samba d’authentifier les utilisateurs dans un domaine
Windows

51
Client Windows

• Les clients Windows peuvent y accéder à partir de explorer

52
Client Windows

• La commande net use permet de monter les partage comme des


disques virtuelles (x: ici)

53
Client Windows

• Affichage des statistiques netbios

54
Client Linux : ligne de commande smbclient

• smbclient est une commande qui permet d’acceder aux


partages Windows en ligne de commande.
– Nécessite d’installer le paquet smbclient

55
Client Linux : ligne de commande smbclient

• Listage des partages sur un serveur


$ smbclient -L //<server> -U <username>

56
Client Linux : ligne de commande smbclient

• Accès à partage public


$smbclient //<server>/<share>

Commandes similaires aux


commandes du client FTP
(get, put, mkdir,
rmdir, …)

57
Client Linux : ligne de commande smbclient

• Accès à partage avec login et mot de passe(le répertoire HOME


ici)

$smbclient //<server>/<share> -U <username>

58
Client Linux : ligne de commande smbtree

• Découvrir tous les partages du réseau

$ smbtree -U username

59
Client Linux : Graphique Natilus(partage public)

60
Références

• Documents disponible sur le site samba.org


– Samba-3 by Example, John H. Terpstra May 27,
2009.
– The Offcial Samba 3.2.x HOWTO and Reference
Guide, Jelmer R. Vernooij, John H. Terpstra, and
Gerald (Jerry) Carter
• Using Samba, 3rd Edition, Robert Eckstein,
Paul Andrew Watters, Jay Ts, Gerald Carter,
O'Reilly Jan 2007

61
Références du cours

https://ubuntu.com/server/docs/

62

Vous aimerez peut-être aussi