2008年4月15日 星期二

洋蔥路由的應用(Application of TOR)

網路生活愈來愈便利的現在,網路卻變得更加不自由,因為使用網路的風險跟以前相比大出許多,讓網路的自由程度也大打折扣,如果你在家裡關起門來玩,頂多是受到對方網站的限制,例如:整個網段的IP都被對方網站封鎖限定總流量……等。

如果是在公司企業學校機關的網路環境中,上網的限制就更加嚴苛,例如:阻擋P2P下載軟體的連線無法登入Windows Live Messenger(MSN)Skype即時通訊軟體,甚至禁止使用其它的社交平台,如:無名小站、BBS……等。無論來自那一方的限制,對我們來說都是極為掃興的事,就像連去某些網站,所有的圖片都變成叉燒包的模樣,這時候的心情只能用身不由己來形容。


軟體介紹:Tor(The Onion Router)
軟體性質:免費軟體
版本代碼:0.1.2.19(內含Tor & Privoxy & Vidalia & Torbutton)
作業系統:Windows、Mac OS X、Linux/Unix
檔案大小:6.38MB
語言介面:中、英文
官方網站:https://www.torproject.org/
軟體下載點:https://www.torproject.org/download.html.en
Tor的使用方法原本是採取命令模式、或編輯文字檔來完成,這點很難被大眾接受與使用;經過一段時間的演進之後,已經有了圖形化的管理介面「Vidalia」,甚至還包含了Firefox瀏覽器能直接使用的套件「Torbutton」,讓Tor的使用變得超級簡單喔!



安裝的部份其實並不算太困難,原則上套用預設值即可,所以在這邊我也不多詳述,就直接切入重點吧!其實Tor這個軟體(套件)除了上述的程式外,還包含「Privoxy」(類似代理伺服器的功能),這些程式(Vidalia除外)各別其實都能夠單獨運作,這個套件就是一次打包好給大家使用。

Tor的特性:

傳送封包時,它不會經由一般的路由器或固定路徑來傳送,而是被送到一個隨機選取的Tor伺服器;這個Tor伺服器再把封包經過加密(對稱加密法),包裝後傳給下一個隨機的Tor伺服器,再從Tor伺服器連線到你要的目標網站。

整個傳送過程中會經過哪些Tor伺服器都是隨機的,而且每10分鐘會強制改變一次傳送路徑,因此很不容易追蹤。而且對方網站查到的來源位置,會是最後一個Tor伺服器的IP,所以能夠達到隱藏來源的功效。

同時,還能隨機選取代理伺服器,具備強制更換路徑的能力,當然也支援Socks協定(預設採用Socks5),因此,你就可以「身在台灣,縱身於世界各地」。

既然這樣子的話,我們就可以利用它來突破一些地域限制的服務,例:特定地區的線上音樂試聽「例:PANDORA」。不過,在你想透過它來使用特定地區的服務時,隨機選取的功能就成了雙面刃,因為無法固定於特定的地區(國家),所以就得動點手腳來讓它乖乖就範。


如果在台灣連線,就會看見此圖

