Samba, permet à des ordinateurs Unix/Linux de mettre à disposition des imprimantes et des fichiers dans des réseaux Windows, en mettant en œuvre le protocole SMB/CIFS de Microsoft Windows et inversement.
Depuis décembre 2012 Samba 4 supporte le côté serveur dans un environnement Active Directory utilisé par Windows 2000.
Il est ainsi possible de joindre complètement des clients Windows à un domaine et effectuer des opérations d'ouverture de session.
Pour cela, il inclut un serveur LDAP et un centre de distribution de clés Kerberos (KDC).
Et tout ça sous licence GNU GPL 3
Donc, je vais montrer comment installer SAMBA 4 depuis les Dépot Git de SAMBA.
Je vais commencer en vous présentant les différents rôles et sécurités utilisés dans Samba, car en effet, il faut avoir en tête ces règles, cela influencera votre projet ou votre utilisation de Samba.
Comme très légèrement détaillé au-dessus, Samba peut avoir différent rôle que je vais vous détailler cela, c'est sur ces paramètres que vous allez indiquer qu'elle mode utilisé.
C'est sur ce paramètre-là que vous devez réfléchir avant de commencer.
la politique de sécurité, vous permet de choisir la méthode d'authentification.
login
et mot de passe
depuis une liste d'utilisateurs (Base d'utilisateurs Samba, base d'annuaire LDAP, …).security
n'est pas renseigné.login
et mot de passe
géré par un contrôleur de domaine.login
et mot de passe
géré par un autre serveur sur le réseau.Cool ça commence Pour les machines type debian :
apt-get install acl attr autoconf bind9utils bison build-essential \ debhelper dnsutils docbook-xml docbook-xsl flex gdb libjansson-dev krb5-user \ libacl1-dev libaio-dev libarchive-dev libattr1-dev libblkid-dev libbsd-dev \ libcap-dev libcups2-dev libgnutls28-dev libgpgme-dev libjson-perl \ libldap2-dev libncurses5-dev libpam0g-dev libparse-yapp-perl \ libpopt-dev libreadline-dev nettle-dev perl perl-modules pkg-config \ python-all-dev python-crypto python-dbg python-dev python-dnspython \ python3-dnspython python-gpg python3-gpg python-markdown python3-markdown \ python3-dev xsltproc zlib1g-dev liblmdb-dev lmdb-utils
standalone
avec des logins locaux, c'est inutile
git clone -b samba-4.13.3 https://gitlab.com/samba-team/samba.git samba-4.13.3 cd samba-4.13.3 ./configure make make install
Voilà, l'installation est terminée.
/usr/local/samba/sbin/
smb.conf
sera à créer dans /usr/local/samba/etc
/usr/local/samba/bin
Donc, pour que nous puissions utilisés les commandes habituelles de samba samba-tool, smbpasswd, etc
.
Nous allons donc, compléter notre variable d'environnement PATH
.
Ouvrer le fichier bash.bashrc
(type debian) ou bashrc
(type rehat) qui est dans /etc
vim /etc/bash.bashrc
Ajouté ce qui suit à la fin du fichier :
export PATH=$PATH:/usr/local/samba/bin
Je me suis fabriqué un petit script de lancement samba.tar.gz, il vous suffit de le récupérer, de le décompresser :
tar -xvzf samba.tar.gz
De le mettre dans le répertoire de lancement init.d
:
mv samba /etc/init.d/
Lui mettre les bons 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 désinstaller samba 4:
make uninstall make clean rm -rf /usr/local/samba
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/*
Affiché les connexions actives via Samba :
smbstatus -v
Articles en lien: rôle active directory domain controller, rôle member server, security ADS, rôle standalone, security USER,
source : samba.org, wikipedia