天天看點

【原創】IP攝像頭技術縱覽(六)---通過internet通路攝像頭【原創】IP攝像頭技術縱覽(六)—通過internet通路攝像頭

【原創】IP攝像頭技術縱覽(六)—通過internet通路攝像頭

本文屬于《IP攝像頭技術縱覽》系列文章之一:

Author: chad

Mail: [email protected]

本文可以自由轉載,但轉載請務必注明出處以及本聲明資訊。

1、路由器配置—DMZ虛拟主機、端口映射測試

  上一節已經講解了端口映射的方法實作internet通路,本節主要講解DMZ虛拟主機的方法。

(1)什麼是DMZ? 

  DMZ全稱“demilitarized zone”,中文名稱為“隔離區”,和信任區相對應。作用是把企業Web伺服器、FTP伺服器和論壇等允許外部通路的伺服器單獨接在該區端口,使整個需要保護的内部網絡接在信任區端口後,不允許任何通路,實作内外網分離,達到使用者需求。它解決了安裝防火牆後外部網絡不能通路内部網絡伺服器的問題,另一方面,通過這樣一個DMZ區域,更加有效地保護了内部網絡,因為這種網絡部署,比起一般的防火牆方案,對攻擊者來說又多了一道關卡。

(2)DMZ運作機理

  DMZ提供的服務是經過了 位址轉換(NAT)和受安全規則限制的,以達到隐蔽真實位址、控制通路的功能。首先要根據将要提供的服務和安全政策建立一個清晰的網絡拓撲,确定DMZ區應用伺服器的IP和端口号以及資料流向。通常網絡通信流向為禁止外網區與内網區直接通信,DMZ區既可與外網區進行通信,也可以與内網區進行通信,受安全規則限制。

a. 位址轉換

  DMZ區伺服器與内網區、外網區的通信是經過 網絡位址轉換(NAT)實作的。網絡位址轉換用于将一個位址域(如專用Intranet)映射到另一個位址域(如Internet),以達到隐藏 專用網絡的目的。DMZ區伺服器對内服務時映射成内網位址,對外服務時映射成外網位址。采用 靜态映射配置網絡位址轉換時,服務用IP和真實IP要一一映射, 源位址轉換和目的位址轉換都必須要有。

b. DMZ安全規則制定

  安全規則集是安全政策的技術實作,一個可靠、高效的安全規則集是實作一個成功、安全的 防火牆的非常關鍵的一步。如果防火牆規則集配置錯誤,再好的防火牆也隻是擺設。在建立規則集時必須注意規則次序,因為防火牆大多以順序方式檢查資訊包,同樣的規則,以不同的次序放置,可能會完全改變防火牆的運轉情況。如果資訊包經過每一條規則而沒有發現比對,這個資訊包便會被拒絕。一般來說,通常的順序是,較特殊的規則在前,較普通的規則在後,防止在找到一個特殊規則之前一個普通規則便被比對,避免防火牆被配置錯誤。

  DMZ安全規則指定了非軍事區内的某一主機(IP位址)對應的安全政策。由于DMZ區内放置的伺服器主機将提供公共服務,其位址是公開的,可以被外部網的使用者通路,是以正确設定DMZ區安全規則對保證網絡安全是十分重要的。

  FireGate可以根據資料包的位址、協定和端口進行通路控制。它将每個連接配接作為一個資料流,通過規則表與連接配接表共同配合,對網絡連接配接和會話的目前狀态進行分析和監控。其用于過濾和監控的IP包資訊主要有:源IP位址、目的IP位址、協定類型(IP、ICMP、TCP、UDP)、源TCP/UDP端口、目的TCP/UDP端口、ICMP 封包類型域和代碼域、碎片包和其他标志位(如SYN、ACK位)等。

  為了讓DMZ區的應用伺服器能與内網中DB伺服器(服務端口4004、使用TCP協定)通信,需增加DMZ區安全規則, 這樣一個基于DMZ的安全應用服務便配置好了。其他的應用服務可根據安全政策逐個配置。

  其實DMZ主機實際上就是一個預設的虛拟伺服器,如果裝置收到一個來自外部網絡的連接配接請求,它首先會查找虛拟服務清單,如果有比對的項目,就把請求消息發送到對應的虛拟伺服器上去。如果沒有查到比對的項目,就轉發到DMZ主機上去。

