如何架设Linux打印服务器

简介:
缺省安装好Ubuntu之后,系统会出于安全考虑对CUPS系统进行限制,主要有以下几点: 
1、不能通过Web界面 http://localhost:631/admin 对CUPS进行Web管理; 
2、不能在其他机器上通过Web界面访问本机的http://localhost:631,以查看打印状态; 
3、不能在其他机器上通过IPP协议来共享本机的打印机。 

对上述三个问题,大家可以按照自己的需要做不同的设置: 
1、造成该限制的原因很简单,由于cupsys用户没有访问/etc/shadow文件的权限,所以它无法识别用户真伪,要解决则很简单,只需要将该用户加入到passwd组中即可。命令如下: 
$sudo adduser cupsys shadow 
另:对打印机有管理权限的组是lpadmin组,所以如果要设立一个对CUPS系统有管理权的用户,只需要将该用户加入到lpadmin组即可,假设该打印管理员是firehare,那么只需要下列命令: 
$sudo adduser firehare lpadmin 
然后输入 
$sudo /etc/init.d/cupsys force-reload 
接下来我们试试在Firefox里输入:http://localhost:631/admin,然后输入超级用户或lpadmin组里的用户及密码均可进入到管理界面中。
2、造成这一限制的原因有两个: 
首先,由于在/etc/cups/cupsd.conf文件中有一行语句做了限制: 
>Listen 127.0.0.1:631 
这句话的意思很明显就是只在本机环回口上的631端口做监听,那么肯定其它机器是无法对其访问了,所以要将其改成: 
>Port 631 
这样的话,其他机器就可以访问本机的631端口了。 
其次,由于尚未对访问权限进行配置,所以如果这时从其他机器通过FireFox来访问本机的CUPS系统的Web界面时,将会出现无权查看的提示页面。继续编辑cupsd.conf文件: 
>######## 
>######## Security Options 
>######## 

>Order Deny,Allow 
>Deny From All 
>#Allow From 127.0.0.1 
>Allow From 192.168.0.* 

将127.0.0.1注释掉,并把你要允许访问的网段加进来即可,我这里是192.168.0.0/24网段,如果你的网段比较小,也可以用小点的网段,在cupsd.conf文件中允许以下格式: 
# All 
# None 
# *.domain.com 
# .domain.com 
# host.domain.com 
# nnn.* 
# nnn.nnn.* 
# nnn.nnn.nnn.* 
# nnn.nnn.nnn.nnn 
# nnn.nnn.nnn.nnn/mm 
# nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm 
# @LOCAL 
# @IF(name) 
大家可以选择最适合自己的。 
然后别忘了重启服务: 
$sudo /etc/init.d/cupsys force-reload 
再打开FireFox访问试试?是不是可以看到了网页呢? 
如果你还想在其他机器上能够通过Web界面对本机的CUPS进行管理的话,你还可以继续编辑cupsd.conf文件: 

># 
># You definitely will want to limit access to the administration functions. 
># The default configuration requires a local connection from a user who 
># is a member of the system group to do any admin tasks. You can change 
># the group name using the SystemGroup directive. 
># 

>AuthType Basic 
>AuthClass System 

>## Restrict access to local domain 
>Order Deny,Allow 
>Deny From All 
>#Allow From 127.0.0.1 
>Allow From 192.168.0.x 

>#Encryption Required 
>

下面就是纯理论了!因为没有环境,无法进行测试,不知哪位有条件的兄弟可以帮我做做测试。有什么结果都请贴在后面!!不胜感激!!! 
================================== 

3、要解决这个问题,首先要能让其他机器找到本机的打印机,如果找都找不到,又如何能够使用呢?由于Ubuntu是将该功能另行放置在 /etc/cups/cupsd-browsing.conf文件中的,原因是为了防止由于升级包文件而将配置覆盖,所以只需将该文件中的浏览Off变成 On就可以了。如下所示: 
>Browsing Off => Browsing On 
虽然在Ubuntu中还有一个/usr/share/cups/enable_browsing脚本来将其设为On,不过我在做测试时却并不能正常运行,可能是由于/usr/share/cups/browsing_status脚本的原因吧!反正所做的事都一样,我也就没去深究了。然后在 /etc/cups/cupsd.conf文件中设置浏览的广播地址,将本地的关闭,添加192.168.0.255这个网段广播地址: 
>BrowseAddress @LOCAL => #BrowseAddress @LOCAL 
>BrowseAddress 192.168.0.255 
如果你的网段比较小,也可以用小点的网段,在cupsd.conf文件中允许以下格式: 
#BrowseAddress x.y.z.255 
#BrowseAddress x.y.255.255 
#BrowseAddress x.255.255.255 
#BrowseAddress 255.255.255.255 
#BrowseAddress @LOCAL 
#BrowseAddress @IF(name) 
然后设置允许浏览的地址: 
>#BrowseAllow address 
>#BrowseDeny address 
>BrowseAllow 192.168.0.* 
>BrowseDeny all 
>... 
>#BrowseOrder allow,deny 
>#BrowseOrder deny,allow 
>BrowseOrder deny,allow 
保存,然后重启cups 
$sudo /etc/init.d/cupsys force-reload 
这样就应该可以提供服务了吧!
===========================
添加Windows2000或XP机器共享该打印服务器的做法,由于Windows2000或XP都已经内建对IPP协议的支持,所以只须简单地在添加打印机中选添加网络打印机,然后选Internet打印机文本框,输入: 
http://打印服务器IP地址:631/printers/打印机名
,然后下一步,安装该打印机的驱动即可!这样的话,也就省了用Samba进行共享,还要起Samba服务的麻烦了!

