Comments (5)
Just to clarify on the Allow all use case: we are trying to set up printing from a central CUPS system (with just generic PostScript queues) to remote offices connected via VPN and let each remote office manage the actual printer configuration and drivers on their local cups server.
The "office CUPS" needs to accept print jobs from the central one and they come through a routed VPN network with a source subnet different from the local office subnet that CUPS is listening on, so we need either an Allow all
or to explicitly allow the remote subnet of the central CUPS server.
from puppet-cups.
This is a known shortcoming since #27 and currently in development.
from puppet-cups.
I'll confess, I've found configuring CUPS frustrating, but this module did enough of the work for me that I think I can contribute to making it work for a shareable printing system.
Although CUPS security is fine-grained and a little mysterious, I think that there are 2 primary levels of interest:
- Allowing users to submit jobs from other machines.
- Allowing remote administration of the system via the IPP web interface.
To which at the next level one could add the ability to control print jobs, but for most of us, that's something we'd expect if we had submit rights.
To that end, I'd propose the following server-level parameters:
print_from => [ allow-from list ],
admin_from => [ allow-from list ],
browseable => yes/no,
The allow-from list is the usual stuff for Apache-style "Allow from" elements. e.g., '192.168.12.0/24', "mynetwork.com" and so forth. Extra points if you can change it to a "Deny from" by prefixing the source with a "!".
I think I can make these options work without a whole lot of effort if you're interested.
from puppet-cups.
Follow-up. Yes, I have made this work. Virtually as conceived, including the "!" prefix to create a Deny. The only alteration is that since "browseable" is Boolean, the valid options are true and false.
Purists might prefer a closer correspondence with the generated config file. It's no big deal to change from "browseable" to "browsing=on/off", if preferred.
from puppet-cups.
Sorry for following up so late @lesinigo. The next release of the module will make this possible by setting
class { '::cups':
location => 'share-printers'
}
from puppet-cups.
Related Issues (20)
- Module cannot be upgraded from 1.2.2 to 2.2.0 without first loading 2.0.x HOT 3
- /var/log/cups/error_log flooded with SSL errors HOT 4
- [Feature] Structured facts with printer capabilities HOT 4
- Add possibility to restrict queue usage based on IP addresses HOT 6
- Deprecation message prevents creation of queue HOT 4
- Could not prefetch cups_queue provider 'cups' on Ubuntu 18.04 HOT 14
- [Feature] Configurability for MaxJobs and PreserveJobHistory HOT 3
- Configuration for MaxSubscriptions (needed for > 100 clients)
- Depfu Error: Depfu is stuck and needs your help
- Depfu Error: Depfu is stuck and needs your help
- spec/acceptance/puppet/cups_issue_4766_spec.rb fails on centos7 HOT 2
- "Unable to connect" on slow restart (EL7) HOT 1
- Error on "purge_unmanaged_queues" with CUPS stopped HOT 2
- Depfu Error: Depfu is stuck and needs your help
- Depfu Error: Depfu is stuck and needs your help
- Please add an options hash
- Enhancement Request : need MaxJobsPerPrinter directive to be added in cupsd template file _directives.erb HOT 2
- AuthInfoRequired username,password setup HOT 2
- Ubuntu 20.04 - Could not prefetch cups_queue provider 'cups' HOT 4
- Failure to add IPP Everywhere queue HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from puppet-cups.