Web-Check部署全攻略:打造个人网站监控与分析中心

想深入了解一个网站的内部运作机制吗?无需安全专家背景,通过简单部署,你也能拥有专业的网站检测与分析能力。


01 工具介绍:Web-Check 到底是什么?

Web-Check 是一款开源的网站分析工具,它能帮助开发者、运维人员和安全研究者全面了解目标网站的各类信息。通过 Web-Check,你可以获取网站的基础架构信息、安全配置、性能指标等多维度数据。

它的核心功能包括网络基础分析(IP地址、地理位置、ISP信息、SSL证书详情)、网络架构解析(DNS记录、服务器位置信息)、性能与安全检测(加载速度、HTTP头部安全配置、开放端口扫描)以及交互功能审查(Cookie使用、重定向行为)。

简单来说,它就像一个"网站体检中心",只需要输入一个网址,就能生成一份详细的"健康报告"。

02 准备工作:

准备一台具备公网IP的云服务器(推荐使用雨云)

优惠注册地址:https://www.rainyun.com/sn_

使用优惠码:sn

注: 使用优惠码注册后绑定微信可领取5折优惠券

服务器选购步骤:

  1. 注册后,在"总览"页面找到"云服务器"入口,进入后点击"购买云服务器"

2.根据需求选择合适的配置,建议选择国内的服务器,访问更快,选好后点击立即购买即可

3.选好后进入控制台,使用SSH客户端远程连接服务器即可,SSH客户端建议选择FinalShell

关键检查点:

如果你使用的是 CentOS 系统,可以先通过以下命令检查当前环境:

bash 复制代码
# 检查操作系统版本
cat /etc/redhat-release

# 检查系统内核版本
uname -r

确保系统已更新至最新状态:sudo apt update && sudo apt upgrade -y(Ubuntu)或 sudo yum update -y(CentOS)。

03 Docker 环境搭建:高效部署的基础

Docker 是容器化技术的代表,它能够将应用及其依赖打包在一个轻量级、可移植的容器中,确保在不同环境中运行的一致性。

安装 Docker 引擎:

对于 Ubuntu 系统,可以使用 Docker 官方提供的一键安装脚本:

bash 复制代码
# 下载安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh

# 执行安装
sudo sh get-docker.sh

安装完成后,启动 Docker 服务并设置为开机自启:

bash 复制代码
# 启动Docker服务
sudo systemctl start docker

# 设置开机自启
sudo systemctl enable docker

# 验证安装是否成功
sudo docker container run hello-world

如果看到"Hello from Docker!"的提示信息,说明 Docker 已成功安装并运行。

安装 Docker Compose:

Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具,能极大简化容器管理。

bash 复制代码
# 下载Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

# 授予执行权限
sudo chmod +x /usr/local/bin/docker-compose

# 验证安装
docker compose version

04 部署实战:Web-Check 的两种部署方法

Web-Check 提供了两种主要的 Docker 部署方式,各有优缺点。

简易部署法(适合快速测试):

如果你只是简单测试,可以使用单行命令快速启动 Web-Check:

bash 复制代码
docker run -d --name web-check -p 3000:3000 ghcr.io/lissy93/web-check:latest

这种方法的优点是简单快捷,但缺乏持久化配置和便捷的管理方式。

推荐部署法(使用 Docker Compose):

对于长期使用,推荐使用 Docker Compose 方式部署,便于管理和维护。

首先创建项目目录并编写配置文件:

bash 复制代码
# 创建项目目录结构
mkdir -p ~/web-check && cd ~/web-check

创建 docker-compose.yml 文件:

yaml 复制代码
version: '3.9'
services:
  web-check:
    image: lissy93/web-check
    container_name: web-check
    restart: always
    ports:
      - '6599:3000'
    # 可以在此处添加其他配置,如环境变量等

启动 Web-Check 容器:

bash 复制代码
# 在后台启动容器
sudo docker compose up -d

