2016年11月20日 星期日

對外開放本地端虛擬網站 (VirtualBox CentOS)

作業順序 說明/備註

採用中華電信租用規格


非固定式之固定IP
中華電信路由器使用 D-Link,型號:DSL-7740C
安裝VirtualBox虛擬機 1、VirtualBox 此次版本採用5.1.8

2、虛擬機 OS => CentOS7.0 Minimal ISO檔,參考這裡

3、以下網路卡必須選 「橋接介面卡」



4、在上述3或下列圖示中(須安裝虛擬機完畢才能看)取出虛擬機MAC位址字串,再把它二個字插入一個冒號「:」。類似 => 08:00:27:86:7c:03



5、其餘環境設定參考以下的圖示









【虛擬OS設定與路由器相接的IP】

進入中華電信的路由器 http://192.168.1.1,帳秘:user/user
進入DHCP Server
以下看動態IP範圍,並設定虛擬機的IP。參考「DHCP Server > Add Static IP Setup 圖」

進入WAN Setup

以下看Index 編號。參考「 WAN Setup 圖」


進入DMZ
設定虛擬機IP為DMZ IP

1、設定虛擬機IP為DMZ IP

2、讓它啟動(Enable)

3、按 Add/Aply。參考「DMZ 圖」

4、 新增一個規則,參考以下「Virtual Server > Add Virtual Server Rules」圖。
5、增加完畢後,參考下圖
路由設定生效 須按「Reboot」按鈕
第一次啟動虛擬機 進入 VirtualBox 點按虛擬機圖示/名稱來啟動
開啟母機之終端軟體 (終端軟體即CLI)一般使用者權限須打 su 轉換為 root 權限。
啟動 ssh 登入虛擬機

若虛擬機新建成功,已有一個之前在中華電信路由器dhcp server 設定的虛擬機靜態IP可用。先用SSH登入這個IP。

登入語法:ssh root@<虛擬機的IP>(假設是:192.168.1.168)

若要採用SSH 金鑰登入,請自行參考網上設定金鑰的方式去作業。

登入後,查看防火牆現況,依自己需要決定要開關的服務與埠口。

下圖是防火牆已設定完畢後的樣本:(首次用ssh 登入時不會看到「http, https, smtp, TCP:12321」已被設定的狀況)
參照觀看路由器防火牆已開通服務
參照觀看路由器防火牆已開通服務,參考下圖
防火牆開通http服務 firewall-cmd --add-service=http --permanent
防火牆開通溝通埠口 開通虛擬機與中華電信路由器之溝通埠口
=> firewall-cmd --add-port=12321/tcp --permanent
防火牆重啟生效 systemctl restart firewalld
安裝Apache yum install httpd
設定Apache 組態檔 1、vim /etc/httpd/conf/httpd.conf
2、設定Listen <自選虛擬IP>:80 => 例:Listen 192.168.1.168:80
3、設定ServerName localhost.localdomain:80
Apache開機與即時生效 1、開機生效 systemctl enable httpd

2、即時生效 systemctl start httpd

3、若有照步驟來,卻啟動失敗,可能是因為路由器設定還沒生效,要再等
  一、二分鐘
網站根目錄權限設定 1、chown -R root:apache /var/www/html

2、chmod -R 770 /var/www/html
寫測試網頁 1、寫個 Hello Word! 的簡易網頁(index.html),放入 /var/www/html之中

2、使用 FileZilla 或其它FTP工具上傳
測試網站 http://<網域名 | 固定IP>,參考 「網站測試」圖
安全設定 防止駭客,先參考:安裝 CentOS 7 後必做的七件事



安裝完畢檢驗1 以下瀏覽虛擬子機之區網IP
安裝完畢檢驗2
以下瀏覽虛擬子機之中華電信浮動制固定ip
安裝完畢檢驗3
以下瀏覽虛擬子機之正式域名。(正式域名與固定IP要先掛鉤,須先去DNS設定)
查看執行效率
【查看執行效率】

1、以下由母機ping 虛擬子機的區網IP

速度平均約0.3毫秒,非常、非常、非常的快!比世界任一家雲端產品的速度快不知多少倍!(這是必然的,虛擬機就架在我的PC上,且路由時不經由網外的世界廣網繞徑)

若經過外部世界繞徑的速度,也只需平均約180毫秒,以我的設備及網速來說,算是上等的反應。

虛擬機當私有雲絕對划算,只要注意程式及資料的備援有做好,虛擬機可以正式當公司內部的伺服器。而且,比 docker 這類架構安全!(入侵docker 比入侵 VirtualBox
或 VMware 還容易)

目前的範例是使用VirtualBox,而且只開1GB記憶體/1執行緒(是vCPU,不是實體CPU。Intel 1核心有2個執行緒,也就是二個vCPU)。


2、以下由母機ping 虛擬子機的「浮動制固定IP」
(須先向中華電信申請浮動制之固定IP)

3、以下由母機ping 虛擬子機之正式域名(須先在DNS設定域名映射的固定IP)

4、以下由美國達拉斯網站CLI ping 中華電信所給的浮動制之固定IP(IP主機即本地端PC電腦中之虛擬子機)

花費時間約175毫秒!CLI測速主機是網站提供商的主機設備。

5、從世界各國 ping 中華電信浮動制之固定IP(主機在本地端PC電腦之虛擬子機中)

以下直立紅框內是全世界各地的反應。沒貼出來的上海伺服器反應只需45毫秒。

各地快慢浮動差異非常大,猜測跟各地設備所設定的架構、原則(來源、優先序)有關。



其它說明01 要使管理虛擬機更方便,可採免費的開源工具,以下是個人的建議。


1、ssh
  使用GNOME Terminal (即CLI;Command Line Interface)
  語法 => ssh  <帳號>@<虛擬機IP>



2、上下傳檔案:使用FileZilla



3、防毒:ClamAV



4、系統管理:Webmin

其它說明02 VirtualBox 映像檔UUID衝到後,重新設定映像檔UUID的語法,如下
=> VBoxManage internalcommands sethduuid /<路徑>/<檔名>