February 05, 2006

Tor : 第二代 onion routing

剛剛讀 [巴蠻子的新破茅屋] 的 blog [如何解決上不了sf.net的問題],發現了 [Tor] 這個計畫,引用 [用Tor實現有效和安全的互聯網訪問] 一文的介紹:
    Tor 的全稱是 "The Onion Router",號稱是 "An anonymous Internet communicaton system",主頁在:http://tor.eff.org

    它針對現階段大量存在的流量過濾、嗅探分析等工具,在 JAP 之類軟件基礎上改進的,支持 Socks5,並且支持動態代理鏈(通過 Tor 訪問一個地址時,所經過的節點在 Tor 節點群中隨機挑選,動態變化,由於兼顧速度與安全性,節點數目通常為 2-5 個),因此難於追蹤,有效地保證了安全性。另一方面,Tor 的分布式服務器可以自動獲取,因此省卻了搜尋代理服務器的精力。下圖是一個簡單的 Tor 安全訪問與危險訪問的區別示意圖:
前面已經介紹過 onion routing 的概念,而 [Tor] 就是一個實做,最早由美國海軍研究實驗室資助,2004 年成為 EFF (Electronic Frontier Foundation,EFF) 的研究計畫。[Tor] 是在 OSI 網路第七層的 application layer 進行加密,而之所以稱為 "onion"(洋蔥) routing,就是因為這個結構類似洋蔥,使用者只能看到表皮,但如何要一窺核心,就得一層又一層的撥開。router 間的傳輸都經過對稱的 key 作加密,形成如洋蔥般有層次的結構,中間所經過的各節點,又好比洋蔥的一層皮,將 client 包覆其中,保護資料來源,這也是 onion router 對於安全性的基本概念。

[Tor] client 需要在 localhost 安裝 onion proxy,會持續的與其他 [Tor] node 交流,從而構成 virtual circuit。onion proxy 採用 Socks5,所以常見的網路應用程式就可以透過 onion proxy,再 virtual circuit 中進行通訊。

官方網頁 [Tor: Overview] 有幾張很清楚的示意圖:






[Tor] 以 BSD License 發行,支援 Win32 與 UNIX-like 平台,在 Debian 的使用,可參考 [用Tor實現有效和安全的互聯網訪問] 一文,節錄如下:
    在 /etc/apt/sources.list 中增加如下兩行:
      deb http://mirror.noreply.org/pub/tor stable main
      deb-src http://mirror.noreply.org/pub/tor stable main
    然後執行:
      apt-get update && apt-get install tor tsocks
    安裝完畢後,系統會建立 Debian-tor 的帳號,並且以該用戶的身份啟動 tor,開機自動起動,可以在 /etc/rc2.d/ 下進行調整。

    需要編輯的文件其實只有一份,即 /etc/tsocks.conf,只需要三行即可:
      server = 127.0.0.1
      server_type = 5
      server_port = 9050
    要用 Tor 進行代理的程序,以 tsocks 啟動,比如,希望用 Tor 代理所有 web 訪問,則可以執行:
      $ tsocks firefox
其餘資訊可參考 [Tor] 官方網頁,與維基百科 [Tor - Wikipedia]。
由 jserv 發表於 February 5, 2006 12:15 AM
迴響