Remote setup of printers under Linux CUPS is similar to local printer setup. Depending on the remote printer type, you’ll need various pieces of information for this setup, and there are various precautions to take.
Run the printtool application as usual. When you get to the queue type screen, you’ll have these choices:
For a remote CUPS printer, for instance, you’ll have to specify a server by name (which must be resolvable through DNS, NIS or a hosts file) or by IP address, and a “path,” which is really the name of the printer on the remote server. One interesting option here is that the remote CUPS printer may have several instances, with, for instance, different resolutions: 300 dpi, 1200 dpi, etc.
For a UNIX printer, you’ll specify a server (by resolvable name or IP address) and queue (again, the printer name). An additional consideration is that you may need to have access permissions to that printer configured on the remote host. He or she will add your host name to the /etc/lpd.perms file (or may not, if you shouldn’t have permission).
For an SMB printer, life is made easier by the fact that SMB objects are advertised via the lmannounce or lisa services, so you get a list of available printers immediately. Don’t despair if the one you want doesn’t appear, because the whole Lan Manager mechanism can be a little creaky; just know the host name and share name. (You may also have entries in your /etc/hosts or /etc/lmhosts files that provide resolution.) Click the Specify button and fill in these names. You’ll need to know the workgroup, server, and share name, and have a Samba user name and user password. Remember that under SMB your user name and password may be synchronized with your Linux username and password (which is good), and that this username and password will be stored unencrypted in the /etc/cups/printers.conf file. This file must be readable only by root!
For a Novell printer, you’ll need the server name, queue name, user name and password.
Once you’ve set up one of these, you’ll see a printer entry in your local /etc/cups/printers.conf file:
Device URI smb://username:password@Workgroup/SMBhostserver/printername
If this looks similar to Apache configuration files you’ve seen, you’re sharp. The syntax is very similar.
The /etc/cups/cupsd.conf file specifies whom you’ll allow to print to this printer:
Order Deny, Allow
Deny From All
Allow From 127.0.0.1, 192.168.2.22, 18.104.22.168