Comment administrez-vous CUPS à distance à l'aide de l'interface Web?

44

J'ai un serveur Ubuntu dans mon appartement et je viens de recevoir une imprimante, il est donc temps de partager!

Dans le passé, j'utilisais CUPS sur mon bureau et je dirigeais simplement les navigateurs vers localhost: 631 pour configurer les éléments. Puis-je utiliser les outils d’administration Web à distance?

Je joue avec le /etc/cups/cupsd.conffichier et je suis actuellement sur le point de pouvoir diriger un navigateur sur mon réseau local vers l'adresse IP du serveur: 631, mais l'erreur 403 Forbidden s'affiche.

Si cela n’est pas possible ou si, pour des raisons de sécurité, il est déconseillé d’autoriser un administrateur distant de CUPS, serait-il possible de le faire à l’aide d’un tunnel SSH vers le serveur?

Evan
la source

Réponses:

47

J'ai trouvé cette façon d'être plus simple.

# cupsctl --remote-admin --remote-any --share-printers

Il mettra à jour le /etc/cups/cupsd.conffichier et relancera Cups pour vous, en enregistrant une sauvegarde de la configuration précédente dans le même dossier.

Cette méthode est similaire à celle présentée dans le guide officiel de CUPS sur le partage d’imprimantes . J'ai trouvé les options --remote-admindans man cupsctl.

basilikode
la source
5
Il est regrettable de voir de nombreuses personnes consulter / référencer des documents, des blogs et d'autres sources spécifiques à une distribution plutôt que l'aide en ligne de CUPS. : /
basilikode
1
Toujours utiliser le moyen recommandé en premier! Ils ont fait le logiciel!
FreeSoftwareServers
6
C'est probablement parce qu'ils ne savent pas quelles questions poser. souvent, pour utiliser la documentation, vous devez soit savoir exactement ce que vous cherchez, soit lire le manuel en entier - pas amusant, et prend beaucoup trop de temps. Nous ne voulons pas non plus être des experts de CUPS, nous voulons simplement savoir comment inverser un petit commutateur.
Dagrooms
1
Je devais le faire sudo service cups restartaprès cela, mais ensuite cela a fonctionné! :) (debian 10 32bit)
hanshenrik
pas de redémarrage nécessaire pour moi. Debian 8,9 et Arch
eri
31

Pour ce faire, je réalise normalement un tunnel sur ssh via un port arbitraire:

ssh [email protected] -T -L 3631:localhost:631

Sécurisé et permet un accès à distance. Ne résoudra pas tous les problèmes mais utile pour les accès irréguliers.

Cheetos O'Lay
la source
2
Cette astuce est géniale: sans rien changer à la configuration des gobelets, vous pouvez gérer les gobelets en toute sécurité.
Gerlos
L' -Toption n'est pas vraiment nécessaire; cela empêchera simplement la création d'une session de terminal. Laissez-le de côté si vous avez également besoin d'une session de terminal pour une raison quelconque.
user149408
30

Mission accomplie! Cette page m'a beaucoup aidé .

Tout ce que je devais faire était d'ajouter "Autoriser tout" à l'accès au serveur et aux pages d'administration afin que ma configuration ressemble maintenant à ceci:

# Restrict access to the admin pages...
<Location /admin>
  Order allow,deny
  Allow all
</Location>

# Restrict access to configuration files...
<Location /admin/conf>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
</Location>

Maintenant, je dois juste autoriser uniquement les personnes de mon réseau local à accéder aux pages d’administrateur et aux fichiers de configuration :) (bien que ce ne soit probablement pas un gros problème puisque je n’ai pas de transfert de port pour 631 configuré sur le routeur? ).

EDIT: Pour n’autoriser que certains ordinateurs, j’aurais pu faire quelque chose comme

<Location /admin>
      Order allow,deny
      Allow from 10.10.10.5
</Location>

Ou pour l'ensemble du sous-réseau 10.10.10,

<Location /admin>
      Order allow, deny
      Allow from 10.10.10.*
</Location>
Evan
la source
2
Voir aussi: help.ubuntu.com/10.04/serverguide/C/cups.html
Jorge Castro Le