(3)DMZ配置

  路由器内的DMZ主機配置很簡單,隻有一個配置項,方法如下:

【原創】IP攝像頭技術縱覽(六)---通過internet通路攝像頭【原創】IP攝像頭技術縱覽(六)—通過internet通路攝像頭

  配着完成後在指定主機上開啟相應的web服務就可以通過外網進行通路了。

2、DNS動态域名測試

  上文的配置忽略了一個事實:大部分網絡是動态ip的。動态ip造成兩個通路限制:1、每次通路必須輸入外網IP。2、你不知道什麼時候IP會變掉。

  是以,最好的方法是使用域名進行通路。

  用個人電腦架設伺服器或想遠端控制電腦時,常需要一個固定的域名,指向一台IP可能變化的電腦,即動态域名。

  目前提供免費動态域名的有國内的公雲(原3322)、和No-IP等。NO-IP是國外網站,通路非常遲鈍,測試過程中總是無法通路,而公雲網提供了非常穩定的通路,同時允許你免費使用一個動态域名服務,到寫本文為止,我的已經正常使用2個月左右了。

(1)注冊公雲賬戶

  登入http://www.pubyun.com,注冊一個使用者。

(2)域名注冊

  注冊自己的域名并将域名與本地公網ip綁定。如下圖是我的帳号資訊:

【原創】IP攝像頭技術縱覽(六)---通過internet通路攝像頭【原創】IP攝像頭技術縱覽(六)—通過internet通路攝像頭

(3)更新域名指向

  本實驗使用wget工具通過連結到一個包含使用者名、密碼和域名的URL來實作動态域名的指向更新。

使用的wget參數說明如下:

wget

-q — 下載下傳頁面并且不顯示任何資訊

-O —output-document=FILE 指定下載下傳目錄和檔案名

下面的是一個樣例Bash腳本,适用于3322:

#!/bin/sh
#########################################################################
# File Name: myddns.sh
# Author: chad
# mail: [email protected]
# Created Time: 2015年04月10日 星期五 13時13分04秒
#########################################################################

USERNAME="linczone"
PASSWORD="linpasswd"
DOMAINNAME="aitech.f3322.net"
SetIP=false      #為true時用ifconfig傳回的IP設定DNS,否則由伺服器自己判斷

while [  ]
do
    sleep m #每隔30分鐘更新一次
    if [ $SetIP ] ; then
        # 下面從ifconfig擷取IP,如果需要,可以手動更改
        MYIP=` grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'| head -n1`
        wget -q -O- "http://$USERNAME:[email protected]/dyndns/update?system=dyndns&hostname=$DOMAINNAME&myip=$MYIP"
    else
        wget -q -O- "http://$USERNAME:[email protected]/dyndns/update?system=dyndns&hostname=$DOMAINNAME"
    fi
done
           

  如果不提供IP,伺服器可以自動判斷請求的來源IP。但有時(如使用VPN時)請求來源IP并非電腦的真實IP,此時要将SetIP設為True,并使用腳本獲得電腦目前的IP。

(4)添加啟動項

  您需要切換到root使用者或使用sudo進行下面的操作。

  将上面的腳本存入适當的檔案夾,如/home/updateDNS,并增加可執行權限:

  

# chmod +x /home/updateDNS

  修改/etc/rc.local,在exit 0前面加入一行:

  

/home/updateDNS

  這樣系統每次啟動時就會自動運作域名更新服務了。

(5)通路測試

  由于我的伺服器監聽端口是20002,是以浏覽器中應該如下輸入:

http://aitech.f3322.net:20002/javascript.html

【原創】IP攝像頭技術縱覽(六)---通過internet通路攝像頭【原創】IP攝像頭技術縱覽(六)—通過internet通路攝像頭

繼續閱讀