而在Linux下则有一个很奇怪的现象,用Linux做客户端来打印的话,用Linux下的推荐的 http://hostname:631/ipp/port1我没有打印出任何的文档, 而相反用Windows下推荐的方法 http://hostname:631/printers/printer-name 反而可以正常打印,不知有否高人知道为什么,还望不吝赐教!最后祝大家用得开心!!



本文转自 firehare 51CTO博客,原文链接:http://blog.51cto.com/firehare/588261,如需转载请自行联系原作者

相关文章
|
2月前
|
安全 Java Linux
Websoft9:为开发者打造的高效 Linux 服务器面板
Websoft9 是一款以开源应用部署与管理为核心的服务器面板,采用“环境即服务”模式。它通过运行环境标准化、自动化配置、安全融合和资源管理四个方面实现平台与环境的深度协同。支持多语言框架预集成、云原生组件整合,提供 200+ 应用模板一键部署,并具备全流程安全防护和统一资源监控能力,助力开发者高效管理和扩展应用环境。
78 0
|
12天前
|
Ubuntu Linux 网络安全
在Linux云服务器上限制特定IP进行SSH远程连接的设置
温馨提示,修改iptables规则时要格外小心,否则可能导致无法远程访问你的服务器。最好在掌握足够技术知识和理解清楚操作含义之后再进行。另外,在已经配置了防火墙的情况下,例如ufw(Ubuntu Firewall)或firewalld,需要按照相应的防火墙的规则来设置。
64 24
|
1天前
|
数据挖掘 Linux 数据库
服务器数据恢复—Linux系统服务器数据恢复案例
服务器数据恢复环境: linux操作系统服务器中有一组由4块SAS接口硬盘组建的raid5阵列。 服务器故障: 服务器工作过程中突然崩溃。管理员将服务器操作系统进行了重装。 用户方需要恢复服务器中的数据库、办公文档、代码文件等。
|
1月前
|
安全 Linux
阿里云linux服务器使用脚本通过安全组屏蔽异常海外访问ip
公网网站可能会遭受黑客攻击导致访问异常,使用此脚本可以屏蔽掉异常IP 恢复访问。也可自行设置定时任务定期检测屏蔽。
164 28
|
1月前
|
关系型数据库 MySQL Linux
在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾
以上就是在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾的步骤。这个过程就像是一场接力赛,数据从MySQL数据库中接力棒一样传递到备份文件,再从备份文件传递到其他服务器,最后再传递回MySQL数据库。这样,即使在灾难发生时,我们也可以快速恢复数据,保证业务的正常运行。
117 28
|
1月前
|
JavaScript Linux Python
在Linux服务器中遇到的立即重启后的绑定错误:地址已被使用问题解决
总的来说,解决"地址已被使用"的问题需要理解Linux的网络资源管理机制,选择合适的套接字选项,以及合适的时间点进行服务重启。以上就是对“立即重启后的绑定错误:地址已被使用问题”的全面解答。希望可以帮你解决问题。
111 20
|
2月前
|
Ubuntu Linux
Linux系统管理:服务器时间与网络时间同步技巧。
以上就是在Linux服务器上设置时间同步的方式。然而,要正确运用这些知识,需要理解其背后的工作原理:服务器根据网络中的其他机器的时间进行校对,逐步地精确自己的系统时间,就像一只犹豫不决的啮齿动物,通过观察其他啮齿动物的行为,逐渐确定自己的行为逻辑,既简单,又有趣。最后希望这个过程既能给你带来乐趣,也能提高你作为系统管理员的专业素养。
136 20
|
3月前
|
关系型数据库 应用服务中间件 Linux
Linux云服务器如何搭建LNMP环境
LNMP环境是Linux系统中常用的Web服务架构,由Linux、Nginx、MySQL/MariaDB和PHP组成,适用于高效托管动态网站。本文以CentOS 7为例,详细介绍了LNMP环境的搭建步骤,包括Nginx、MariaDB和PHP的安装与配置,以及最终通过创建`index.php`文件验证环境是否成功部署。具体操作涵盖配置YUM仓库、安装服务、编辑配置文件、启动服务等关键步骤,确保用户能够顺利搭建并运行LNMP环境。
87 1
Linux云服务器如何搭建LNMP环境
|
2月前
|
存储 运维 监控
深度体验阿里云系统控制台:SysOM 让 Linux 服务器监控变得如此简单
作为一名经历过无数个凌晨三点被服务器报警电话惊醒的运维工程师,我对监控工具有着近乎苛刻的要求。记得去年那次大型活动,我们的主站流量暴增,服务器内存莫名其妙地飙升到90%以上,却找不到原因。如果当时有一款像阿里云 SysOM 这样直观的监控工具,也许我就不用熬通宵排查问题了。今天,我想分享一下我使用 SysOM 的亲身体验,特别是它那令人印象深刻的内存诊断功能。
|
2月前
|
Linux 虚拟化 Docker
Linux服务器部署docker windows
在当今软件开发中,Docker成为流行的虚拟化技术,支持在Linux服务器上运行Windows容器。流程包括:1) 安装Docker;2) 配置支持Windows容器;3) 获取Windows镜像;4) 运行Windows容器;5) 验证容器状态。通过这些步骤,你可以在Linux环境中顺利部署和管理Windows应用,提高开发和运维效率。
258 1