[ Tor ] 架設暗網
沒事不要逛暗網,更別說是在暗網上架站了。
如果真的有什麼不可告人的秘密想要在暗網上架站分享,請務必遵守以下規則:
首先先安裝 tor。
Tor會在指定的路徑( HiddenServiceDir)建立 hidden_service資料夾,並在裡面新增文件 hostname和 private_key,hostname內為伺服器的網址,private_key為類 SSL的加密金鑰。
如果不喜歡 tor分配的網址,可以把 hidden_service資料夾刪掉重新執行 Tor,就會分配新網址了。
假如想要自己命名網址,可以使用 Shallot暴力產生對應的 RSA私鑰,但計算的時間就要自己斟酌了。
修改後,切換路徑至 src並執行 Django。
* 注意
別以為伺服器這樣就很安全了,尤其是在暗網。
請不要使用"python manage.py runserver 0.0.0.0:8000"指令來啟動伺服器,而是使用 uWSGI或 ASGI來提供本地端連線。
對外則使用代理程式 Nginx或 Apache做為唯一對外的窗口並做好安全設定,也請跟著 Django官網提供的 Checklist仔細的檢查 Django的安全設定。
本教程未作任何安全設定,請伺服器新手勿直接使用。
本文參考 Configuring Onion Services for Tor、Tor Hidden (Onion) Services Best Practices和 如何架設.ONION網站
如果真的有什麼不可告人的秘密想要在暗網上架站分享,請務必遵守以下規則:
- 不要在這台服務器上運行或做其它事情。
- 在新服務器或VPS上進行全新安裝。
- 不要保留或運行來自VPS提供商任何服務。
- 用Paypal支付你的VPS服務,不過最好使用Bitcoin。
- 不要向VPS提供關於你的任何身份信息。
- 不要在這台服務器上運行Tor中繼,因為Tor中繼在真實世界的公開IP是公開的。
- 不要從這台服務器發送電子郵件。
- 不要運行討厭或卑鄙Web軟件。如果你的Web軟件有管理員登陸或管理員賬號,把密碼改成複雜的26個字符組成的密碼。很多Tor網站被攻破只是某人猜到了管理員登陸密碼。
- 避免使用任何JavaScript之類腳本的Web軟件。
- 確保你的Web應用不會洩露任何錯誤信息或身份信息,比如在錯誤信息中的真實公開IP。
- 審查Web前端代碼,確保它不會從jquery.com、Google Fonts或任何外部服務拉取資源。
- 及時做好VPS的安全更新。
首先先安裝 tor。
$ brew install tor # mac $ $ sudo apt-get install tor # ubuntu $ sudo update-rc.d -f tor disable # 關閉自動啟動安裝 Tor後,找個位置建立一個 tor_server資料夾和一個 config檔,如下。
. tor_server └── torrc.in接著編輯 torrc.in。
# torrc.in HiddenServiceDir /path/to/tor_server/hidden_service/ HiddenServicePort 80 127.0.0.1:8000執行 tor,並等待 tor連接至洋蔥網路。
$ tor -f torrc.inTor將會針對 HiddenServicePort上指定的網址( 127.0.0.1:8000)轉址為洋蔥網路的 port 80( http專屬的 port),官方說法是不需要特別用 SSL加密,tor有自己的加密機制。
Tor會在指定的路徑( HiddenServiceDir)建立 hidden_service資料夾,並在裡面新增文件 hostname和 private_key,hostname內為伺服器的網址,private_key為類 SSL的加密金鑰。
如果不喜歡 tor分配的網址,可以把 hidden_service資料夾刪掉重新執行 Tor,就會分配新網址了。
假如想要自己命名網址,可以使用 Shallot暴力產生對應的 RSA私鑰,但計算的時間就要自己斟酌了。
. tor_server ├── hidden_service │ ├── hostname │ └── private_key └── torrc.in等待 Tor連結的過程中,可以先簡單建立個 Django server。
$ pip install django # 安裝 Django $ django-admin src # 建立 Django server執行完成後資料夾結構如下。
. tor_server ├── hidden_service │ ├── hostname │ └── private_key ├── src │ ├── manage.py │ └── src │ ├── __init__.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py ├── tcpServer.py └── torrc.in接著修改 setting.py中的 ALLOWED_HOSTS。 將 hostname中的連結和 localhost加入至 ALLOWED_HOSTS中如下。
ALLOWED_HOSTS = ['localhost','xxxxxxxxxxxxxxxx.onion']server將只允許 ALLOWED_HOSTS中的 HOST進入。
修改後,切換路徑至 src並執行 Django。
$ cd src $ python manage.py runserver 0.0.0.0:8000接著就可以在 Tor browser上使用 hostname文件中提供的連結,連結到剛建立好的 Django server了。
別以為伺服器這樣就很安全了,尤其是在暗網。
請不要使用"python manage.py runserver 0.0.0.0:8000"指令來啟動伺服器,而是使用 uWSGI或 ASGI來提供本地端連線。
對外則使用代理程式 Nginx或 Apache做為唯一對外的窗口並做好安全設定,也請跟著 Django官網提供的 Checklist仔細的檢查 Django的安全設定。
本教程未作任何安全設定,請伺服器新手勿直接使用。
本文參考 Configuring Onion Services for Tor、Tor Hidden (Onion) Services Best Practices和 如何架設.ONION網站
留言
張貼留言