Serveur d'impression

Configurer le serveur d'impression CUPS sur CentOS 8 / RHEL 8 (Bonjour, IPP, Samba, AirPrint) – Serveur d’impression

Le 10 juin 2020 - 2 minutes de lecture

Ce didacticiel vous montrera comment partager une imprimante connectée à un ordinateur CentOS 8 / RHEL 8 avec des clients Windows, macOS et iOS sur le même réseau. CUPS (Common Unix Printing System) est le système d'impression par défaut sous Linux, FreeBSD et macOS. Votre environnement de bureau Linux peut avoir un utilitaire de configuration d'imprimante dédié, mais ils utilisent tous CUPS sous le capot. L'imprimante CUPS peut être partagée sur le réseau à l'aide de plusieurs protocoles, notamment:

  • Bonjour + IPP: Bonjour, également connu sous le nom de mDNS / DNS-SD (découverte de service DNS / DNS multicast), permet à un ordinateur de trouver des services sur le réseau local. IPP (Internet Printing Protocol) est le protocole de transport.
  • SMB: alias Samba, principalement utilisé pour partager des fichiers et des imprimantes avec des clients Windows.
  • AirPrint: Permet aux clients iPhone, iPad et macOS d'imprimer via Wi-Fi.

Chaque protocole a ses avantages et ses inconvénients. Tout d'abord, je vais vous montrer comment installer et configurer CUPS. Ensuite, nous apprendrons comment partager l'imprimante CUPS via les 3 protocoles ci-dessus. Je recommande d'utiliser les 3 méthodes pour partager votre imprimante, afin que les utilisateurs puissent trouver une imprimante disponible sur le réseau local avec un minimum d'effort.

Configurer le serveur d'impression CUPS sur CentOS 8 RHEL 8

Étape 1: installer et configurer CUPS sur CentOS 8 / RHEL 8

L'édition de bureau CentOS 8 / RHEL 8 a CUPS préinstallé. Si vous utilisez l'édition serveur CentOS 8 / RHEL 8, vous devez exécuter la commande suivante pour installer CUPS à partir du référentiel CentOS 8 / RHEL 8 par défaut.

sudo dnf install cups

Ensuite, démarrez CUPS.

sudo systemctl start cups

Activez le démarrage automatique au démarrage.

sudo systemctl enable cups

Vérifiez son statut:

coupes d'état systemctl

Exemple de sortie:

cups-printing-system-centos8-rhel8 "width =" 813 "height =" 214 "srcset =" https://www.linuxbabe.com/wp-content/uploads/2020/03/cups-printing-system-centos8 -rhel8.png 813w, https://www.linuxbabe.com/wp-content/uploads/2020/03/cups-printing-system-centos8-rhel8-400x105.png 400w, https://www.linuxbabe.com /wp-content/uploads/2020/03/cups-printing-system-centos8-rhel8-661x174.png 661w, https://www.linuxbabe.com/wp-content/uploads/2020/03/cups-printing- system-centos8-rhel8-640x168.png 640w "tailles =" (largeur max: 813px) 100vw, 813px "/></p>
<p>Ensuite, modifiez le fichier de configuration principal CUPS avec un éditeur de texte en ligne de commande comme Nano.</p>
<pre>sudo nano /etc/cups/cupsd.conf</pre>
<p>Par défaut, l'interface Web CUPS n'est disponible que sur <code>localhost: 631</code>. Si vous exécutez l'édition serveur CentOS 8 / RHEL 8, vous souhaiterez peut-être faire en sorte que CUPS écoute sur toutes les interfaces réseau disponibles, afin que vous puissiez accéder à l'interface Web CUPS à partir d'autres ordinateurs. Trouvez la ligne suivante.</p>
<pre>Écouter localhost: 631</pre>
<p>Modifiez-le comme suit, donc CUPS écoutera sur toutes les interfaces réseau.</p>
<pre>Port 631</pre>
<p>La ligne suivante permet à CUPS d'afficher les imprimantes partagées sur le réseau local, afin que les autres ordinateurs du même réseau puissent voir les imprimantes connectées à votre ordinateur CentOS 8 / RHEL 8.</p>
<pre>Navigation sur</pre>
<p>Trouvez ensuite les lignes suivantes.</p>
<pre><Location />
  
  
  
  Ordonnance autoriser, refuser
</Location>
</pre>
<p>La configuration ci-dessus autorise uniquement l'accès à l'interface Web CUPS à partir de localhost. Pour autoriser l'accès à partir d'autres ordinateurs du même réseau, ajoutez <code>Autoriser @LOCAL</code> à la configuration comme ci-dessous.</p>
<pre><Location />
  
  
  
  Ordonnance autoriser, refuser
  <strong>Autoriser @LOCAL</strong>
