Zentyal設定DLLL-CIAS Router雲端網路模組 / Configuration of DLLL-CIAS Router
這一份教學我專為Zentyal自製的DLLL-CIAS Router雲端網路模組的操作說明,主要是在描述雲端平台會用到的Back End功能。
In this article is a manual for DLLL-CIAS Router module’s Back End function. DLLL-CIAS Router for Zentyal is the core component for the network management of DLLL-CIAS platform.
- 對應講義:PART-3-STEP-6
- 主題:設定雲端模組
教學目錄 / Table of Contents
- Zentyal 3.0.2安裝準備
- 安裝Zentyal 3.0.2
- DLLL-CIAS之Zentyal網路設定
- 設定Zentyal DHCP伺服器
- Zentyal安裝DLLL-CIAS Router雲端網路模組
- [目前在此篇 >> ] Zentyal設定DLLL-CIAS Router雲端網路模組
Back End功能 / Back End Function
我們可以用虛擬機器管理伺服器(Proxmox VE)輕易地在DLLL-CIAS雲端平台中新增虛擬機器,可是虛擬機器仍然是在DLLL-CIAS區域網路中,並沒有辦法直接跟外部網路來連線。因此我們必須要設定網路管理伺服器的DLLL-CIAS Router雲端網路模組來連接內網與外網。
一般來說,連接內外網的設定有兩種:連接埠轉遞(Port Forwarding)跟反向代理伺服器(Reverse Proxy)。雲端網路模組就是結合了這兩種功能,再加上簡單的管理資訊,讓我們能夠透過雲端網路模組來管理大量的虛擬機器。
這部份的設定主要都是在DLLL-CIAS Router雲端網路模組中的Back End功能。以下介紹Back End是如何操作:(由於圖片的部分是採用舊版模組來拍攝,名稱跟新版模組略有不同,但位置都一樣。)
虛擬機器網路舉例 / Virtual Machine Network Example
以下教學我在DLLL-CIAS區域網路中建立虛擬機器,然後要透過網路管理伺服器Zentyal讓它可以給外部連線。
虛擬機器中的區域網路設定為:
- IP位址:10.9.4.57
- NETMASK 子網路遮罩:255.0.0.0
- DNS:10.0.0.254
我要讓他可以用以下網域名稱(Domain Name)連線:
- http://teach-workshop-vm-57-2014.dlll.nccu.edu.tw
以下教學就用這個範例來進行設定。
新增Back End設定 / Add Configuration to Back End
- 登入Zentyal網頁管理介面
- 點選左方欄位的DLLL-CIAS > Router > Back End
- 按下「+Add new」
- 設定Back End的各項參數,然後按下「ADD」按鈕。
- 設定完成之後應該會如下圖所示:
- 然後按下右上角的「Save changes」儲存設定即可。
Back End欄位設定 / Back End Fields
Back End要輸入的欄位很多,主要有三個部分:基本連線資訊、管理資訊、連接埠轉遞設定、其他資訊。
基本連線資訊 / Network Configuration Fields
欄位英文 | 欄位中文 | 舉例 | 說明 |
Enabled | 啟用 | [v] | 有打勾才會生效 |
Domain Name | 網域名稱 | teach-workshop-vm-57-2014.dlll.nccu.edu.tw | 要提供給外部連線的網域名稱 |
Bound Local DNS | 綁定本地DNS | [v] | 有打勾才會一併設定Zentyal內部的DNS |
Internal IP Address | 內部區域網路IP位址 | 10.9.4.57 | 設定虛擬機器在區域網路中的IP位址 |
Network Card MAC Address | 虛擬機器網路卡MAC位址 | (略) | 固定DHCP配給IP位址使用 |
Internal Port | 連接埠 | 80 | 虛擬機器提供HTTP服務的連接埠,預設80 |
Redirect HTTP to HTTPS port forwarding | 重新轉向到HTTPS | [ ] | 如果虛擬機器只提供HTTPS服務,勾選此項可以把HTTP連線轉向到HTTPS連接埠轉遞的連接方式 |
管理資訊 / Administration Fields
欄位英文 | 欄位中文 | 舉例 | 說明 |
Contact Name | 聯絡人姓名 | 布丁 | 此虛擬機器的負責人 |
Contact Email | 聯絡人電子信箱 | pulipuli.chen@gmail.com | 負責人聯絡E-mail |
Description | 描述 | (HTML豐富文本) | 敘述虛擬機器的欄位。此處我額外加入了TinyMCE編輯器,操作起來跟其他欄位不太一樣 |
Expiry Date | 使用期限 | 2015/1/1 | 此虛擬機器使用的到期日 |
連接埠轉遞 / Port Forwarding Fields
連接埠轉遞分成HTTP、HTTPS、SSH、RDP四種服務。預設Back End會開啟這四種常用服務的連接埠轉遞,讓管理者方便用連接埠轉遞來連線到虛擬機器,使用預設值不需要特別修改就可以使用。這四種服務設定都大同小異,以下以HTTP的連接埠轉遞來舉例:
欄位英文 | 欄位中文 | 舉例 | 說明 |
Enable HTTP Redirect | 啟用HTTP連接埠轉遞 | [v] | 啟用HTTP連接埠轉遞 |
Only For Administrator | 限定管理者連線 | [ ] | 此連接埠轉遞只能限定「Administratrator Object」範圍的網路才能連線,提高安全性。其他三種服務預設都是開啟此項。 |
Enable Zentyal Log | 啟用記錄功能 | [ ] | 啟用Zentyal原本的紀錄功能。不是重要的訊息不需要記錄。 |
HTTP External Port | HTTP對外連接埠 | Default: Based on IP address | 根據IP地址產生對外連接埠,這點稍後再說明。 |
HTTP Internal Port | HTTP對內連接埠 | (Use reverse proxy internal port) | 只有HTTP服務不能修改,跟上面的「Internal Port」綁在一起設定。其他服務都有預設的連接埠,而且可以修改。 |
HTTP Note | HTTP服務備註 | (略) | 撰寫備註事項,像是登入帳號/密碼之類的。 |
其他資訊 / Other Fields
還有其他三項設定,說明如下:
欄位英文 | 欄位中文 | 舉例 | 說明 |
Other Redirect Ports | 其他連接埠轉遞設定 | (不能在此設定) | 設定以上四種服務之外的連接埠轉遞,必須在新增Back End之後才能設定。 |
Create Date | 建立日期 | (系統自動產生) | 此項設定建立的日期 |
Update Date | 更新日期 | (系統自動產生) | 此項設定最近修改的日期 |
根據IP產生對外連接埠規則 / External Port Rule
以下說明連接埠產生的規則。DLLL-CIAS的對外連接埠是以5碼組成,前3碼代表虛擬機器的區域網路IP位址設定,後2碼表示服務的連接埠。
前3碼範圍為101~499,其第1位數字代表IP位址的第三部分,第2位與第3位數字代表IP位址的第四部分。舉例來說,10.9.4.57,其前3碼即為457。
後2碼範圍為00~99,其對應到各種服務的通訊協定使用的連接埠後2碼。在DLLL-CIAS中,常使用的通訊協定與簡略連接埠如下,XXX為前3碼:
通訊協定 | 對外連接埠 | 對內連接埠 |
HTTP | XXX80 | 80 |
HTTPS | XXX43 | 443 |
SSH | XXX22 | 22 |
RDP | XXX89 | 3389 |
因此以10.9.4.57的HTTP服務為例,其連接埠轉遞的連接埠號碼就是45780。
小結 / Conclusion
DLLL-CIAS網路管理伺服器的教學就差不多到此為止了。Zentyal提供了自行開發模組的功能,可以讓我隨心所欲地加入任何想要的網路功能進去,這點令人開心。可是Perl程式語言與Zentyal不太靈活的架構也讓我十分困擾,開發門檻並沒有想像中的簡單。不過弄到現在,也總算對Zentyal有一些了解。經過一年的使用經驗,也逐漸開發出各種其他功能。這篇沒有介紹Node、URL Redirect跟DNS則是我們自己管理在用的,一般人比較少用到,再此就不介紹了。
令人擔心的是,Zentyal在資料量大增之後,網頁管理介面的反應速度似乎有點慢了下來。不過基本網頁連線使用還是很正常,所以就先不在意了。
好,那繼續寫其他教學。