Skip to content

Paramètres mal échappés dans smb.conf : home utilisateur non créé

Bonjour,

Le fichier de configuration smb.conf généré à partir de smb.conf.example dans les sources n'échappe pas correctement les paramètres sur l'appel au script logon.sh. Les variables remplacées automatiquement par Samba peuvent être vides (constaté par exemple avec le %m sur un login depuis un Linux avec winbind). Les paramètres sont alors décalés et mal interprétés.

Ceci cause en particulier un bug sur un compte qui se logge pour la première fois depuis un Linux, dans ce cas, les scripts prévus ne sont pas appelés, en particulier mkhome.sh ne tourne pas. L'utilisateur se retrouve loggé mais son home n'est pas créé sur le serveur.

Le patch en pièce-jointe ajoute des guillemets pour éviter ce souci. En cas de variable vide dans Samba, c'est désormais bien une chaine vide qui est passée en paramètre à logon.sh.

Il peut y avoir d'autres soucis (en particulier si l'une des variables, dont le contenu provient du client, contient des caractères spéciaux pour le shell).

quote_smb_conf_et_logon.patch