Ceci est une ancienne révision du document !
Comment configurer un ordinateur en "serveur d'impression" ?
Cette page explique comment configurer un poste Ubuntu en serveur d'impression. Cette configuration va permettre de partager une imprimante qui est raccordée directement à cet ordinateur.
La schéma suivant décrit cette situation :
Pré-requis
- le PC serveur (celui à configurer), qui va partager l'imprimante, doit être en IP fixe sur le réseau local (seulement pour 7.04 et précédents).
Configuration du poste Serveur
Ubuntu 9.04 et supérieurs
- Ouvrir le gestionnaire de configuration d'impression :
- Système → Administration → Impression
- Installer l'imprimante si ce n'est pas déjà fait :
- Consulter cette page pour plus d'informations
- Ouvrir le partage global :
- Serveur → Paramètres
- Cocher la case "Publier les imprimantes partagées connectées à ce système"
- Cliquer sur "Valider"
- Ouvrir le partage pour votre imprimante :
- Clic droit sur l'imprimante à partager → Cocher la case "Partagée"
- Configurer le pare-feu
- Autoriser le port TCP 631 en entrée
Problème possible
Si après la configuration vous ne pouvez toujours pas partager votre imprimante, éditez le fichier /etc/cups/cupsd.conf en remplaçant la variable @LOCAL par votre adresse réseau 192.168.* dans la section Allow shared printing…
<Location /> # Allow shared printing... Order allow,deny # Allow @LOCAL Allow 192.168.* </Location>
Ensuite, relancez CUPS via la commande dans un terminal:
sudo service cups restart
Ubuntu 8.04 LTS
- Ouvrez le gestionnaire de configuration d'imprimante :
- Système → Administration → Impression pour Ubuntu,
- Applications → Paramètres → Impression pour Xubuntu,
- Ajouter une imprimante, si ce n'est déjà fait. (voir cette page pour plus d'informations).
- Sélectionnez "Paramètres du serveur" et cochez la case "Partager les imprimantes publiées connectées à ce système".
- Ensuite, sélectionnez chaque imprimante locale à partager dans la liste de gauche et, dans l'onglet "Comportements" :
- vérifiez que la case "Activé" est bien cochée,
- cochez la case "Partagée".
- Normalement cela suffit pour activer le partage côté serveur.
Problème possible
Après configuration, je ne pouvais toujours pas partager mon imprimante, j'ai dû intervenir dans le fichier /etc/cups/cupsd.conf
Son contenu par défaut, dans le section relative au partage d'imprimante était celui-ci :
# Share local printers on the local network. Browsing On BrowseOrder allow,deny BrowseAddress @LOCAL DefaultAuthType Basic <Location /> # Allow shared printing... Order allow,deny Allow @LOCAL </Location>
Il faut croire que je devais avoir un problème avec la variable @LOCAL car cela ne suffisait pas.
j'ai donc remplacé
Allow @LOCAL
par
Allow 192.168.*
Mais notez que ce cas est le plus répandu, loin devant le 10.0.*
Cela a suffi pour résoudre le problème de partage, après avoir relancé CUPS via cette commande dans un terminal :
sudo /etc/init.d/cupsys restart
Autre problème possible
Lors d'une tentative d'installation d'imprimante à partir d'une machine différente où est installée CUPS, et malgré la configuration en place décrite ci-dessus, il est possible d'avoir l'erreur ci-dessous :
426 Upgrade Required
Après recherche, CUPS, par défaut, tente d'utiliser SSL. il y a de fortes chances que SSL soit mal configuré. Dans l'hypothèse de ne pas reconfigurer SSL, vous pouvez ajouter la ligne suivante dans le fichier /etc/cups/cupsd.conf :
DefaultEncryption Never
Puis relancer le service cupsys :
sudo /etc/init.d/cupsys restart
Ubuntu 6.06 LTS serveur
Ouvrir Système → Administration → Impression et ajouter une imprimante.
Après avoir installé une imprimante, choisissez-la par défaut puis cochez simplement dans Paramètres globaux les deux options à dispositions (Détecter des imprimantes LAN et Partager des imprimantes). Vos imprimantes ou plutôt votre imprimante devrait maintenant être disponible sur le réseau après avoir redémarré l'ordinateur ou seulement le serveur d'impression1) .
Ouverture du Port 631 - Optionnel
Si votre pare-feu est activé, (par défaut si vous n'avez rien fait, il est désactivé sous Ubuntu).
Il faut ouvrir le port 631 (ipp) (comme décrit dans la suite), si vous n'avez pas de pare-feu activé ne faites rien !
- Ouvrir Firestarter: dans le menu Système → Administration → Firestarter.
- Sélectionner l'onglet Politique.
- Dans la partie inférieure, Autoriser le service, faire un clic-droit pour ajouter une nouvelle règle.
- Inscrire le port 631 (le nom du service IPP se remplit automatiquement) ainsi que l'adresse IP du client.
- Quitter Firestarter
CUPS : universel, pratique, fiable
Si CUPS est installé, une interface WEB est disponible à l'adresse http://localhost:631. Cette jolie interface est celle de CUPS, et à partir de là, votre paramétrage peut se faire en quelques clics de souris.
Ajouter une imprimante
Sous la bannière bienvenue vous trouverez "ajouter une imprimante"… Suivez les instructions.
Autoriser les utilisateurs à s'en servir
Aller dans l'onglet "administration" (2e en partant de la gauche), cocher 2 ou 3 lignes :
- l'une concernant le partage publique,
- l'autre pour autoriser l'impression depuis internet,
- et la dernière si vous le souhaitez (facultatif, mais bien pratique) l'administration à distance.
Cette dernière vous permettra de faire un petit coucou à votre CUPS et de le configurer depuis n'importe quel poste de votre réseau local, en y accédant ainsi :
http://<@ip_du_cups_de_l'imprimante>:631
Ou même depuis l'Internet (la 2e ligne servant à ça), à condition que votre connexion à Internet redirige le port 631 vers votre ordinateur (enfin celui disposant du CUPS).
Un exemple simple
Admettons que votre imprimante soit connectée soit en USB, soit en parallèle (ou tout autre interface), à un ordinateur dont l'adresse IP est 192.168.1.3 dans le réseau local. Alors, accéder à cette imprimante (et surtout au CUPS qui la concerne) se fera via http://192.168.1.3:631/.
La petite astuce
Plein d'imprimantes sur le réseau ? Pas de panique. À chaque CUPS son imprimante, mais aussi celle de l'autre. Il vous suffira d'ajouter une imprimante, connectée en IPP (Internet Printing Protocol) et d'entrer en guise d'adresse :
ipp://<@ip_du_cups_de_l'imprimante>:631/printers/<nom_de_l'imprimante_sur_ce_cups>/
Exemple simple
Si mon ordinateur, dont l'@IP est 192.168.1.3 sur le réseau local dispose d'une imprimante parallèle configurée préalablement, et dont le nom est TralAlA123, alors l'adresse PII2) est la suivante :
ipp://192.168.1.3:631/printers/TralAlA123
Et celle-ci reste valable sur tout le réseau local.
Le dernier coup de pouce
Une aide formidable est fournie. L'aide est bien documentée (bien qu'améliorable, bien sûr), mais en Anglais, ce qui risque d'en tuer plus d'un.
Configurer un client pour accéder à l'imprimante
Configuration d'un client Ubuntu 8.04 LTS ou suivants
Automatiquement
- Ouvrez le gestionnaire de configuration d'imprimante:
- Système → Administration → Impression pour Ubuntu,
- Applications → Paramètres → Impression pour Xubuntu,
- Puis sélectionnez Paramètres du serveur et cocher la case Montrer les imprimantes partagées par les autres systèmes,
- Cliquez sur Appliquer,
- Fermez puis réouvrez le configurateur,
- Cliquez sur Actualiser : l'imprimante devrait apparaître en dessous de Imprimantes distantes,
- Paramétrez ensuite comme imprimante par défaut si vous le voulez.
Manuellement
Si l'auto-détection ne marche pas, ou si l'ordinateur qui partage l'imprimante ne partage pas les données permettant l'auto-détection, suivez cette méthode :
- ouvrez : Système → Administration → Impression,
- puis cliquez sur : Nouvelle imprimante;
- dans la liste, choisissez : Internet Printing Protocol (ipp);
- dans la case Hôte : tapez l'adresse IP du serveur d'impression, dans la case File d'attente : tapez le nom de l'imprimante (telle qu'elle est nommée sur le serveur) et cliquez sur Vérifier…. Un message vous dira si l'imprimante est accessible, sinon vérifiez vos paramètres.
- dans la fenêtre qui apparaît, choisissez l'imprimante que vous voulez utiliser, et faites Valider,
- faites Suivant, et choisissez le pilote de l'imprimante distante,
- arrivé au choix du nom de l'imprimante, donnez lui un nom, et faites Appliquer,
- ensuite, dans la fenêtre principale, cliquez sur Appliquer et ensuite Actualiser, l'imprimante devrait apparaître en dessous de Imprimantes Réseau,
- il vous suffira ensuite de la paramétrer comme imprimante par défaut si vous le voulez.
Explication et détection du problème
Essayez de faire un ping sur votre machine serveur (pas l'IP !) si ça ne marche pas vous tenez le coupable ! CUPS présente à mon avis un petit défaut à ce niveau-là. Une connexion réseau et CUPS peut très bien se faire en utilisant seulement des adresses IP, mais à la détection d'une imprimante réseau CUPS enregistre son adresse IPP en utilisant le nom d'hôte du serveur, ensuite à l'impression c'est le nom en question qui est utilisé pour chercher le serveur. Or… le nom d'hôte du serveur n'est pas toujours connu du client.
Résolution du problème
Il vous suffit de faire connaître le nom d'hôte du serveur au client. Concrètement, il suffit de modifier le fichier /etc/hosts pour ajouter une ligne au début (sans effacer le reste) avec l'IP du serveur d'impression suivie de son nom. Exemple :
192.168.xx.xx nom_du_serveur
Si vous ne savez pas par quoi remplacer les xx.xx et avez accès au serveur, il suffit d'y taper « ifconfig
» dans un terminal. Vous y trouverez une ligne avec un message du type :
inet adr:192.168.1.10
C'est justement l'adresse IP de la machine sur le réseau local. Si vous n'avez pas la possibilité de faire cela, demandez à l'administrateur du serveur.
Concernant le nom d'hôte, sur votre machine cliente il suffit de regarder là : http://localhost:631/printers/ c'est la page des imprimantes de CUPS. Cherchez l'imprimante réseau située sur le serveur qui vous intéresse et vous devez voir une ligne du type :
URL du matériel : IPP://nom_du_serveur:631...
C'est ce nom qu'il faut utiliser pour votre fichier /etc/hosts.
Voilà, avec ça vous devriez pouvoir faire "bonne impression"
Contributeurs : figaro, dmoyne, Incoming, KinderSurpriZ, Fabien26, dsi0743, DarkHylian, Mysteroïd, guigouz.