05 部署验证与访问:确保一切就绪

容器启动后,需要确认其运行状态是否正常。

检查容器状态:

bash 复制代码
# 查看容器运行状态
docker ps

# 查看容器日志,确认无报错
docker logs web-check

如果看到 "Web-Check is up and running at http://localhost:3000" 的提示,说明服务已正常启动。

本地访问测试:

现在可以通过浏览器访问 Web-Check 界面了:

  • 直接访问:http://你的服务器IP地址:6599
  • 如果是在服务器本机,可访问:http://localhost:6599

端口访问问题排查:

如果无法访问,请检查:

  1. 防火墙设置:确保服务器的防火墙已放行 6599 端口

    bash 复制代码
    # Ubuntu使用ufw
    sudo ufw allow 6599
    
    # CentOS使用firewalld
    sudo firewall-cmd --permanent --add-port=6599/tcp
    sudo firewall-cmd --reload
  2. 云服务器安全组:如果使用的是阿里云、腾讯云等云服务,需在控制台的安全组设置中开放 6599 端口

  3. 端口占用检查:确认 6599 端口未被其他应用占用

访问成功后,你会看到一个简洁的 Web-Check 界面,在输入框中输入你想分析的网站地址(如 https://example.com),点击"Analyze!"按钮,即可开始全面的网站分析。

06 进阶配置:定制化与远程访问

配置修改与持久化:

如果需要修改 Web-Check 的运行端口,只需编辑 docker-compose.yml 文件中的端口映射部分,将左侧的宿主机端口改为你想要的端口即可:

yaml 复制代码
ports:
  - '8080:3000'  # 将外部访问端口改为8080

修改后,需要重新启动容器:sudo docker compose up -d --force-recreate

远程访问设置:

默认情况下,Web-Check 只能在服务器本地访问。如果需要从公网访问,可以考虑以下方案:

方案一:端口直接暴露

最简单的方法是直接通过服务器公网IP和端口访问,但需要注意安全风险,建议配置防火墙限制访问IP。

方案二:使用反向代理

通过 Nginx 等反向代理服务器,可以提供更安全的访问方式,并支持 HTTPS 加密:

nginx 复制代码
server {
    listen 80;
    server_name your-domain.com;
    
    location / {
        proxy_pass http://localhost:6599;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

方案三:内网穿透工具

对于没有公网IP或需要动态访问的情况,可以使用内网穿透工具如 cpolar或 frp,将本地服务暴露到公网。


部署完成后,Web-Check 的使用非常简单。在主页输入框中输入你想分析的网站地址,点击"Analyze!"按钮,等待片刻,你就能看到一份详细的网站分析报告。

通过这个完全免费、自托管的 Web 分析工具,你可以深入了解任何网站的技术架构、安全状况和性能表现。

相关推荐
每次学一点2 小时前
【ZeroTier自研之路】planet的组成
服务器·网络·数据库
Turboex邮件分享2 小时前
邮件投递全流程故障排查手册
运维·人工智能
冰暮流星2 小时前
javascript之双重循环
开发语言·前端·javascript
爱敲点代码的小哥2 小时前
C#视觉模板匹配与动态绘制实战(绘制和保存,加载tb块,处理vpp脚本的方式)
前端·javascript·信息可视化
hwj运维之路2 小时前
超详细ubuntu22.04部署k8s1.28高可用(二)【结合ingress实现业务高可用】
运维·云原生·容器·kubernetes
南风知我意9572 小时前
【前端面试3】初中级难度
前端·javascript·面试
霍理迪2 小时前
JS作用域与预解析
开发语言·前端·javascript
切糕师学AI2 小时前
.NET Core Web 中的健康检查端点(Health Check Endpoint)
前端·kubernetes·.netcore
玉梅小洋2 小时前
Linux命令详解 —— IP 命令及永久配置
linux·运维·tcp/ip