阿里云搭建的網(wǎng)址,傻瓜式禁止國外IP訪問
1. 介紹
方案適合技術新手,同時博客網(wǎng)站內容發(fā)布是面向國內群體。
可以通過域名解析商進行攔截國外Ip地址的訪問。
例如:本站主要是面向國內中文群體,進行分享相關知識。
近期通過nginx中的日志發(fā)現(xiàn)有大量的來自國外ip的攻擊訪問。我們如果采用防火墻進行攔截ip又比較繁瑣。
不管是什么樣的手動防護,都避免不了被攻擊。
最終,總結了一下。國內也有各種自動攻擊的。但是更多的還是國外ip的訪問。
所以,就思考有沒有辦法直接封禁呢?
有,而且方法比較簡單。
2. 阿里云DNS解析
首先通過阿里云工作臺,訪問云解析DNS 功能。然后找到你需要限制的域名,進行解析配置的添加
點擊上圖中的:添加記錄按鈕。
首先,配置記錄類型:A, 主機記錄:* 代表所有的包括域名下的二級域名等等。
最主要的是解析請求來源和記錄值這兩個參數(shù)。
我們選擇:境外
所有的中國內地以外的地區(qū)和國家訪問我們的域名時,都會直接指向下面填寫的記錄值的地址。
2.1 解釋
稍微解釋一下請求來源和記錄值的關系。
所有的域名地址,最終都是通過DNS服務器指向一個具體的IP地址的。
而我們在這里配置的各種參數(shù),就是在告訴DNS服務器,如果有人訪問我們的域名。那么你應該給它返回什么樣的ip。
而記錄值就是要返回的ip了。
例如,配置所有境外ip的訪問時,我們將域名指定到127.0.0.1 這個ip地址。這個ip地址是所有電腦的本地ip地址。
也就是說所有國外訪問我們的域名,最終都會訪問到它的本機上去。
PS1:你也可以通過這里,讓訪問者訪問到其他的服務器中。根據(jù)大家的實際需求進行調整。
當我們配置完畢后,執(zhí)行保存。就可以了。
PS2:配置完畢之后,根據(jù)實際使用經(jīng)驗來說。并不是10分鐘之后,全球所有境外訪問的ip都指向我們定義的地址了。
而是會有一個逐步更新的過程。畢竟服務器更新同步,是需要時間的。特別是這種dns配置的刷新。所以,多等一段時間,
就我個人體驗來說,過了兩天nginx日志中還是會收到國外ip的訪問。但是可以明顯感覺到減少了。
3. 其他
當我們配置國外ip訪問域名禁止之后。請注意如果對方直接通過ip還是能夠訪問我們的服務器的。
這個時候,我們可以通過nginx進行過濾,將所有ip地址的訪問直接返回404或444。具體的可以參考我的文章:
Nginx 配置,禁止通過ip地址直接訪問Web 服務
3.1 記錄類型
擴展一下,我們在添加dns記錄類型的時候,會有很多種選擇:
只需要把握一個核心觀點,不管是什么樣的記錄,目標都是將用戶訪問我們的域名時,引導到具體的服務器去處理。
而不同的記錄類型, 它影響的是記錄值的類型和參數(shù)格式。
- A:將域名指向一個IPV4地址。就是配置該記錄類型后,我們在下面添加記錄值的時候,只能是填寫一個ipv4的地址
- CNAME:將域名指向另外一個域名。通常就是cdn服務等,對方訪問的是我們的域名地址,但是實際數(shù)據(jù)是需要第三方服務商提供的,例如oss,cdn等等。
- AAAA:將域名指向一個IPV6地址。我們如果有一個ipv6的服務器地址,那么就需要配置這個選項,將域名引導到ipv6的服務器上去。
- NS:將子域名指向其他DNS服務器解析。我們可以將二級域名等其他子域名,指定由巨團體的DNS服務器進行解析。(個人用的比較少)
- MX:將域名指向郵件服務器地址。通常搭建郵件服務器的時候會用到,現(xiàn)在個人用的比較少。
- SRV:提供特定的服務的服務器。其實就是通過該標識記錄了服務器都提供了哪些服務信息,一般是為Microsoft的活動目錄設置時的應用。(特殊服務器配置比較多,個人較少)
- TXT:文本記錄類型,長度限制512,通常做SPF記錄。常見的情況下是各種廠商需要驗證我們域名是否屬于本人時,進行添加的txt記錄。不會影響域名的正常訪問。
- CAA:CA證書頒發(fā)機構授權校驗。和txt是類似的,但是是CA證書進行域名認證檢測使用的。(個人可以暫時忽略,不影響)
- 顯性URL:將域名重定向到另外一個地址。例如我們想將所有訪問某個二級域名的請求,重定向到其他域名,就可以直接使用這個配置。而不用通過nginx等軟件的重定向功能。
- 隱性URL:將域名重定向到另外一個地址,但是會隱藏真實目標地址。和顯性URL不一樣,就是重定向的時候,不會告訴訪問者你現(xiàn)在訪問的是哪個url而已。