2009年10月25日 星期日

Ubuntu密技 - Ubuntu的兒童保護功能

只需要做兩件事情,Ubuntu就很容易的變身為適合兒童安全使用的操作系統。首先為孩子們建立一個「受限用戶」,以免他們無意間破壞系統或嘗試繞過安全保護機制。其次是安裝一個「網頁內容過濾」軟體,防止孩子們用路瀏覽器(例如Firefox)造訪對身心有害的網站。

建立一個受限用戶

使用Ubuntu的家長或監護人第一件要做的事就是為孩子們建立一個「受限用戶」,讓孩子們可以用自己的帳戶名稱登入系統,而不是分享家長或監護人的管理者帳戶。可由System (正體中文環境稱為「系統」) → Administration (正體中文環境稱為「管理」) → Users and Groups (正體中文環境稱為「使用者及群組」)選單,再按Unlock (正體中文環境稱為「解除鎖定」)按鈕並輸入密碼解鎖,然後再按Add User (正體中文環境稱為「新增用戶」)按鈕,輸入孩子們的用戶名稱、真實名稱和他們的密碼,然後再於Profile (正體中文環境稱為「設定檔」)按鈕下拉式選單中選擇「Unprivileged」,最後再按OK (正體中文環境稱為「確定」)按鈕。這樣,他們的帳戶就不能執行需要管理者權限的工作,例如:新建用戶、安裝軟體、移除保護機制……等等,但可以正常登入和使用系統。

安裝網頁內容過濾軟件

Dansguardian是一個內容過濾軟體,意味著欲造訪的網頁內容若含有不良辭語就會被屏蔽,甚至是若想由google搜索不良詞語的網站,也不會有結果顯示。

安裝Dansguardian的步驟如下:

  1. 利用Synaptic套件管理程式來安裝dansguardiantinyproxy兩項套件,dansguardian在運行時需要用到tinyproxy
  2. 兩項套件都安裝完成後,需要修改它們的設置檔案。先以Gedit開啟tinyproxy的設置檔:
    $ gksu gedit /etc/tinyproxy/tinyproxy.conf
    再找到三行內容如下:
    # Port to listen on.
    #
    Port 8888
    將Port 8888改為Port 3128
    儲存後關閉檔案
  3. 再以Gedit開啟dansguardian的設置檔:
    $ gksu gedit /etc/dansguardian/dansguardian.conf
    搜尋字串UNCONFIGURED - Please remove this line after configuration,在其句首加上# (井字號),也就是改為#UNCONFIGURED - Please remove this line after configuration
    儲存後關閉檔案
  4. 啟動Dansguardian服務(含tinyproxy服務):
    $ sudo /etc/init.d/tinyproxy restart
    $ sudo /etc/init.d/dansguardian restart
    第一次重新啟動Dansguardian時可能會出現病毒資料庫過期的訊息,可以忽視,它會自動更新。
  5. 設定代理伺服器:
    接下來先登出管理者帳戶,以孩子們的新用戶登入,再由System (正體中文環境稱為「系統」) → Network Proxy (正體中文環境稱為「網路代理」),再選擇Manual proxy configuration (正體中文環境稱為「手動設置代理」)圓鈕,並勾選Use the same proxy for all protocols (正體中文環境稱為「所有通訊協訂使用同樣的代理」),然後在HTTP proxy輸入欄位中鍵入localhost,而Port輸入欄位則留白,最後再按Close (正體中文環境稱為「關閉」)按鈕結束退出。

設定後立即生效,先不要登出孩子們的新帳戶,以網路瀏覽器(例如Firefox)試著開啟一個成人網站,像是花花公子雜誌(英文網站連結),應該會被屏蔽。此外,最好是在將帳戶交給孩子們之前,徹底的測試一遍Dansguardian的過濾功能。

同時,家長或師長們也可以至Dansguardian官網(英文網站連結)學習更多它的用法及功能。例如:若覺得某些網站的內容是可以讓孩子們瀏覽,卻被Dansguardian所屏蔽,則可以將它們加入「例外允許清單」。先以Gedit開啟清單文件,命令為gksu gedit /etc/dansguardian/exceptionsitelist,再將網址加入文件末端即可,無須加上http://www,儲存文件後關閉Gedit。然後重新啟動Dansguardian幕後服務:

$ sudo /etc/init.d/dansguardian restart

反之,若發現有些不適合的網站「溜過」Dansguardian,也可以將它們加入「例外禁止清單」,同樣是以Gedit開啟清單文件,命令為gksu gedit /etc/dansguardian/bannedurllist。甚至還可以封鎖搜尋引擎網站,例如:google.com,不過Google在世界各國都有客製化的搜尋引擎,若真的要封鎖,除了google.com之外,別忘了加上當地的網址,例如:google.com.tw和google.cn,然後再依上述重新啟動Dansguardian幕後服務。

密技以Ubuntu 8.04長期支援版本(Hardy Heron)測試,有可能不適用於新版本,或需做配合微調。

5 留言:

匿名 提到...

1.12.04適用嗎?
2.如果想讓一兩個網站可以開啟,其他的網站全部封鎖該怎麼做
3.可以設定某一個時段允許某個網站開啟,其餘時間封鎖

Alfred 提到...

1.通常Ubuntu會自動屏蔽或阻擋安裝不相容的元件,只要能由Synaptic套件管理程式就應可適用新版本。
2.至於設定某一個時段允許某個網站開啟,似乎較少見這樣的應用。不如在設定受保護的使用者帳戶時,一併設定該帳戶的可登入及使用電腦的時段。

匿名 提到...

設定受保護的使用者帳戶時,一併設定該帳戶的可登入及使用電腦的時段。
怎麼設定教教我 感恩

Alfred 提到...

若是Ubuntu 11.04版之前,則只要安裝timekpr模組,則可由其圖形介面輕鬆設定時段。

若是Ubuntu 11.04版之後,例如:Ubuntu 12.04,則要安裝pam_time模組,使用方式可參考 http://manpages.ubuntu.com/manpages/karmic/man8/pam_time.8.html

此模組的設定檔位於 /etc/security/time.conf
可用文字編輯器增修,其參數說明可參考 http://manpages.ubuntu.com/manpages/karmic/man5/time.conf.5.html

匿名 提到...

我想限制帳戶A登入時間,星期一到星期五晚上七點到八點可以登入,星期六星期天整天都可以登入,要怎麼設定,拜託幫幫忙。

張貼留言