網頁

2021年12月15日 星期三

Windows Server 2022 NAT伺服器設定

架設NAT伺服器,是要讓內部私有IP電腦,經由公用實體public IP ,連上網際網路。內部電腦可以上網,外面網路看不到這些電腦,內部的電腦較安全。
實作環境:Windows Server 2022 主機,兩張網路卡。


內部網卡:LAN IP 192.168.212.1  255.255.255.0    (不用設定預設閘道gateway) ,私有 IP網段,請自行選用合適網段,NAT 私有IP網段請避免與校內或單位內或網域內的私有IP網段重複,以避免跨網段時,可能造成相互干擾,造成連不上的問題。實際上碰到的案例是校內網域內有一個私有ip 網段(例如192.168.10.x),與用實體公用public ip 架設的nat 私有ip網段相同(例如192.168.10.x),理論上互不干擾,卻發生干擾問題,校內別的私有ip 網段的電腦,都可連到該實體ip+nat 架設網站,只有私有ip相同的網段的電腦,無法連到該實體ip+nat 架設的網站,也ping 不到該網站實體ip。
連外部網卡:WAN IP 設定ISP或學校分配的public IP。
兩張網卡重新命名:公用實體public IP的網卡名稱為wan,私有 IP網卡名稱為lan。
->在螢幕右下角網路圖示上按滑鼠右鍵-> 開啟網路和網際網路設定

->變更介面卡選項

在要重新命名的網卡上按滑鼠右鍵->重新命名
->輸入名稱 LAN (連內部集線器_>接 電腦)
->輸入名稱 WAN(實體IP連網際網路)
設定兩張網卡IP
在要設定 IP的網卡上按滑鼠右鍵->內容
TCP/IPv4->內容

wan IP範例
常用DNS有:
中華電信DNS服務(168.95.1.1與168.95.192.1)
Google 8.8.8.8、Cloudflare 1.1.1.1
IBM 9.9.9.9
學校或單位的DNS

wan實體IP範例

lan私有IP範例
(因設定時還未插網路線,圖上顯示X)

安裝 遠端存取
開始->伺服器管理員

->管理
->新增角色及功能

->下一步

->下一步

->下一步

->打勾 遠端存取
->下一步

->下一步

->下一步

->新增功能

->預設勾選 DirectAccess與VPN(RAS),預設勾選 路由

->安裝

安裝完成
->關閉

安裝完成伺服器請重開機。

NAT設定
->開始
->windows 系統管理工具->路由及遠端存取

->在 伺服器狀態 上按滑鼠右鍵->新增伺服器

->這台電腦->確定

在伺服器上按滑鼠右鍵->設定和啟用路由及遠端存取


->下一步

->網路位址轉譯(NAT)
->下一步

->選 wan 網卡(public IP)
->下一步

->啟用基本的名稱及位址服務

系統會自動使用另一張網路卡及設定的網段(NAT設定完成後,仍可以修改IP)
->下一步

->完成

設定中

設定成功,NAT伺服器的箭頭是綠色。
點選 IPv4 查看NAT

Ipv4->Nat->內容
->位址指派->取消 使用DHCP配置器來自動指派IP位址(U) 
->套用->確定

因NAT主機預設會阻擋DNS輸入查詢封包,因此,須在主機windows defender防火牆Firewall 的「輸入」設定,允許 UDP 53 PORT。
->開始->windows 系統->控制台

windows defender防火牆

->進階設定
->>輸入規則


->新增規則

->連接埠->下一步

->udp->特定本機連接埠 53->下一步

->下一步

->下一步

->名稱,輸入可以看得懂名稱即可,例如: 允許輸入 UDP 53 port 
->完成

設定完成了

NAT 內部LAN 私有IP網段的電腦,IP設定範例
LAN 私有IP網段的電腦,預設閘道要設NAT LAN網卡的IP(例如 192.168.212.1)


資料來源請參考:https://blog.pmail.idv.tw/?p=5165

2021年12月13日 星期一

IIS HTTP轉HTTPS-以windows server 2022為例

本文僅適用於學校網站且安裝windows server及iis,一台網站主機,一個網站(以windows server 2022或2019實作為例)。
使用https必須有憑證。學校或單位如果有申請校內或網域內所有網站主機都含入的共用憑證,可以直接請相關人員從原始安裝憑證的伺服器匯出憑證(記得須是從原始申請、安裝憑證的伺服器匯出),然後再到自己的伺服器匯入即可。如果沒有憑證也可以到G C P政府憑證網申請免費的憑證。IIS匯入的憑證檔須是有含私密金鑰的.pfx檔。

