sommaire
Partage de fichiers

Samba


NFS


Installation:

Coté serveur il faut 2 packages:
nfs-utils et portmap
Coté clients il faut juste portmap

Ces 2 packages sont sur le CD1 de la RH8.0

Configuration:

Le fichier de configuration: /etc/exports
un partage de fichiers tient sur une seule ligne et se divise en trois:
repertoire_partage    qui_peut_acceder_au_partage    options

Attention les options doivent etre collées aux ayant droits

On peut sur une meme ligne definr plusieurs ayant droits avec :
/pub    (ro)  *.linuxfred.lan(rw)

Ce qui donne que tout le monde peut lire le repertoire /pb mais uniquement les machines du domaine linuxfred.lan peuvent lire et ecrire
Les permissions données ici n'outrepassent pas les permissions Unix sur les fichiers, c'est toujours la plus restrictives qui l'emporte.

Les ayants droits  peuvent etre definis de plusieurs maniere:

avec une addresse ip : 192.168.0.10
avec un reseau : 192.168.0.0/255.255.255.0 ou encore avec la notation CIDR : 192.168.0.0/24
avec un domaine: *.linuxfred.lan
avec une machine : thebible.linuxfred.lan

Utilisation:

Demarrage:

service nfs start

Voir les partages sur un serveur NFS:
showmount -e ip_serveur  (ou on peut aussi mettre son nom ...)

[root@thebible home]# showmount -e thebible.linuxfred.lan
Export list for thebible.linuxfred.lan:
/mnt/win_d                 192.168.0.0/24
/home/echange              192.168.0.0/24
/mnt/win_c/Bc              192.168.0.0/24
/mnt/win_e/hack            192.168.0.0/255.255.255.0
/mnt/win_e/cards           192.168.0.0/24
/mnt/win_c2/img_cd         192.168.0.0/24
/mnt/win_e/music_MP3       192.168.0.0/24
/mnt/win_e/Utils_zippes    192.168.0.0/24
/mnt/win_c/fonds_d_ecran   192.168.0.0/24
/mnt/win_c2/video_diverses 192.168.0.0/24


Le montage:
Comme pour un montage classque on utilise la commande mount:

mount -t nfs thebible.linuxfred.lan:/mnt/win_d /home/fred/nfs/

Le fichier /etc/fstab:

Comme pour les autres systemes de fichiers on peut tres bien inscrire un montage NFS dans le /etc/fstab, de la maniere suivante:
serveur:partage    point_de_montage    nfs    default    0    0


Visualisation des fichiers monté:

avec la commande :

[root@thebible nfs]# showmount -a 192.168.0.2
All mount points on 192.168.0.2:
thebible.linuxfred.lan:/home/echange


Autres informations:

mount -t nfs 192.168.0.2:/home/echange /home/fred/nfs/

L'utilisateur root ne peut pas ecrire en tant que root dans un partage NFS par defaut. Il ecrit en tant que nobody

[root@thebible nfs]# touch root_ecrit_dans_partage_nfs
[root@thebible nfs]# lla
total 12K
drwxrwxrwx    2 root     root         4.0K aoû 16 15:00 ./
drwxr-xr-x   96 fred     fred         4.0K aoû 16 14:44 ../
-rw-r--r--    1 fred     fred           14 aoû 16 14:44 lol
-rw-r--r--    1 fred     fred            0 aoû 16 14:44 lol~
-rw-r--r--    1 nobody   nogroup         0 aoû 16 15:00 root_ecrit_dans_partage_nfs


Cela peut etre changer avec l'option : no_root_squash

Avant :

[root@thebible nfs]# cat /etc/exports
/mnt/win_e/Utils_zippes 192.168.0.0/24(ro)
/mnt/win_d      192.168.0.0/24(ro)
/mnt/win_e/music_MP3    192.168.0.0/24(ro)
/mnt/win_e/hack 192.168.0.0/255.255.255.0(ro)
/mnt/win_e/cards        192.168.0.0/24(ro)
/mnt/win_c2/img_cd      192.168.0.0/24(ro)
/mnt/win_c2/video_diverses      192.168.0.0/24(ro)
/mnt/win_c/Bc   192.168.0.0/24(ro)
/mnt/win_c/fonds_d_ecran        192.168.0.0/24(ro)
/home/echange   192.168.0.0/24(rw)


