5.2 The web interface

While CUPS, like most other Linux utilities, has a complete command line based configuration interface, it also has a more user-friendly web interface. By default, this interface can be reached on the machine running CUPS as http://locahost:631/admin. However, a server may not have any web browser installed, making this interface not very practical on the server itself.

You can edit the configuration file to allow remote administration. You can also just overwrite the file /etc/cups/cupsd.conf with the following content:

LogLevel warning  
SystemGroup lpadmin  
# Allow remote access  
Port 631  
Listen /var/run/cups/cups.sock  
# Show shared printers on the local network.  
Browsing On  
BrowseOrder allow,deny  
BrowseAllow all  
DefaultAuthType Basic  
<Location />  
  # Allow remote administration...  
  Order allow,deny  
  Allow @LOCAL  
</Location>  
<Location /admin>  
  # Allow remote administration...  
  Order allow,deny  
  Allow @LOCAL  
</Location>  
<Location /admin/conf>  
  AuthType Default  
  Require user @SYSTEM  
  # Allow remote access to the configuration files...  
  Order allow,deny  
  Allow @LOCAL  
</Location>  
<Policy default>  
  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job>  
    Require user @OWNER @SYSTEM  
    Order deny,allow  
  </Limit>  
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>  
    AuthType Default  
    Require user @SYSTEM  
    Order deny,allow  
  </Limit>  
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs>  
    AuthType Default  
    Require user @SYSTEM  
    Order deny,allow  
  </Limit>  
  <Limit Cancel-Job CUPS-Authenticate-Job>  
    Require user @OWNER @SYSTEM  
    Order deny,allow  
  </Limit>  
  <Limit All>  
    Order deny,allow  
  </Limit>  
</Policy>

You have to restart the CUPS daemon after this:

/etc/init.d/cups restart  
  

At this point, you can access the administration page from another computer using a web browser. The URL should be similar to http://10.0.2.15:631/admin. Note that the authentication uses HTTP and not HTTPS, which means that your username and password are not safe from sniffers! Consequently, it is best to do this using a machine that is connected to the same switch as the server to prevent exposure to sniffers.

The web interface of CUPS is fairly self-explanatory.