On commence par l'installer de manière classique :

aptitude install samba

si vous avez un dockstar de seagate sous debian, rajoutez également le paquet samba-common-bin, ce qui vous aidera par la suite, sans lequel vous n'aurez pas certaines commandes bien pratiques ;)

aptitude install samba-common-bin

Une foi installé, il se lance automatiquement, donc on l'arrête pour attaquer la config

/etc/init.d/samba stop

puis on se rend dans le répertoire de samba, et on renomme le fichier de configuration original

cd /etc/samba
mv smb.conf smb.conf.org

En effet, on va se créer un nouveau fichier, beaucoup réduit et simple que l'original, qui peut faire un peu peur quand on l'ouvre :D
On va déclarer une première section dans laquelle on va indiquer les paramètres généraux de samba. Puis ensuite une section par partage.
Commençons par cette première section :

[global]
server string = Mon Super Serveur Sous Linux
workgroup = MONRESEAU
netbios name = MONSERVEUR
public = yes
encrypt passwords = true
log file = /var/log/samba/log.%m
syslog = 0
panic action = /usr/share/samba/panic-action %d
dns proxy = no
security = user
invalid users = root
socket options = TCP_NODELAY
guest account = nobody
share modes = yes

On déclare ici un serveur, dont le nom réseau va être MONSERVEUR, sur un groupe de travail nommé MONRESEAU
Également important, la ligne security=user, qui indique que l'on souhaite que les utilisateurs s'authentifient pour accèder aux données.
La ligne share modes = yes indique l'accès multi-utilisateurs
On indique une description (server string) qui apparaitra dans les propriétés du partage pour indiquer à quoi il sert. on peut laisser vide si pas de description/
Pour le reste vous pouvez laissez tel quel.
Passons maintenant au(x) partage(s)

[mon_partage]
path = /media/disque/dossier
read only = no
writeable = yes
public = no
valid users = dju
comment = dju's files
force user = dju
force group = dju
create mask = 0640
directory mask = 0750

- A la première ligne, le nom entre crochet est le nom du partage, tel qu'il sera appelé sur la machine.
% - Le path désigne le dossier à partager
- on veut que l'utilisateur puisse non seulement lire, mais également écrire dans le partage. donc on indique writeable = yes
- on met la ligne public=no pour indiquer que le partage n'est pas public et qu'il faut s'authentifier.
- très importante, la ligne "valid users = dju" indique quels utilisateurs vont avoir accès à ce partage. ici je ne donne l'accès qu'à l'utilisateur dju. si on veut en mettre plusieurs, on les sépare par un espace.
- la ligne public = no indique que le partage ne sera pas visible dans la liste des partages aux utilisateurs non authentifiés - on force l'utilisateur dju et le groupe dju pour tout fichier/dossier créé, avec les permissions 0640 pour les fichiers créés, et 0750 pour les dossiers créés. ainsi, l'utilisateur créateur de ces fichiers/dossiers y aura un acces total, les utilisateur du groupe en lecture, et rien pour les autres. - enfin, il faudra, pour que cela fonctionne, que le dossier /media/disque/dossier aie les bons droits d'accès pour l'utilisateur. ici, comme seul dju y a accès, on le créera avec un droit restreint :

mkdir /media/disque/dossier
chown dju:dju /media/disque/dossier
chmod 740 /media/disque/dossier

Puis, afin de valider l'utilisateur au niveau de samba, on va renseigner son mot de passe :

smbpasswd dju

Maintenant, créons un deuxième partage encore plus simple, auquel tout le monde aura accès en lecture écriture.

[mon_partage_public]
path = /media/disque/dossier_public
writeable = yes
public = yes
comment = public files
create mask = 0777
directory mask = 0777

- on appelle le partage mon_partage_public
- on donne les droits de lecture écriture à tout le monde
- si vous souhaitez partager des données pour tout le monde, mais en lecture seule, mettez plutot writeable = no

en conséquence, il faudra créer sur votre disque le dossier correspondant et lui donner les droits d'accès à tout le monde :

mkdir -p /media/disque/dossier_public
chmod 777 /media/disque/dossier_public

Également à prendre en compte, si le dossier que vous souhaitez partager est sur un disque formaté en NTFS, et monté via ntf-3g, alors par défaut le système lui donne les droits d'accès pour tout le monde, vu que sous Linux les droits NTFS ne sont pas gérés (uniquement sous windows)
Ainsi, vous n'aurez pas à vous occuper de l'appartenance du dossier ni de ses droits au niveau du système de fichiers, vous aurez juste à configurer l'accès au niveau de samba ;)

Et voila. la configuration étant maintenant faite, y'a plus qu'à relancer samba

/etc/init.d/samba start