Aller à : navigation, rechercher

SAMBA - Paquets à jour samba DEB, samba RPM ou comment compiler samba

Besoin d'accompagnement, n'hésitez pas à nous contacter chez http://www.tranquil.it 

Depuis nos paquets DEB

!! Nos paquets samba ne sont actuellement pas signés, il y aura donc une alerte lors de l'installation. !!

Ils sont actuellement validé uniquement pour Debian 8 Jessie 64 Bits

2 options sont possibles:

  • fixer le dépôts sur une version, exemple pour la version 4.6.4:
echo "deb http://samba.tranquil.it/jessie64/samba-4.6.4/   ./" > /etc/apt/sources.list.d/tissamba.list
  • utiliser la version actuellement "stable" que nous installons lors de nos prestations Samba4:
echo "deb http://samba.tranquil.it/jessie64/stable/   ./" > /etc/apt/sources.list.d/tissamba.list
apt-get update
apt-get install samba winbind libnss-winbind krb5-user

Depuis nos paquets RPM

prérequis

Pour simplifier l'installation et la configuration, nous allons désactiver SeLinux et la Firewall

  • Désactivation SeLinux, dans le fichier /etc/selinux/config, remplacer la ligne suivante puis rebooter
SELINUX=disabled
  • Désactiver le firewall
systemctl stop firewalld
systemctl disable firewalld
  • Suppression de Avahi Daemon (protocol mdns / bonjour)
systemctl stop avahi-daemon.service
systemctl disable avahi-daemon.service
systemctl stop avahi-daemon.socket
systemctl disable avahi-daemon.socket

Installer les RPM Samba 4

Nos rpm sont actuellement validés pour Centos 7 64 Bits 2 options sont possibles:

  • Fixer le dépôt sur une version, exemple pour la version 4.6.4:
echo "[tis-samba]
name=tis-samba
baseurl=http://samba.tranquil.it/centos7/samba-4.6.4/
gpgcheck=0" > /etc/yum.repos.d/tissamba.repo
  • Utiliser la version "stable" que nous installons lors de nos prestations Samba4:
echo "[tis-samba]
name=tis-samba
baseurl=http://samba.tranquil.it/centos7/stable/
gpgcheck=0" > /etc/yum.repos.d/tissamba.repo
 yum install samba samba-winbind samba-winbind-clients krb5-workstation

Compiler son propre samba

Prérequis

Cette documentation se base sur la distribution debian Jessie

La distribution Jessie contient un paquet SaMBa 4.2.10, mais celui ci ne bénéficie pas des dernières évolutions du projet Samba qui avance très vite au niveau du contrôleur de domaine. Il reste donc préférable pour l'instant de recompiler son samba soi-même à partir des sources officielles (rien de bien méchant, nous allons voir).

Installer les dépendances

apt-get update
export DEBIAN_FRONTEND=noninteractive
apt-get install build-essential libacl1-dev libattr1-dev \
libblkid-dev libgnutls28-dev libreadline-dev python-dev libpam0g-dev \
python-dnspython gdb pkg-config libpopt-dev libldap2-dev \
dnsutils libbsd-dev attr krb5-user docbook-xsl libcups2-dev acl \
libgpgme11-dev python-gpgme libgpgme11-dev python-gpgme python-m2crypto
unset DEBIAN_FRONTEND

Rajouter les acl (si partition ext3) et les attribut étendus dans le fichier /etc/fstab

proc            /proc           proc    defaults        0       0
/dev/xvda1 /               ext4    errors=remount-ro,barrier=0,acl,user_xattr 0       1
/var/swapfile   none    swap    sw      0 0

Forcer le système à prendre en compte le user_xattr et les acls

mount -o remount,user_xattr,acl /

Compilation samba4

Compiler samba4

Récupérer le tar.gz, compiler et installer (ça peut prendre 10-15 minutes, donc patience)

cd /root
wget --no-check-certificate https://www.samba.org/samba/ftp/stable/samba-4.6.4.tar.gz
tar -zxvf samba-4.6.4.tar.gz
cd samba-4.6.4
./configure
make 
make install

Compiler samba4 avec les attributs UID/GUID

  • Récupérer le tar.gz, compiler et installer (bien noter le --with-ldap)
cd /root
wget --no-check-certificate https://www.samba.org/samba/ftp/stable/samba-4.6.4.tar.gz
tar -zxvf samba-4.6.4.tar.gz
cd samba-4.6.4
./configure --with-ldap
make 
make install


Par défaut samba sera compilé dans le répertoire: /usr/local/samba

il vous faudra penser a adapter les chemins que nous donnerons dans les prochaines documentations:

l’arborescence d'un samba compilé par défaut:

tree -L 1 -d /usr/local/samba/
/usr/local/samba/
├── bin
├── etc
├── include
├── lib
├── libexec
├── private
├── sbin
├── share
└── var

Exemple pour la commande samba-tool se trouve:

/usr/local/samba/bin/samba-tool --version

Rajouts divers

Rajout des outils samba dans $PATH

echo "export PATH=$PATH:/usr/local/samba/sbin:/usr/local/samba/bin" >> /root/.bashrc
source /root/.bashrc

En cas de samba compilé, voici un fichier systemctl

Mettre le serveur samba en démarrage automatique. Créer le fichier init.d suivant la page SAMBA - Fichier init.d samba4