Follow-Up on CUPS server


I decided to switch to an x86 PC instead of continuing to use the raspberry pi as my print server. eventually i would like to move to virtualized servers in xcp-ng with this new hardware. for now, i’m just doing a a “lift-and-shift” project to move print server to debian12.

because I’m staying with debian, the move should be pretty easy. very similar commands, but possibly integrating a better understanding of the setup.

step 1: install debian 12

to do this, i simply went to their website and downloaded a usb iso, wrote it to a bootable usb using rufus 4.1.

then, during the installation process options, i made sure to unselect any of the GUI’s and selected SSH.

also, made sure to create a password for both root user and a second admin user.

Step 2: install cups

cups is simple as running:

apt install cups

make sure to use sudo if needed, or log-in and run command as root.

after Cups is installed, then you’ll want to setup the permissions and allow remote connections by running: (which enables the web server for config)

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

i am still looking into the differences of “–remote-admin” and “–remote-any” are doing. that’s different than what i did for the raspberry pi config.

Step 3: configure cups

once that’s done, the webserver should be running, and you can log in using the ip address of the server on port 631.

CUPS can be configured and monitored using a web interface, which by default is available at http://localhost:631/admin. The web interface can be used to perform all printer management tasks.

if you need to find your computer’s ip address, you can run this. ‘address’, ‘addr’ and ‘a’ can all be used interchangeably. you could also just do “ip a” as a quick way.

ip --brief address show

In order to perform administrative tasks via the web interface, you must either have the root account enabled on your server, or authenticate as a user in the lpadmin group. For security reasons, CUPS won’t authenticate a user that doesn’t have a password.

To add a user to the lpadmin group, run at the terminal prompt:

sudo usermod -aG lpadmin <username>

references/further reading

  • https://wiki.debian.org/SystemPrinting#CUPS_as_Print_Server_for_Windows_Machines
  • https://wiki.debian.org/SystemPrinting#webinterface
  • https://ubuntu.com/server/docs/service-cups

Further documentation is available in the Documentation/Help tab of the web interface.


Leave a Reply

Your email address will not be published. Required fields are marked *