</Location>
</pre>
<p>Si vous souhaitez autoriser l'administration à distance à partir du réseau local, ajoutez-la également pour <code>/ admin</code> annuaire.</p>
<pre><Location /admin>

  

  Ordonnance autoriser, refuser
<strong>  Autoriser @LOCAL</strong>
</Location></pre>
<p>Enregistrez et fermez le fichier. Redémarrez ensuite CUPS pour que les modifications prennent effet.</p>
<pre>sudo systemctl redémarrer les tasses</pre>
<p>Nous devons autoriser les clients du même réseau à accéder au port 631 de votre ordinateur CentOS 8 / RHEL 8.</p>
<pre>sudo firewall-cmd --permanent --add-port = 631 / tcp</pre>
<p>Rechargez le pare-feu pour que la modification prenne effet.</p>
<pre>sudo systemctl reload firewalld</pre>
<p>En plus des principaux <code>cups.service</code>, Il y a aussi <code>cups-Browsed.service</code>, qui est utilisé pour numériser et ajouter une imprimante à partir du réseau local. Si vous souhaitez que votre ordinateur CentOS 8 / RHEL 8 puisse utiliser d'autres imprimantes sur le réseau local, démarrez ce service.</p>
<pre>sudo systemctl start cups-parcouru</pre>
<p>Et activez le démarrage automatique au démarrage.</p>
<pre>sudo systemctl permet de parcourir les cups</pre>
<h2><span class=Étape 2: Installez le pilote de votre imprimante sur CentOS 8 / RHEL 8

Vous devez installer le pilote sur CentOS 8 / RHEL 8, afin qu'il puisse reconnaître et utiliser l'imprimante. Si vous avez une imprimante HP, vous pouvez facilement installer le pilote avec la commande suivante.

sudo dnf install hplip

Je recommande également d'installer le tasses gutenprint package, qui fournit des pilotes CUPS pour Canon, Epson, HP et les imprimantes compatibles.

sudo dnf install gutenprint-cups

Si vous avez d'autres imprimantes, vous pouvez trouver des pilotes sur openprinting.org.

Après avoir installé le pilote, vous devrez peut-être reconnecter l'imprimante au port USB de votre ordinateur CentOS 8 / RHEL 8. Pour tester si le pilote fonctionne correctement, vous pouvez créer un fichier texte sur CentOS 8 / RHEL 8:

echo "LinuxBabe est génial!" > fichier.txt

Exécutez ensuite la commande suivante pour imprimer ce fichier texte à partir de la ligne de commande.

lp file.txt

Il s'agit d'une méthode très rudimentaire, alors ne vous inquiétez pas de la qualité d'impression maintenant.

Étape 3: Partager l'imprimante CUPS via le protocole Bonjour / IPP

Installer Avahi-daemon

CUPS peut annoncer sa présence sur le réseau via le protocole mDNS (DNS multicast) et DNS-SD (DNS Service Discovery), également appelé Bonjour. Pour ce faire, vous devez installer et exécuter avahi-daemon, qui est un service similaire au service Apple Bonjour qui permet aux ordinateurs de découvrir automatiquement les appareils et services partagés sur le réseau local.

sudo dnf install avahi

Nous devons également installer le nss-mdns package du référentiel EPEL, qui est nécessaire pour que les clients résolvent .local domaine sur le réseau.

sudo dnf install epel-release

sudo dnf install nss-mdns

Démarrez avahi-daemon.

sudo systemctl start avahi-daemon

Activez le démarrage automatique au démarrage.

sudo systemctl activer avahi-daemon

Avahi-daemon écoute sur le port UDP 5353. Ouvrez-le dans le pare-feu.

sudo firewall-cmd --permanent --add-port = 5353 / udp

Rechargez le pare-feu pour que la modification prenne effet.

sudo systemctl reload firewalld

Impression sans pilote IPP

Bonjour est utilisé pour annoncer l'imprimante sur le réseau local. Pour que les clients et le serveur CUPS communiquent entre eux, IPP (Internet Printing Protocol) est nécessaire. L'avantage d'IPP est que les clients peuvent utiliser l'imprimante partagée sans installer de pilote sur leurs propres appareils. CUPS prend en charge IPP prêt à l'emploi, vous n'avez donc rien d'autre à faire pour partager l'imprimante CUPS via IPP.

Étape 4: ajouter une imprimante sur les ordinateurs clients

Clients macOS et Linux

