Pour un centre de formation, j’ai mis en place un serveur de fichiers. Je vous détaille ici le processus de mise en place du serveur en question.
Ce n’est peut-être pas la solution "ultime" mais elle est assez simple à mettre en place (quand on connait un peu GNU/Linux) et la maintenance très facile.
À l’origine
Il y avait à l’origine 2 ordinateurs servant de serveurs de fichiers :
- 1 poste sous Windows 2000 Server
- 1 poste sous Windows XP Professionnel
Pourquoi changer ?
Le matériel commençant a être défaillant, la question s’est posée de remettre en état les postes d’origine ou de passer à une solution plus "simple" (1 seul serveur au lieu de 2).
Les points clefs du cahier des charges étant :
- Avoir un dossier de partage accessible en lecture/écriture par n’importe quelle personne (Commun),
- Un dossier de partage uniquement accessible par les personnes authentifiées et autorisées (Restreint).
- Les dossiers personnels des gens authentifiés.
- Un système de sauvegarde "manuelle" simple pour des "non-informaticiens".
Solution choisie
Bien que possédant les licences pour Windows 2000 Server et Windows XP Professionnel, le choix a été fait de mettre en place un serveur sous GNU/Linux, avec sauvegarde sur un disque externe connecté en FireWire 400.
Matériel
- Un ordinateur DELL
- Une carte FireWire 400
- Un disque externe FireWire
Choix de la distribution
À l’origine, c’était la distribution Mandriva 2007.1 qui a été choisie par le centre.
Cependant il s’est rapidement avéré qu’elle ne convenait pas du tout :
- Impossibilité de "montage" automatique d’un disque en FireWire une fois le système installé de "base".
- Aide en ligne très "brouillon" sur le site Internet officiel, ...
Ayant personnellement testé le montage automatique sur Fedora 7 avec la même carte FireWire et un disque externe, c’est cette distribution qui a été retenue (Fedora 8 n’étant pas encore sortie lors de la mise en place de la solution).
La distribution Ubuntu n’a pas été retenue bien qu’elle aurait également fonctionné. Cela pour des raisons purement pratiques : le DVD de Fedora 7 avait déjà été téléchargé et gravé.
Installation du serveur
Le système a été installé avec 5 partitions :
- /boot : stockage du noyau et de la configuration de GRUB
- / : Système en lui même
- /home : Partition de stockage des comptes utilisateurs Linux
- Swap : Partition d’échange
- /partage : Partition qui servira au partage de fichier SAMBA
Configuration du serveur
Le serveur a été configuré sans le support de SELinux vu que cette solution n’apporte pas de fonctionnalités vraiment intéressantes dans le contexte en question.
Une fois le serveur installé avec Samba, il faut créer les comptes utilisateurs sur le serveur de façon "classique" (vu qu’il y a très peu de comptes à créer, les solution types LDAP, ... ne sont pas nécessaires)
Il faut ensuite utiliser l’utilitaire fournit par Fedora pour la création d’un compte utilisateur Samba pour chaque utilisateur Linux.
Attention : Fedora a une politique de sécurité plus importante sur les mots de passe que d’autres distributions (mot de passe de 6 caractères minimum ...)
On créé 2 dossiers pour le partage de fichiers :
- /partage/commun : Dossier commun accessible en lecture/écriture par tous les utilisateurs identifiés ou non.
- /partages/restreint : Dossier restreint accessible en lecture/écriture uniquement par les utilisateurs identifiés.
Ensuite on modifie le fichier /etc/smb/smb.conf de cette façon :
[global]
workgroup = TheShire
server string = Samba Server Version %v
netbios name = Saroumane
deadtime = 60
; (temps d'inactivité en minutes)
log file = /var/log/samba/log.%m
# max 50KB per log file, then rotate
max log size = 50
security = user
passdb backend = tdbsam
map to guest = Bad User
usershare allow guests = Yes
os level = 33
wins support = yes
cups options = raw
username map = /etc/samba/smbusers
[homes]
comment = Home Directories
browseable = no
writable = yes
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
printable = yes
[Commun]
create mask = 0777
directory mask = 0777
comment = Public
path = /partages/commun
writeable = yes
guest ok = yes
[Restreint]
create mask = 0777
directory mask = 0777
comment = Public
path = /partage/restreint
writeable = yes
valid users = bilbobaggins, samgamegie, gandalfthewhite ; placer ici les differents utilisateurs autorises
Il faut ensuite recharger Samba.
La sauvegarde
Elle est assurée avec le logiciel pyBackPack.
Déconnexion d’un partage
Pour se déconnecter des partages une fois identifier (sous Windows XP Pro SP2), il faut saisir les lignes ci-dessous dans un terminal de commande Windows, dans Exécuter, ou via un script "bat" :
net use \\Saroumane\Restreint /del
net use \\Saroumane\Commun /del