'Hidden database settings' in smeserver-cups


Author: Robert van den Aker (robert2 AT dds DOT nl)
Version: 2005.12.18.0

There are two 'hidden properties' for the database key for cupsd in /home/e-smith/db/configuration, the master configuration file of your SME Server. With these properties you can change the behavior of the CUPS server from the default. Setting these properties makes CUPS a bit more 'permissive' than the default, so be careful when you use them.

In addition there is a database key for cups-lpd, a 'mini-server' for the Line Printer Daemon protocol.

The SystemGroup database property

The SystemGroup property corresponds to the SystemGroup directive in the CUPS server configuration file. The SystemGroup is the group of users who have administrative control over all print jobs in the job queue. Normally, users can only control their own jobs. SystemGroup members can control anyone's jobs, so be careful who you put in this group. Here's how to set the SystemGroup property:

  1. Make a new group through the "Groups" panel in the server-manager. For our example we'll use the group name "lpadmin". Don't make this group too inclusive.

  2. Set the SystemGroup property for the cupsd key in the configuration database. Example:

    [root@hostname ~]# /sbin/e-smith/db configuration setprop cupsd SystemGroup lpadmin

  3. Signal the cups-reconfigure event to reconfigure and restart CUPS:

    [root@hostname ~]# /sbin/e-smith/signal-event cups-reconfigure

The default SystemGroup is root.

The TrustedHosts database property

Network hosts that are added to the TrustedHosts setting receive browse packets from the CUPS server and their users can access the CUPS server without a password. See this section for a reason why you would want to do that. Here's how to set the TrustedHosts property:

  1. Set the TrustedHosts property for the cupsd entry in the configuration database. This must be a comma-separated list of IP addresses or a single IP address in dotted quad notation. These hosts must have a route to the local IP of your SME Server. The TrustedHosts should preferably have reserved/static DHCP leases. Example:

    [root@hostname ~]# /sbin/e-smith/db configuration setprop cupsd TrustedHosts 192.168.1.65,192.168.1.68,192.168.1.69

  2. Signal the cups-reconfigure event to reconfigure and restart CUPS:

    [root@hostname ~]# /sbin/e-smith/signal-event cups-reconfigure

By default there are no TrustedHosts.

The cups-lpd database key

The CUPS distribution includes a mini-server for the Line Printer Daemon protocol called cups-lpd. This can be enabled if you need to serve 'legacy' LPD clients. Note that cups-lpd does not use the access control settings in cupsd.conf nor does it have its own access control configuration like LPRng does in lpd.perms; instead access control is handled by tcpsvd. Here's how to enable cups-lpd:

  1. Enable the cups-lpd service in the configuration database:

    [root@hostname ~]# /sbin/e-smith/db configuration setprop cups-lpd status enabled

  2. Start the cups-lpd service:

    [root@hostname ~]# /sbin/e-smith/service cups-lpd start

By default cups-lpd is disabled.


This document is Copyright 2003-2005 by Robert van den Aker. It may be freely redistributed in its entirety provided that this copyright notice is not removed.