Proxy Filter

DansGuardian

English Version

從 Fedora 11 開始,Fedora 已經支援 dansguardian,所以你可以使用 Fedora 所提供的 dansguardian rpm。

[ 最新版本: 2.12.0.3 ] 為 Fedora 20


2014/05/06

最新版本(2.12.0.3)我已建了 RPM 包裝為 Fedora 20,在這裡可以 下載。

我也將這個新版本建了 rpm 包裝為 CentOS 5,在這裡可以 下載。


Dansguardian 與 ClamAV

在這裡,我要描述我在 dansguardian 的設定檔案所改的地方 dansguardian 才能連接並使用 ClamAV。

我使用我自己所建 ClamAV 的 rpm 檔案。如果你安裝的是另一個 ClamAV 的 rpm 可能檔案的位置會不一樣。請調整按你檔案的正確位置。 我建的 ClamAV rpm 檔案可以下載 (只下載並安裝 clamav 和 clamav-server)︰ Fedora 20CentOS5

clamd 執行的身份為 user(clamav):group(clamav)。dansguardian 執行的身份為 user(nobody):group(nobody)。clamd 和 dansguardian 所用的身份不一樣, 必須要更改。要不然 dansguardian 就無法連接到 clamd。

以下是我所改變,這樣 dansguardian 才可以使用 clamd 對網包掃描病毒。

1. 編輯 /etc/dansguardian/dansguardian.conf︰

2. 編輯 /etc/dansguardian/contentscanners/clamdscan.conf︰

3. cd 到 /var/log 然後更改 dansguardian 目錄的屬性為︰

4. 重新啟動 dansguardian︰

2014/07/06


2001/07/20

目前 dansguardian 沒有新的版本。但是因為我已經升級我們的伺服器至 Fedora 15,我想建一個為 Fedora 15。 雖然 Fedora 13 的 dansguardian rpm 包裝在 Fedora 15 仍然可以使用,但是因為 Fedora 15 已經使用 systemd (已 不使用 SysV initscript),我想建一個使用 systemd 的 service 檔。

你可以 在這裡下載


2011/02/08

dansguardian-2.10.1.1-1.fc13.i686.rpm

這包裝支援防毒掃描:clamd (clamav), icap (Dr. Web ICAP) 和 kavd (Kaspersky)。

如果你想使用這個功能你必須編輯以下檔案:

1. 在 /etc/dansguardian/dansguardian.conf 裡將你要用的防毒掃描器刪掉前面的 #。

#contentscanner = '/etc/dansguardian/contentscanners/clamdscan.conf'
#contentscanner = '/etc/dansguardian/contentscanners/kavdscan.conf'
#contentscanner = '/etc/dansguardian/contentscanners/icapscan.conf'

2. 編輯你要用的防毒掃描器的設定檔:

/etc/dansguardian/contentscanners/clamdscan.conf
/etc/dansguardian/contentscanners/icapscan.conf
/etc/dansguardian/contentscanners/kavdscan.conf

注意:因為我無法測試這些掃描器,我不能保證會正常的運作。


我們學校﹝內思高工﹞有一台專用的 proxy server﹝替代伺服器﹞。我們設定所有學生使用的電腦都透過這 proxy 上網際網路。 每天下課時,都開放電腦教室給學生上網使用。相當多的學生會來使用。問題是,學生們都把這電腦教室當作「免費」的網咖! 這當然沒有什麼不好。學生下課以後留在學校上網還可以學習一些東西。至少不會在外面惹是生非。

但是我們畢竟是學校。沒有管制是不行的。當然不能說,因為是學校一定要管制,管制為了管制沒有道理。但是因為我們是學 校,我們都關心我們的學生,關心我們學生的安危。要管制是為了保護他們。畢竟他們還很年輕,在很多方面還沒有能力去分辨是非。

在這裡我介紹一個蠻小的,但很有效﹝更好的是學校使用是免費﹞的 proxy filter,幫我們不讓學生去看不應該看的網頁。 在功能上是很強的。它就是 DansGuardian

DansGuardian 的特色是:

如何安裝 DansGuardian?在這討論我假設以下:

首先,下載軟体。目前最新版本是:

dansguardian-2.10.1.1.tar.gz

你可以到:

http://dansguardian.org/?page=download2

下載這個檔案。當然,如果你想用 rpm 檔案我已經建一個為 Fedora 11 的 rpm 檔,你在 這裡下載


我現在也提供為 CentOS 5.3 的 rpm 包裝。你在這裡下載

安裝的過程很簡單。

  1. tar xvfz dansguardian-2.10.1.1.tar.gz
  2. cd dansguardian-2.10.1.1
  3. ./configure --prefix=
  4. make
  5. make install

注意:下指令 ./configure 的時候要用參數 --prefix= 要不然整個包裝會被安裝到 /usr/local 。這不是標準 Fedora 11 的位置。

安裝 dansguardian 之後,要啟動之前你必須修改 /etc/dansguardian/dansguardian.conf:

DansGuardian 所使用初始語系是 'ukenglish'。如果你使用不一樣的語系,你可以在 /etc/dansguardian/dansguardian.conf 改設。譬如,你要使用的語系是繁體中文的話, 你可以改為: language = 'chinesebig5'。

現在 DansGuardian 已經安裝了。要啟動:

1. 先確定開機時會自動執行 DansGuardian 程式:

  chkconfig dansguardian on

2. 手動的啟動 DansGuardian:

  service dansguardian start

現在 DansGuardian 已經在執行了,使用的埠是 8080。

問題來了。squid 使用的埠是 3128。學生所使用的電腦是會連結到 squid。意思是說,使用的埠是 3128。 在這樣的設定 DansGuardian 完全沒有用。學生所使用的電腦應該連結到埠 8080。

解決的方法有兩種:

第一種方法是將所有學生使用的電腦改設使用埠 8080。蠻大的工程!不很理想的方法。

第二種方法是不改設學生所使用的電腦,只騙這些電腦。學生使用的電腦仍然連結 到埠 3128 但是事實上是已經連結到埠 8080。如何去騙它們?很簡單,使用 iptables。

使用 iptables 平常是為了設一個 firewall ﹝防火牆﹞。但是我們的 proxy server 是不用 firewall 的。沒有關係,仍然可以安裝 iptables。

要將所有 tcp 連結到埠 3128 改向 8080﹝redirect﹞執行以下指令:

    iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 3128 -j REDIRECT --to-port 8080

這樣就好了!

蔡由世神父
2002/03/16
更新:2014/07/06