利用騰訊雲輕量應用服務器搭建 WHOIS 查詢接口
WHOIS 是一個用於查詢域名/IP/ASN 信息的協議,可以查詢資源的註冊信息等,本文將介紹如何利用輕量應用服務器搭建 WHOIS 查詢接口。
部署輕量應用服務器
- 購買騰訊雲輕量應用服務器的步驟本文不再贅述,您可以通過騰訊雲活動或在輕量應用服務器控制檯新建購買。
- 本文以 Debian 12 爲例
登錄輕量應用服務器
- 打開輕量應用服務器控制檯找到您的實例,並點擊
登錄
。 - 點擊
登錄
登錄到服務器。 - 輸入
sudo su
切換到 root 用戶,然後輸入cd /root
進入 root 用戶的家目錄。
安裝 WHOIS 工具
安裝依賴
- 更新軟件包。
1
apt update && apt upgrade -y
- 在終端輸入以下命令安裝
redis-server
。1
apt install redis-server -y
安裝 WHOIS
- 打開Releases頁面,找到最新的版本,選擇系統對應的版本複製下載鏈接,輕量應用服務器一般爲
amd64
架構。 - 在終端輸入以下命令下載並解壓。
1
2
3mkdir whois && cd whois
wget https://github.com/KincaidYang/whois/releases/download/v0.1.6/whois_0.1.6_linux_amd64.tar.gz -O whois.tar.gz
tar -xzf whois.tar.gz - 修改配置文件。
1
vim config.json
1
2
3
4
5
6
7
8
9
10{
"redis": {
"addr": "localhost:6379",
"password": "",
"db": 0
},
"cacheExpiration": 3600,
"port": 8043,
"rateLimit": 50
}
redis
:Redis 服務器的地址、密碼和數據庫。cacheExpiration
:緩存過期時間,單位秒。port
:WHOIS 服務端口。rateLimit
:限制每秒請求次數,請注意該限制針對的是程序向註冊局發起查詢的頻率,而不是用戶向 WHOIS 服務發起查詢的頻率,如需限制用戶查詢頻率,請在 Nginx 或其他代理中配置。
啓動 WHOIS
- 在終端輸入以下命令啓動 WHOIS。
1
./whois
- 程序啓動後會顯示
Server is listening on port 8043...
- 使用瀏覽器訪問
https://服務器公網IP:8043
,如果顯示No WHOIS or RDAP server known for TLD:
則說明 WHOIS 服務已啓動成功。訪問前請先前往騰訊雲輕量應用服務器控制檯,點擊對應服務器,在防火牆中開放 8043 端口。
- 終端斷開連接後 WHOIS 服務會停止,可以使用
screen
或nohup
命令使其在後臺運行,或參照下方教程設置進程守護。
進程守護
1 | vim /etc/systemd/system/httpwhois.service |
1 | [Unit] |
ExecStart
:程序路徑。WorkingDirectory
:程序所在目錄,請將/path/to/whois
替換爲實際路徑。
設置完成後輸入以下命令運行:
1 | systemctl start httpwhois |
Nginx 反代
如果您需要使用域名訪問 WHOIS 服務,可以使用 Nginx 反代,安裝Nginx的步驟本文不再贅述,您可以參考Nginx 編譯開啓 Quic 或 HTTP/3,下面是示例配置文件:
1 | server { |
使用 WHOIS
WHOIS 服務支持查詢域名、IP 和 ASN 的 WHOIS 信息。
使用瀏覽器訪問
https://服務器公網IP:8043/example.com
即可查詢example.com
的 WHOIS 信息。使用瀏覽器訪問
https://服務器公網IP:8043/1.1.1.1
即可查詢1.1.1.1
的 WHOIS 信息。使用瀏覽器訪問
https://服務器公網IP:8043/AS205794
即可查詢AS205794
的 WHOIS 信息。
附錄
結語
QAQ 如果不想自建的話可以直接使用 whois.ddnsip.cn 提供的服務,如果有問題歡迎在代碼倉庫上提交issue,如果覺得本文對您有所幫助,歡迎去GitHub點個 star。
本博客所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來源 麻豆视频!