首先,我們得先找到Tor的設定檔torrc」,在預設的安裝路徑下,它在「C:\Documents and Settings\「使用者名稱」\Application Data\Vidalia\torrc」(或是直接從Vidalid控制面版中的〔設定〕→〔高級〕→〔Tor配置文件〕中找到設定檔路徑。



決定你要將Tor的地區限定在那個國家,此時可以透過「Tor網絡地圖」記下該地區的Tor伺服器名稱,以美國為例,有jalopy、desync、BostomUCompSci、Whistlermother、petspaper、TorLuwakOrg、mori4、redpineapple和slowturtle2等,紀錄的數量就看你想要在幾個Tor伺服器之間變換而定。(如果你只想把Tor伺服器限定在同一地方的話,只需寫入一個Tor伺服器即可,不過它要是無法連線頻寬不足時,你的Tor就隨即失效)



其實設定檔「torrc」只是一個文字檔案,透過文字編輯器(記事本)就可以看見Tor的相關設定,現在要在最下方加入兩行指令後,儲存關閉torrc,這兩行指令代表的意思就是:「無論Tor的傳送過程為何,最後連至目標網站的Tor出口,都是下列這幾個Tor伺服器的位置」。

StrictExitNodes 1
ExitNodes jalopy,desync,BostomUCompDci,Whistlermonther,petspaper,TorLuwakOrg,mori4,redpineapple,slowturtle2
(ExitNodes與jalopy…是在同一行,中間有一個半形空格)


如此一來,就能夠解決十分鐘強制變換身份(Tor的路徑)的預設值,無論它的路徑怎麼變換,最後連出Tor的出口都會留在美國境內,你就能夠正常的使用限定該地區的線上服務!


(破解10分鐘的限制後,就能正常造訪)

是否能夠使用它來突破某些免費空間的下載流量限制呢?

其實,據筆者自己實驗的結果,主要還是看免費空間的流量限制是如何設定的,以Megaupload這個免費空間來說,同一個下載的網址,如果你是從台灣連去,絕大部份都會看見「分配給貴國(Taiwan)的下載通道均已占用」(是以領土面積來算流量的嗎?XD)的字樣。



如果是透過Tor來連線,也不一定會有「空的下載通道」,其它國家的下載通道也可能因為占滿而無法下載,如果能夠正常連線的話,就能輸入「驗證碼」,正常下載。(我也試了好幾個國家)



最後,照慣例還是得說一下使用這類軟體的風險

1.P2P:負載過大,造成其它人無法正常連線,或是散利用它散播病毒。
2.Spam:利用可發送匿名信的特性,大量發送廣告郵件。
3.跳板攻擊:藉由Tor伺服器,對企業或個人電腦發動攻擊。
4.其它:除了上述常見的危害之外,甚至有些人會製作假的「Tor網絡中繼」,透過中間人攻擊(Man-in-the-Middle Attack)的手法設法得到兩端的資料。

如果你想將Tor套用在其它軟體之上,可以考慮使用FreeCap來處理,簡單地說,它就是能夠讓該軟體透過它,連入Privoxy,再將封包轉至Tor來連線。



後記:雖然這個軟體的功能十分強大,但是一物剋一物,有些網路環境或是硬體設備已經針對這類軟體進行封鎖,所以不是所有的網路環境都能使用(例:對岸也是在條件許可下才能使用...)。

※※此文同時刊登在《Download網路密技王》雜誌第No.3期因為全文有點長,所以我僅摘錄應用的部份

6 則留言:

  1. 「例:對岸也是在條件許可下才能使用...)。」
    為什麼我對號入座了!!

    回覆刪除
  2. 唔...哈哈~這不是對號入座...是挖坑給你跳吧!(誤)

    誰叫你剛好就在對岸...還在這麼嚴密控管的環境下...(最好是上層有兩道虛擬IP的閘道...XD)

    不過,生命總會找到出路嘛!你不也翻牆出來了!(不然你也看不到這篇吧!?呵...)

    回覆刪除
  3. 個人比較推薦JAP,
    不知道版大又沒有聽過,
    TOR太慢了= =

    回覆刪除
  4. MARK9462:聽你這麼一說,我剛GOOGLE一下,在jackbin的懶人筆記有看見頗詳細的介紹(http://jackbin.blogspot.com/2008/03/jap.html)。

    其實這一類軟體大多是為了"翻牆"使用,在台灣原則上要用上它的機會不多,除了是特別需求。

    至於你所說的速度問題,我是覺得看你用途為何,我文章所述的線上音樂勉強可聽,如果是用來下載免空的大檔,可能就不太適合。

    類似的工具,在台灣這個限制沒這麼大的網路環境裡,都是有特定用途,如JACKBIN那一篇的討論看來,其實每種透過PROXY的技術,都有不同的缺點,端看使用者能否接受唷!

    謝謝你的指教跟提醒,也讓我多瞭解一項工具,thks。

    回覆刪除
  5. tor默认是10分钟换一次传输路径,我能不能修改这个时间啊?

    回覆刪除
  6. 至於時間這部份,我先前並沒有特別去找過是否能夠更改。

    不過你可以試著從它的說明文件中找看看,說不定能夠發現到不一樣的應用,最近有點分身乏術。

    等我這陣子忙完後,我在來上面分享怎麼更改時間限制...(如果可行),原則上tor的設定檔大多以文字格式編寫,如果你有先找到相關應用,也歡迎你的分享唷!^^"(如有不周之處,還請見諒。)

    回覆刪除