Étant donné que macOS et la plupart des distributions de bureau Linux ont CUPS installé comme système d'impression par défaut, une fois que vous avez activé le partage d'imprimante via Bonjour / IPP sur la boîte CentOS 8 / RHEL 8, les utilisateurs macOS et Linux du même réseau peuvent automatiquement utiliser l'imprimante. Lorsqu'ils cliquent sur l'option d'impression dans les applications (traitements de texte, lecteurs de courrier électronique, éditeurs de photos et navigateurs Web), l'imprimante est automatiquement disponible. Ils n'ont pas besoin d'ajouter explicitement l'imprimante. C'est magique.

Si votre ordinateur Linux ne trouve pas l'imprimante, il est possible que votre système ne dispose pas des ippfind commander. Exécutez la commande suivante pour l'installer sur une distribution Linux basée sur Debian.

sudo apt install cups-ipp-utils

Sur CentOS 8, exécutez la commande suivante.

sudo dnf install cups-ipptool

Redémarrez ensuite CUPS sur l'ordinateur client.

sudo systemctl redémarrer les tasses

les fenêtres

Windows 10 est livré avec un client IPP. Tapez imprimante dans la barre de recherche en bas à gauche et ouvrez Imprimantes et scanners. Cliquez ensuite sur Ajouter une imprimante ou un scanner bouton. Il numérisera les imprimantes disponibles sur le réseau local.

imprimantes et scanners Windows 10

Comme vous pouvez le voir, il a trouvé mon imprimante HP Deskjet. Sélectionnez l'imprimante trouvée et cliquez sur Ajouter un appareil. Il sera ajouté à la liste des imprimantes dans quelques instants.

Si vous utilisez une version différente de Windows qui ne peut pas ajouter d’imprimante de cette façon, vous pouvez installer les services d’impression Bonjour. Une fois installé, lancez l'assistant d'imprimante Bonjour. Il numérisera automatiquement les imprimantes disponibles sur le réseau local. Comme vous pouvez le voir sur la capture d'écran, il a trouvé mon imprimante HP.

ajouter une imprimante bonjour sur windows

Cliquez sur Suivant, puis vous devez choisir un pilote pour cette imprimante. Vous pouvez choisir le pilote de classe Microsoft IPP, qui est installé sur le système par défaut.

pilote de classe Microsoft IPP

Cliquez sur Suivant et l'imprimante sera ajoutée à votre système Windows.

Ajout manuel d'imprimante sous Linux

Si, pour une raison quelconque, vous ne voyez pas l'imprimante, vous pouvez en ajouter manuellement une. Pour ajouter une imprimante partagée Bonjour sur Linux de bureau, recherchez vos paramètres système ou le menu d'application pour l'utilitaire de configuration de l'imprimante. Clique le Ajouter pour ajouter une nouvelle imprimante.

ajouter une imprimante de tasses sur linux

Cliquez ensuite sur Imprimante réseau et elle numérisera automatiquement les imprimantes disponibles sur le réseau local. Comme vous pouvez le voir, il a trouvé mon imprimante HP Deskjet. Clique le Vers l'avant bouton.

tasses centos 8 dnssd

Vous pouvez ensuite donner à l'imprimante un nom et une description. J'accepte simplement les valeurs par défaut. Cliquez sur Appliquer et vous avez terminé.

centos 8 tasses imprimante mdns dnssd

Ajout manuel d'imprimante sur macOS

Pour ajouter une imprimante partagée Bonjour sur macOS, accédez à préférences de système -> Imprimantes et scanners. Cliquez sur le bouton plus (+) pour ajouter une imprimante.

ajouter une imprimante bonjour sur macOS

Il numériserait automatiquement les imprimantes disponibles sur le réseau local. Comme vous pouvez le voir, il a trouvé mon imprimante HP Deskjet.

imprimante macOS bonjour

Clique le Ajouter et il apparaîtra dans la liste des imprimantes.

imprimantes et scanners macOS

Étape 5: Partager l'imprimante CUPS via Samba

Samba est une implémentation de protocole SMB / CIFS gratuite et open-source pour Unix et Linux qui permet le partage de fichiers et d'imprimantes entre des machines Unix / Linux et Windows dans un réseau local. Il est principalement utilisé pour partager des fichiers et une imprimante avec des clients Windows.

Pour installer Samba sur CentOS 8 / RHEL 8, exécutez la commande suivante.

sudo dnf install samba

Exécutez ensuite la commande suivante pour démarrer smbd et nmbd un service.

sudo systemctl start smb nmb

Activez le démarrage automatique au démarrage.

sudo systemctl enable smb nmb

Pour vérifier si le service Samba est en cours d'exécution, exécutez les commandes suivantes.