Apres:

[root@thebible nfs]# cat /etc/exports
/mnt/win_e/Utils_zippes 192.168.0.0/24(ro)
/mnt/win_d      192.168.0.0/24(ro)
/mnt/win_e/music_MP3    192.168.0.0/24(ro)
/mnt/win_e/hack 192.168.0.0/255.255.255.0(ro)
/mnt/win_e/cards        192.168.0.0/24(ro)
/mnt/win_c2/img_cd      192.168.0.0/24(ro)
/mnt/win_c2/video_diverses      192.168.0.0/24(ro)
/mnt/win_c/Bc   192.168.0.0/24(ro)
/mnt/win_c/fonds_d_ecran        192.168.0.0/24(ro)
/home/echange   192.168.0.0/24(rw,
no_root_squash)

* Comme on a modifié les fichiers /etc/exports on peut soit redemarrer le service ou alors utiliser la commande suivante:
exports -a

et cela donne:

mount -t nfs 192.168.0.2:/home/echange /home/fred/nfs/

[root@thebible nfs]# pwd
/home/fred/nfs
[root@thebible nfs]# touch root_ecrit_en_root
[root@thebible nfs]# lla
total 12K
drwxr-xr-x    2 root     root         4.0K aoû 16 15:05 ./
drwxr-xr-x   96 fred     fred         4.0K aoû 16 14:44 ../
-rw-r--r--    1 fred     fred           14 aoû 16 14:44 lol
-rw-r--r--    1 fred     fred            0 aoû 16 14:44 lol~
-rw-r--r--    1 nobody   nogroup         0 aoû 16 15:00 root_ecrit_dans_partage_nfs
-rw-r--r--    1 root     root            0 aoû 16 15:05 root_ecrit_en_root


beaucoup plus d'informations dans les man de :
exports, nfs, mount, fstab, exportfs



nfs

SAMBA


Liens utilies:
http://www.samba.org/
http://samba.2037.biz/ en français


Installation:


Sur la RH8.0, les packages ce trouve sur le CD2 et CD3

CD2:

samba-2.2.5-10.i386.rpm
samba-client-2.2.5-10.i386.rpm
samba-common-2.2.5-10.i386.rpm

CD3:

samba-swat-2.2.5-10.i386.rpm (interface graphique de configuration)

Configuration:

Le fichier de configuration: /etc/samba/smb.conf

Dans la section [global]

Le groupe de travail ou le nom de domaine se definit avec :

workgroup = intra  

Commentaire pour le partage reseau:

server string = Samba Server %v

Autorisation des machines du reseau + loopback:

hosts allow = 192.168.0. 127.

Mise à disposition des imprimantes:

printcap name = /etc/printcap
load printers = yes

printing = cups

cela depend du serveur d'impression

