WHOIS 是一個用於查詢域míng/IP/ASN 信息的協,可以查詢資源的註冊信息děng,本文將介紹如何利用輕量應用服務器搭jiàn WHOIS 查詢接kǒu

部署輕量應用服務

登錄輕量應用服務

  1. kāi輕量應用服務器控制tái找到您的實,並點登錄
    輕量應用服務器控制檯
  2. 登錄登錄到服務
    登錄服務器
  3. sudo su切換dào root 用,然後輸cd /root root 用戶的家目
    切換到 root 用戶

zhuāng WHOIS 工

安裝依lài

  1. 更新軟件bāo
    1
    apt update && apt upgrade -y
  2. 在終端輸入以下命令安zhuāngredis-server
    1
    apt install redis-server -y
    安裝 redis-server

zhuāng WHOIS

  1. kāiReleasesmiàn,找到最新的版běn,選擇系統對應的版本複製下載鏈jiē,輕量應用服務器一般wèiamd64gòu
    下載 WHOIS
  2. 在終端輸入以下命令下載並解
    1
    2
    3
    mkdir 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
  3. 修改配置文jiàn
    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 服務器的地zhǐ、密碼和數據
  • cacheExpiration:緩存過期時jiān,單位miǎo
  • port:WHOIS 服務端kǒu
  • rateLimit:限制每秒請求次shù,請注意該限制針對的是程序向註冊局發起查詢的頻,而不是用戶xiàng WHOIS 服務發起查詢的頻,如需限制用戶查詢頻,請zài Nginx 或其他代理中配zhì

dòng WHOIS

  1. 在終端輸入以下命令啓dòng WHOIS。
    1
    ./whois
  2. 程序啓動後會顯shìServer is listening on port 8043...
    啓動 WHOIS
  3. 使用瀏覽器訪wènhttps://服務器公網IP:8043,如果顯shìNo WHOIS or RDAP server known for TLD: 則說míng WHOIS 服務已啓動成gōng

    訪問前請先前wǎng騰訊雲輕量應用服務器控制tái,點擊對應服務,在防火牆中開fàng 8043 端kǒu

  4. 終端斷開連接hòu WHOIS 服務會停zhǐ,可以使yòngscreenhuònohup命令使其在後臺運xíng,或參照下方教程設zhì進程守

進程守

1
vim /etc/systemd/system/httpwhois.service
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[Unit]
[Unit]
Description=httpwhois
After=network.target

[Service]
Type=simple
User=root
Group=root
ExecStart=/path/to/whois/whois
WorkingDirectory=/path/to/whois
Restart=on-failure

[Install]
WantedBy=multi-user.target
  • ExecStart:程序路jìng
  • WorkingDirectory:程序所在目,請jiāng/path/to/whois替換爲實際路jìng

設置完成後輸入以下命令運xíng

1
2
systemctl start httpwhois
systemctl enable httpwhois

Nginx 反dài

如果您需要使用域名訪wèn WHOIS 服,可以使yòng Nginx 反dài,安zhuāngNginx的步驟本文不再贅shù,您可以參kǎoNginx 編譯開 Quic huò HTTP/3,下面是示例配置文jiàn

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
server {
listen 443 ssl;
listen [::]:443 ssl;

# 用於支chíQuichuòHTTP/3
listen 443 quic;
listen [::]:443 quic;

# 開HTTP/2
http2 on;

# 設置域míng
server_name whois.ddnsip.cn;

# QuichuòHTTP/3響應tóu
add_header Alt-Svc 'h3=":443"; ma=86400';

# HSTS
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
add_header X-XSS-Protection "1; mode=block";
add_header X-robot-Tag "all";
add_header x-download-options "noopen";

# CORS
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept";
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";

# 反dài
location / {
proxy_pass https://127.0.0.1:8043;
}

# SSL配zhì
ssl_certificate /etc/ssl/nginx/fullchain.crt;
ssl_certificate_key /etc/ssl/nginx/private.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
}

使yòng WHOIS

WHOIS 服務支持查詢域míng、IP ASN de WHOIS 信

  • 使用瀏覽器訪wènhttps://服務器公網IP:8043/example.com即可查xúnexample.comde WHOIS 信
    查詢域名 WHOIS

  • 使用瀏覽器訪wènhttps://服務器公網IP:8043/1.1.1.1即可查xún1.1.1.1de WHOIS 信
    查詢 IP WHOIS

  • 使用瀏覽器訪wènhttps://服務器公網IP:8043/AS205794即可查xúnAS205794de WHOIS 信
    查詢 ASN WHOIS

QAQ 如果不想自建的話可以直接使yòng whois.ddnsip.cn 提供的服,如果有問題歡迎zài代碼倉上提jiāoissue,如果覺得本文對您有所幫zhù,歡迎GitHub star。