[TOC]
[玩轉樹莓派] 還我80端口
Oray for Raspberry Pi
0x00 花生殼介紹
花生殼服務百度百科中有這樣一段介紹:
花生殼是動態域名解析服務客戶端軟件。當您安裝并注冊該項服務,無論您在任何地點、任何時間、使用任何線路,均可利用這一服務建立擁有固定域名和最大自主權的互聯網主機。“花生殼”支持的線路包括普通電話線、isdn、adsl、有線電視網絡、雙絞線到戶的寬帶網和其它任何能夠提供互聯網真實ip的接入服務線路,而無論連接獲得的ip屬于動態還是靜態。
簡單來說,我們可以通過花生殼的服務把我們的IP和一個域名做映射,映射后就可以使用域名訪問而不需要記IP了。IP是一個不好記的東西,像我們這樣的個人用戶又是沒有固定IP的(固定IP的寬帶服務較貴,土豪可忽略),因此花生殼可以幫我們解決這個疼點。之前的花生殼給注冊用戶免費提供了一個二級域名,現在注冊需要花5元購買一個永久的二級域名。下面會有介紹。
0x01 安裝花生殼內網版
花生殼內網版
這個東西是干嘛的? 如果你沒有接觸過,可能會有這個疑問,且聽我慢慢道來。現在或者未來的某一天,你會知道,中國電信或者其他家的寬帶會封掉一些我們常用的端口,比如最常見的80端口。可能主要是為了加強網絡管理,不允許私人在家里搭建網絡服務吧。順便告訴你一個不幸的消息,如果你的ssh不能在外網訪問或者訪問不穩定,也有可能被封了。而我們將要安裝的 花生殼內網版
就是突破這個限制的。大家也可以參考這里。
下載
首先,我們需要下載樹莓派版的花生殼內網版,在樹莓派上,我們可以用 wget
進行下載(這里我們下載到~/Downloads/),命令如下:
pi@raspberrypi:~/Downloads $ wget http://download.oray.com/peanuthull/embed/phddns_raspberry.tgz
下載下來的文件叫 phddns_raspberry.tgz
,我們對其進行解壓:
pi@raspberrypi:~/Downloads $ tar zxvf phddns_raspberry.tgz
phddns2/
phddns2/oraynewph
phddns2/oraynewph.tgz
phddns2/oray_serve
phddns2/parse
安裝
我們需要使用root賬號來安裝,否則可能出現權限問題,導致安裝失敗。sudo su
切換到root,使用 ./oraynewph start
執行安裝。下面是安裝過程:
pi@raspberrypi:~/Downloads $ cd phddns2
pi@raspberrypi:~/Downloads/phddns2 $ sudo su
root@raspberrypi:/home/pi/Downloads/phddns2# ./oraynewph start
...
配置
在上面的安裝日志中我們可以看到這的提示信息(你也可以使用 oraynewph status
命令來查看此信息):
SN:RAPIe*************
Please visit http://b.oray.com
Oraynewph start success !
按照提示,我們打開 http://b.oray.com 這個網站,使用上面的SN登錄系統(默認密碼是admin
,登錄后會要求你設置密碼,綁定花生殼賬號等,如果你沒有,那需要你注冊一個),登錄后如下圖:
我們點擊內網映射,進入設置界面,點擊 添加配置,如下圖:
經過如上配置,我們就可以通過域名來訪問我們放在家里的樹莓派上的http服務了。簡單的,我們可以使用如下命令起一個http服務:sudo python -m SimpleHTTPServer 80
進行測試。
0x02 花生殼服務
注冊花生殼
首先我們需要注冊一個花生殼,并花¥5購買一個永久的二級域名,這個就介紹了,類似這樣:
路由器上登錄花生殼
接下來的操作都是基于這個前提的。先回顧下我的網絡拓撲:
我使用的是TP-Link的路由器,寬帶ADSL撥號是在這個路由器上,路由器有一個公網IP。TP-Link路由器是支持花生殼服務的。我們在路由器登錄花生殼賬號后即可通過登錄帳號綁定的域名來訪問這個公網IP了,TP-Link的路由器登錄后的信息如下:
配置DMZ
對于掛在路由器下的 Raspberry Pi 僅僅依靠上面的花生殼配置還不夠的。我們還需要啟用路由器的DMZ主機功能,下面是關于DMZ的介紹:
在某些特殊情況下,需要讓局域網中的一臺計算機完全暴露給廣域網,以實現雙向通信,此時可以把該計算機設置為DMZ主機。 只有啟用了該功能后,對應的DMZ主機才會生效。
根據介紹,我們做下面的配置:
這樣發送到我們路由器的所有請求都會被轉發到我們的 Raspberry Pi了,我們的 Raspberry Pi 就成了公網中的一臺主機了。
PS:DMZ主機配置并不是一個安全的選擇,更安全的配置是只影射我們使用的端口,比如80,22等
好了,這基本算是最后一篇基礎介紹了。下一篇開始介紹樹莓派最吸引我的地方 GPIO
操作,想想都興奮了~~
