Friday, 8 February 2013

Secure in my CUPS

So I was struggling to add my newly purchased HP Desktop printer to my Ubuntu 10.04 ( old skool ) laptop.

Whenever I attempted to remove my old Canon and Kodak printers, or add the new HP printer, I was prompted to authenticate as root even though I was logged in as a non-root user, which is a pain as Ubuntu doesn't typically use the root account, instead allowing one to use sudo bash to achieve root.

I then tried to access CUPs via the web UI: -

https://localhost:631/admin

Similar issues there - I received the exception Forbidden when I tried to remove either of the two old printers, despite authenticating as my non-root user ( claire ).

When I checked the system messages: -

$ dmesg

I saw: -

E [08/Feb/2013:17:48:40 +0000] cupsdAuthorize: pam_authenticate() returned 7 (Authentication failure)!
E [08/Feb/2013:17:51:33 +0000] cupsdAuthorize: pam_authenticate() returned 7 (Authentication failure)!
E [08/Feb/2013:17:51:35 +0000] cupsdAuthorize: pam_authenticate() returned 7 (Authentication failure)!

When I checked the CUPS error log ( /var/log/cups/error_log ). I saw: -

E [08/Feb/2013:18:59:34 +0000] Returning HTTP Forbidden for CUPS-Delete-Printer (ipp://localhost/printers/Canon-iP4000) from localhost
E [08/Feb/2013:19:00:10 +0000] Returning HTTP Forbidden for CUPS-Delete-Printer (ipp://localhost/printers/Canon-iP4000) from localhost


Following this forum post: -


I checked the CUPS configuration for the relevant administration group: -

$ cat /etc/cups/cupsd.conf | grep SystemGroup

...SystemGroup lpadmin


and then checked the groups of which my user ( claire ) was a member: -

cat /etc/group | grep -i claire

lp:x:7:claire
admin:x:119:claire
claire:x:1000:


That explained it - claire needed to be a member of the lpadmin group.

That was easily fixed: -

$ usermod -G lp,admin,lpadmin claire

and then verified: -

$ cat /etc/group | grep -i claire

...
lp:x:7:claire
lpadmin:x:105:claire
admin:x:119:claire
claire:x:1000:


Having done that, all was well, and I was able to remove the Canon and Kodak printers.

Finally, I downloaded the required HP Linux Imaging and Printing (HPLIP) software for the new printer from the HPLIP site.

This is the link to what I ended up downloading: -


and this page takes one through the installation, using a terminal session ( of course !! ).

When I upgrade the Linux box to 12.10, I'll need to go back through the same set of steps …..

And now I have a lovely shiny new HP 3055a printer up and running.

This printer was recommended by Which? as being a good combination of function, price and affordability ( running costs ).

I bought it in Argos for £45 ( as I was in dire need of a working printer earlier this week ), but it's almost certainly cheaper online.

So far, so good, it was easy to set up, and has WiFi, which means that I can use AirPrint from my iPhone, iPad, Mac and … now the Ubuntu boxen.

Sweet :-)

*UPDATE*

As recommended by my Cat: -

One

Two

No comments:

Note to self - use kubectl to query images in a pod or deployment

In both cases, we use JSON ... For a deployment, we can do this: - kubectl get deployment foobar --namespace snafu --output jsonpath="{...