web-dev-qa-db-fra.com

Comment obliger Samba à demander un mot de passe pour accéder à une imprimante?

J'ai une imprimante hébergée sur Ubuntu 14.04 LTS que j'ai été chargée de verrouiller. L'imprimante doit être accessible aux utilisateurs légitimes de Windows (7/10) et d'Ubuntu 14.04, mais pas généralement accessible.

À ce stade, je peux obtenir la diffusion de l'imprimante via CUPS et Samba, et je peux imprimer à partir de l'imprimante depuis n'importe quel ordinateur Windows, mais je ne peux pas amener le serveur à contester la tentative d'impression avec une demande d'authentification. La configuration Samba pose un défi pour un nom d'utilisateur/mot de passe lors de la tentative d'accès à un dossier partagé sur le serveur Ubuntu à partir d'une machine Windows, mais pas lors de l'ajout d'une imprimante.

Veuillez me faire savoir si je peux fournir des informations supplémentaires ou si ce que j'essaie de faire est impossible.

Je vous remercie

1
Eltargrim

J'ai eu un problème similaire récemment et le message lié dans le commentaire singulier ci-dessus n'a pas réellement répondu à la question posée ici (configuration de Windows avec des partages d'imprimante authentifiés Samba, PAS l'inverse). Je voulais autoriser uniquement l'accès authentifié aux imprimantes partagées à partir de Linux. De plus, j'utilise Ubuntu Server LTS, ce qui signifie un accès en ligne de commande uniquement (via SSH dans mon cas), donc la plupart des tutoriels/guides que je trouve montrent l'interface graphique d'Ubuntu et sont donc inutiles pour moi.

Le [printers] section avec l'option printable = yes définit le mappage vers CUPS. Réglage browseable = no empêche cette option d'être affichée dans les listes d'imprimantes. C'est la bobine d'impression réelle pour les travaux d'impression, donc cela a du sens. Cependant, par défaut, toute personne disposant d'une configuration d'imprimante correctement configurée pointée vers le serveur Samba et pouvant y accéder a un accès implicite à l'impression sans privilèges (c'est-à-dire un accès anonyme). Pour forcer l'accès authentifié au spouleur d'impression, j'ai utilisé le valid users = bob, joe, mary option.

Windows recherche le print$ nom de partage pour les imprimantes. La section associée [print$] déclare browseable = yes, qui permet à toute personne se connectant au serveur Samba de voir les imprimantes disponibles. Même si guest ok = no est la valeur par défaut, Samba autorise toujours ce que je considère comme un accès anonyme à n'importe quelle imprimante. Pour forcer l'authentification, j'ai utilisé le valid users = bob, joe, mary option. Si vous souhaitez masquer les imprimantes en premier lieu aux utilisateurs non authentifiés, vous pouvez essayer d'utiliser browseable = no puis utilisez le include = /etc/samba/print.%U.conf option pour changer browseable = yes pour des utilisateurs spécifiques selon ce post Unix StackExchange:

https://unix.stackexchange.com/questions/245785/show-specific-samba-shares-only-to-some-users

Rassemblant tout cela, /etc/samba/smb.conf ressemble maintenant à:

[printers]
   comment = All Printers
   browseable = no
   path = /var/spool/samba
   printable = yes
   guest ok = no
   read only = yes
   create mask = 0700
   valid users = bob, joe, mary

[print$]
   comment = Printer Drivers
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = no
   valid users = bob, joe, mary

Un effet secondaire d'exiger l'authentification que j'ai rencontré sous Windows était que la tentative de double-clic sur une imprimante pour la Open (le verbe par défaut sous Windows) en tant qu'utilisateur non reconnu provoquait l'affichage d'une boîte de message "Accès refusé". s'affiche mais n'a jamais été invité à fournir des informations d'identification. Windows transmettait probablement les informations d'identification Windows de cet utilisateur dans cette instance. Heureusement, un clic droit et la sélection de l'option "Se connecter ..." ont demandé des informations d'identification. Après une connexion réussie, j'ai pu Open l'imprimante, qui m'a demandé de configurer manuellement mes pilotes d'imprimante car je n'essaie pas de les livrer via Samba et dépasse la portée de la réponse à cette question. Ensuite, j'ai réussi à imprimer une page de test et tout allait bien.

1
CubicleSoft