IIS HTTP轉HTTPS步驟:
•申請或取得憑證
•匯入憑證
•繫結 憑證
•設定HTTP轉HTTPS 有二種做法,請依需求擇一使用。
1.使用 URL Rewrite 模組:有安裝URL Rewrite 模組的伺服器,於伺服器收到瀏覽請求時,發現URL(網址)已異動, 就幫忙訪問異動後的URL,並將結果回傳給發出請求的瀏覽器。瀏覽器上仍顯示舊的URL
2.自訂 IIS 「錯誤網頁」URL Redirect:設定IIS 「錯誤網頁」403.4狀態碼,回應302重新導向至絕對URL,當伺服器收到瀏覽請求時,發現URL已經變動,伺服器會將異動後的URL回傳給瀏覽器(301 or 302),瀏覽器重新發送請求至異動後的URL。URL Redirect會由瀏覽器幫忙轉址到新的URL,所以瀏覽器上會顯示新的URL。

IIS匯入憑證:
開始->windows 系統管理工具->IIS

打開 IIS,選取 IIS 站台首頁->伺服器憑證。

->於右變 動作 列點選 匯入

點選事先做好或取得的 PFX 憑證檔。
輸入匯出 PFX 憑證檔的密碼。
->確定

於左邊選擇要繫結(綁定) HTTPS 的站台,Default Web Site。
選定站台後,在右邊動作列點選 繫結。

->要讓 HTTP 及 HTTPS 並存,選擇新增。
->類型選 HTTPS。連接埠自動帶入443
->主機名稱輸入網域名稱。
->選取已匯入的 SSL 憑證。
->確定。

->關閉
完成  繫結(綁定) HTTPS 的站台


安裝URL Rewrite
->點選右方"取得新的網頁平台元件"

->Install this extension

->開啟檔案

->打勾 I accept the terms in the license agreement
->install

->finish

開始->Microsoft Web Platform Installer

在右上角搜尋欄位中,輸入"URL Rewrite"
->按 Enter鍵 搜尋

->新增

->安裝

->我接受
安裝中

->完成
->結束

安裝完成後,一定要關閉Internet Information Services (IIS) 管理員,再重新開啟Internet Information Services (IIS) 管理員,才能IIS中找到"URL Rewrite"
->選取 IIS 站台首頁(注意:不是展開的Default Web Site)
->開啟URL Rewrite

->新增規則

->空白規則->確定

名稱:http to https(自己取名稱,看懂用途即可)
要求的URL:符合模式
使用:規則運算式
模式: (.*)

->點開「條件」
->「新增」


條件輸入: {HTTPS}
檢查輸入字串是否為:符合模式
模式: ^OFF$
->「確定」

點開「動作」
動作類型:重新導向
重新導向URL:https://{HTTP_HOST}/{R:1}
重新導向類型:永久 (301)
->設定完成,按右上角「套用」

完成URL Rewrite設定之後,在瀏覽器輸入這個網站的網址,就可以自動將 http:// 轉換為 https://  瀏覽。 

URL Rewrite的設定是儲存於C:\inetpub\wwwroot資料夾的web.config檔(如網站的資料夾不是C:\inetpub\wwwroot,則web.config檔位於該網站設定的資料夾。
可以不用開啟URL Rewrite設定 ,直接在web.config檔的 </defaultDocument>之後增加以下設定也可以。
        <rewrite>
            <rules>
                <rule name="RedirectTohttps" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions logicalGrouping="MatchAny">
                        <add input="{HTTPS}" pattern="^OFF$" />
                    </conditions>
                    <action type="Redirect" url="https://{HTTP_HOST}/{REQUEST_URI}" redirectType="Permanent" />
                </rule>
            </rules>
        </rewrite>


URL Rewrite的設定,網路上相關文章的設定範例於條件」 動作」兩大項,部分有差異,請讀者留意不同設定的影響。
例如  條件」:
模式: ^OFF$
模式: yourdomain.com
模式: off

例如「動作」:
重新導向URL:https://{HTTP_HOST}/{R:1}
重新導向URL:http://yourdomain.com/{R:1}

URL Rewrite 資料來源請參考:


自訂 IIS 「錯誤網頁」URL Redirect:
須已匯入憑證
開啟Internet Information Services (IIS) 管理員。
->展開 站台->Default Web Site
->開啟SSL設定


->勾選 需要SSL(Q)
勾選後用HTTP瀏覽網頁,會得到 HTTP 403.4 錯誤
略過:預設選項。如用戶端有提供憑證,不接受。一般網站選此項。
接受:用戶端有提供憑證,要接受用戶端憑證 ,先驗證用戶端識別,通過後,才允許用戶端存取內容。選此項。
需要:要求憑證先驗證用戶端識別,通過後,才允許用戶端存取內容。選此項。


於左邊選擇要設定的站台,Default Web Site。
->錯誤網頁

->新增

狀態碼輸入403.4
點選「回應 302 重新導向」,輸入要導向的 https: 版首頁。
->確定

設定完成。

自訂 IIS 「錯誤網頁」,資料來源請參考: