歡迎您光臨本站 註冊首頁

如何架設Linux列印伺服器

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0

預設安裝好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 反而可以正常列印,不知有否高人知道為什麼,還望不吝賜教!祝大家用得開心!!

本文出自 「野火兔的窩」 博客,請務必保留此出處http://firehare.blog.51cto.com/809276/588261


[火星人 ] 如何架設Linux列印伺服器已經有487次圍觀

http://coctec.com/docs/linux/show-post-48340.html