Le compte invité a autorisé ou pas (s'il est autorisé il faut penser à creer se compte utilisateur)

;  guest account = pcguest


Le fichier de log (ici un par machine grace à %m):

log file = /var/log/samba/log.%m

sa taille : (en Kb)
max log size = 0    
0 => pas de limite

Le mode de sécurité:

Penser à lire : /usr/share/doc/samba.../.../security_level.txt   ou alors la page web (locale) de la doc samba (suivant les ditributions)

share / user / server ou domain
Share-level security :  chaque partage a un ou plusieurs mot de passe et l'authentification se fait au niveau du partage.

User-level security :  un partage est  configuré pour autoriser certains utilsateurs. C'est le serveur Samba qui authentifie  l'utilisaterus au                                            moment de la connection.

Server-level security :  Meme chose que le niveau utilisateur  mais la vérification se fait par un serveur SMB  exterieur.

 
Domain-level security :  le serveru Samba devient membre d'un domaine Windows  et utilise le PDC pour l'authentification.

Ici : user

Au niveau du cryptage (toujours se reporter à la documentation)
pour des clients W98 W2K :

encrypt passwords = yes

Sunchronisation des mot de passe Win/Unix:

unix password sync = No
Pas de synchronisation

;  include = /etc/samba/smb.conf.%m : permet de spécifier des configuration speciales par machines

Option obligatoire: (voir le commentaire pour savoir pourquoi)
   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

;  interfaces = 192.168.12.2/24 192.168.13.2/24
Permet de gerer plusieurs interfaces

Local master:

local master = no ou yes (c'est selon)
os level = 33


Le plus haut possible pour le master

Elections:

preferred master = no

si c'est a yes alors des elections sont réalisée

Scripts:

;   logon script = %m.bat
;   logon script = %U.bat
;   logon path = \\%L\Profiles\%U


Attention il faut decommenter les lignes suivantes si l'on utilise les scripts:

;[Profiles]
;    path = /usr/local/samba/profiles
;    browseable = no
;    guest ok = yes



Wins serveur:

Serveur:
wins support = yes

client:
wins support = no
wins server = 192.168.0.251 (ip du serveur)


Casse :

Inutile car Windows n'y ets pas sensible:

;  preserve case = no
;  short preserve case = no
# Default case is normally upper case for all DOS files
;  default case = lower
# Be very careful with case sensitivity - it can break things!
;  case sensitive = no


Les partages:

De maniere generale un partage est indiqué entre  []:

le [homes]:
Un utilisateur ne voit que son home

%S : seul l'utilisateurs peut y acceder

comment :  pour les commentaires
browseable: permet de voir tous les fichiers ou pas
writable : on peut ecrire ou pas
valid users : qui est autorisé
create mode : les droits des fichiers créés
directory mode : les droits des repertoires créés

En mode de sécuritéDomain: contient les preferences sur la machine:

; [netlogon]
;  comment = Network Logon Service
;  path = /usr/local/samba/lib/netlogon
;  guest ok = yes
;  writable = no
;  share modes = no

Repertoires des scripts de login:

;[Profiles]
;   path = /usr/local/samba/profiles
;   browseable = no
;   guest ok = yes
Les imprimantes:

Toutes les imprimantes sont disponibles à travers Samba
[printers]
   comment = All Printers
   path = /var/spool/samba
   browseable = no
# Set public = yes to allow user 'guest account' to print
   guest ok = no
   writable = no
   printable = yes :commande obligatoire pour une imprimantes

Les partages de fichiers:

path: indique le chemin des fichiers
write list : qui peut y ecrire avec un @ pour un groupe ou des noms d'utilisateurs
read list : qui peut lire
directory mask == directory mode
pour les repertoies : printable = no
public : permet de ne pas definir de droits particulier

[commun_rw]
comment = Commun en lecture ecriture
path = /home/nfs/entreprise/commun_rw
public = no
valid users= @entreprise
write list = @entreprise
writable = yes
directory mask = 1770
create mode = 0660
printable = no

Creation des comptes utilisateurs :

un compte utilisateur samba doit etre créé en plus du compte unix avec:

smbpasswd -a nom_user

Verification des partages :

smbclient -L localhost (avec aucun mot de passe)
smbclient -L localhost -U nom_utilisateur : voir les partages specifiques à un utilisateur

Se connecter au partages:

depuis une machine Gnu/Linux:

(remarque: les partages samba sur entre des machines unix ne servent à rien NFS est fait pour cela)

avec une methode à la FTP:

smbclient //${host}/${share} [-U ${user}]
en clair:
smbclient //THEBIBLE/Jeux par exemple
commandes de bases: ls , get , put ...

avec mount:
monte le partage //thebible/jeux dans /home/fred/smb avec l'utilsateur fred

mount -t smbfs //thebible/jeux /home/fred/smb/ -o username=fred

avec fstab:
le fichier fstab se modifie de la maniere suivante:

//ip_machine    /partage    smbfs    uid=...,gid=...,crederntials=/etc/samba/fichier_qui_contient_les_pass...    0    0

man smbmount pour en savoir plus