Selinux samba

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine SELinux appliqué à Samba (contextes, ports, booléens)
Commandes chcon · semanage fcontext · setsebool
Voir aussi SELinux · Samba · Options selinux

Volet SELinux propre à Samba : paquets, ports réseau, booléens de policy et contextes de fichiers à connaître pour exploiter un partage Samba sous une distribution avec SELinux en mode enforcing. Pour les concepts généraux de SELinux (modes, contextes, booléens), voir SELinux.

Paquets

Paquet Rôle
samba Serveur SMB de base (partage de fichiers/imprimantes)
samba-client Utilitaires clients pour se connecter à des partages Samba/Microsoft
samba-common Commandes communes au client et au serveur
samba-doc Documentation Samba (HTML et PDF)
samba-domainjoin-gui Connexion aux groupes de travail et domaines réseau
samba-swat Interface web de configuration de Samba (SWAT)
samba-winbind Fait de Samba un membre de domaine Microsoft ; expose les utilisateurs Windows sur Linux
samba-winbind-nss Connexions client à Winbind via PAM et NSS

Ports réseau

Port Protocole Service
137 UDP Service de noms NetBIOS
138 UDP Service de datagrammes NetBIOS
139 UDP Service de session NetBIOS
445 TCP Services d'annuaire Microsoft (Samba sur IP direct)

Booléens SELinux

setsebool -P samba_enable_home_dirs 1   # exemple : activer le partage des homes
Booléen Effet
allow_smb_anon_write Autorise l'écriture de fichiers dans les répertoires étiquetés public_content_rw_t
cdrecord_read_content Autorise cdrecord à lire les répertoires Samba (et autres partages réseau)
qemu_use_cifs Accès aux systèmes de fichiers CIFS depuis les VM (activé par défaut)
samba_create_home_dirs Autorise la création de répertoires personnels pour des utilisateurs externes
samba_domain_controller Autorise Samba à agir comme contrôleur de domaine
samba_enable_home_dirs Active le partage des répertoires personnels
samba_export_all_ro Accès lecture seule à tout répertoire, même sans type samba_share_t
samba_export_all_rw Accès lecture/écriture à tout répertoire, même sans type samba_share_t
samba_run_unconfined Autorise l'exécution de scripts non confinés depuis /var/lib/samba/scripts
samba_share_fusefs Autorise le partage de systèmes de fichiers montés via FUSE (ex. NTFS)
samba_share_nfs Autorise le partage de systèmes de fichiers montés en NFS
use_samba_home_dirs Autorise l'usage d'un serveur distant pour les répertoires personnels Samba
virt_use_samba Autorise une VM à accéder aux fichiers montés en CIFS

Lister/filtrer les booléens réellement modifiés par rapport au défaut : voir SELinux (section Booléens).

Contexte de fichiers

chcon -R -t samba_share_t /share                         # changement ponctuel, non persistant
semanage fcontext -a -t samba_share_t /share              # règle persistante (survit à un restorecon/relabel)
restorecon -Rv /share                                      # applique la règle enregistrée

systemctl restart smb

Voir aussi

  • SELinux — concepts généraux, modes, contextes, booléens
  • Samba — présentation générale du service
  • Rhcsa samba · Samba rhel7 — configuration détaillée des partages
  • Options selinux — catalogue de booléens par service (HTTPD, FTP, NFS, SMTP, SSH…)