Je vais vous montrer une des configurations de samba le rôle
standalone
quand on veut faire un serveur de partage de fichiers.
Pour l'installation, regardé Installation d'un serveur SAMBA 4, car l'article est basé sur cet article.
J'ai réalisé c'est article sur une machine Debian 8 Jessie
Tout d'abord, il faut vérifier le fichier /etc/hosts, Si cela n'est pas déjà fait.
127.0.0.1 localhost XXX.XXX.XXX.XXX nom.domaine.loc nom
Ou
nom.domaine.loc
représente le nom de votre serveur sur le réseau.
Vérifier les DNS que vous avez saisis dans le fichier /etc/resolv.conf, Si cela n'est pas déjà fait.
search domain.loc domain domain.loc nameserver XXX.XXX.XXX.XXX nameserver XXX.XXX.XXX.XXX
Modifier le fichier /etc/network/interfaces
pour lui donner une configuration IP static
, Si cela n'est pas déjà fait.
auto ethX iface ethX inet static address XXX.XXX.XXX.XXX netmask XXX.XXX.XXX.XXX gateway XXX.XXX.XXX.XXX
Relancer le service networking
pour que la modification soit prise en compte.
/etc/init.d/networking restart
Édité ou créé le fichier smb.conf
(/usr/local/samba/etc/smb.conf)
vim /usr/local/samba/etc/smb.conf
Voici, la configuration :
[global] workgroup = WORKGROUP security = USER server role = standalone server string = samba %v netbios name = <NOM-SERVEUR> passdb backend = tdbsam encrypt passwords = yes null passwords = No machine password timeout = 604800 obey pam restrictions = yes unix password sync = yes passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . pam password change = yes load printers = no printcap name = /dev/null disable spoolss = yes log file = /var/log/samba/log.%m log level = 3 max log size = 100 [homes] comment = Home Directories read only = no create mask = 0770 directory mask = 0770 invalid users = valid users = %S write list = %S read list = [rep_partage] comment = "rep_partage" path = /share/rep_partage readonly = no create mask = 0770 directory mask = 0770 force group = force user = invalid users=user4 valid users=user1,@groupe1,user2 write list=user1, user2, @group1 read list=user3
<NOM-SERVEUR>
dans l'option netbios name
tar -xvzf samba.tar.gz
De le mettre dans le répertoire de lancement init.d
:
mv samba /etc/init.d/
Lui mettre les bon droits et le bon propriétaire, si ce n'est pas déjà fait.
chown root:root /etc/init.d/samba chmod 755 /etc/init.d/samba
Et pour terminer d'activer le service, afin que le script soit exécuté au démarrage.
update-rc.d samba defaults
Pour prendre en compte les modifications, redémarrer le service samba
/etc/init.d/samba restart
[rep_partage]
, le nom doit être le même que celui du répertoire que vous voulez partager le symbole _
underscore n'est pas là par hasard, les espaces sur les noms des répertoires ne sont pas pris en compte
Création du répertoire de log:
mkdir /var/log/samba
Une fois terminé la configuration, pour vérifier que la configuration est sans faute de syntaxe, utiliser la commande suivante :
testparm -s
Il nous reste à démarrer le service :
/etc/init.d/samba
Ajouter un login Linux :
addgroup sambausers useradd -m -g sambausers toto
Ajouter un login dans la base local de Samba :
smbpasswd -a toto
smb.conf
.[rep_partage] comment = "rep_partage" path = /share/rep_partage readonly = no create mask = 0770 directory mask = 0770 force group = force user = invalid users= valid users=toto,@sambausers write list=toto, read list=@sambausers
@sambausers : vous n'êtes pas obligé d'ajouter le groupe, le login suffit, mais c'est pour vous montrer la syntaxe
Ensuite, vous n'avez plus qu'à ajouter les droits associés au répertoire de partage, sinon Samba autorisera l'accès, mais pas le système Linux.
exemple:
chown toto:sambausers /share/rep_partage
Pour changer le mot de passe :
smbpasswd toto
Pour supprimer un login de la base Samba :
smbpasswd -x toto
Affiche les connexions actives via Samba :
smbstatus -v
Pour effacer toutes la configuration de samba (fichier de configuration et base local)
rm -f /usr/local/samba/etc/smb.conf rm -rf /usr/local/samba/private/*