systemctl status smb nmb

Une fois démarré, le smb le démon écoutera sur les ports TCP 139 et 445. Le nmbd écoutera sur les ports UDP 137 et 138. Exécutez la commande suivante pour ouvrir ces ports dans le pare-feu.

sudo firewall-cmd --permanent --add-service = samba

Rechargez le démon de pare-feu pour que la modification prenne effet.

sudo systemctl reload firewalld

Modifiez ensuite le fichier de configuration principal.

sudo nano /etc/samba/smb.conf

Trouvez le [printers] section. Par défaut, cela ressemble à ceci:

[printers]
        
        
        
        comment = Toutes les imprimantes
        chemin = / var / tmp
        imprimable = Oui
        créer un masque = 0600
        navigable = Non

Nous devons changer la valeur de navigable à Oui, afin que les clients du même réseau puissent trouver l'imprimante et ajouter invité ok = oui pour autoriser toute personne du réseau à utiliser l'imprimante.

[printers]
        
        
        
        comment = Toutes les imprimantes
        chemin = / var / tmp
        imprimable = Oui
        créer un masque = 0600
        navigable = oui
                                invité ok = oui

Il est recommandé d'activer spoolssd service lors du partage de l'imprimante. Cela rendra Samba plus efficace lorsqu'il y a beaucoup de travaux d'impression. Ajoutez simplement les deux lignes suivantes dans le [global] pour activer la spoolssd un service.

    rpc_server: spoolss = external
 rpc_daemon: spoolssd = fork

Enregistrez et fermez le fichier. Redémarrez ensuite Samba.

sudo systemctl restart smb nmb

Ajout d'une imprimante partagée Samba sous Windows.

Ouvrez l'explorateur de fichiers, entrez l'adresse IP de l'ordinateur CentOS 8 / RHEL 8 dans la barre d'adresse comme \ 192.168.0.110. L'imprimante doit maintenant être répertoriée.

ajouter une imprimante partagée samba sur Windows 10

Double-cliquez sur l'imprimante pour l'ajouter à votre système Windows. Cliquez ensuite sur le bouton OK pour sélectionner un pilote à installer. Après avoir installé le pilote, l'imprimante sera ajoutée à votre système Windows.

Assistant Ajout d'imprimante Windows

Étape 6: Partager l'imprimante CUPS avec des clients iOS via AirPrint

AirPrint permet aux clients iPhone, iPad et macOS d'imprimer via Wi-Fi sans installer de pilote logiciel sur les appareils clients. CUPS prend en charge Airprint, mais avahi-daemon par défaut, n'annonce pas le service AirPrint sur le réseau local. Nous devons créer un .un service fichier dans le / etc / avahi / services / répertoire de l'imprimante avec un script Python. Exécutez la commande suivante pour télécharger le script sur CentOS 8 / RHEL 8.

wget https://raw.github.com/tjfontaine/airprint-generate/master/airprint-generate.py

Ajoutez l'autorisation d'exécution.

chmod + x airprint-generate.py

Ce script python est fait pour Python2. CentOS 8 / RHEL 8 utilise Python3 par défaut. Nous devons installer Python2.

sudo dnf install python2

Modifiez ce fichier.

nano airprint-generate.py

Changement

#! / usr / bin / env python

à

#! / usr / bin / env python2

Enregistrez et fermez le fichier. Installez ensuite les dépendances.

sudo dnf install gcc python2-devel cups-devel redhat-rpm-config

Installez le module des tasses.

sudo pip2 installer des tasses pycups

Exécutez ensuite ce script.

sudo ./airprint-generate.py -d / etc / avahi / services /

Maintenant, il devrait y avoir .un service fichier sous / etc / avahi / services / répertoire de votre imprimante.

ls / etc / avahi / services /

Exemple de sortie:

Service AirPrint-DeskJet-2130.

Redémarrez Avahi-daemon.

sudo systemctl restart avahi-daemon

Désormais, les clients iOS et macOS du même réseau devraient pouvoir utiliser votre imprimante. La capture d'écran suivante montre que mon iPhone a réussi à trouver une imprimante AirPrint.

centos 8 tasses airprint

Emballer

J'espère que ce tutoriel vous a aidé à configurer un serveur d'impression CUPS sur CentOS 8 / RHEL 8. Comme toujours, si vous avez trouvé cet article utile, alors abonnez-vous à notre newsletter gratuite pour obtenir plus de conseils et astuces. Et vous pouvez également lire l'article suivant pour configurer un serveur de partage de fichiers Samba.

Évaluez ce tutoriel

[Total:[Total:[Total:[Total:6 Moyenne: 5]

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.