搭建SearXNG

🩻 Kali WSL 搭建 SearXNG:从入门到入土(完整版 · 2026)

适用人群 :Windows 用户、零 Linux 基础、想在局域网内拥有一个无广告、无追踪、可自定义的搜索引擎
环境 :Windows 10/11 + WSL2 + Kali Linux(2026.1)
目标 IPhttp://192.168.2.6:8888(根据你 ipconfig 输出确定)
核心原则:不暴露公网,仅限本地网络访问


📦 第一章:准备工作 ------ 先把地基打牢

✅ 1.1 确认 Windows 已启用 WSL

管理员身份 打开 PowerShell,执行:

powershell 复制代码
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

然后重启电脑

💡 2026 年的 Windows 默认已支持 WSL2,但需手动开启。


✅ 1.2 安装 Kali Linux WSL

打开 Microsoft Store,搜索 Kali Linux,点击"安装"。

或在 PowerShell 中直接安装:

powershell 复制代码
wsl --install -d kali-linux

安装完成后,首次启动会要求你创建用户名和密码(记住!这是你的 Linux 用户)。


✅ 1.3 配置 APT 源:USTC 为主,官方为备(推荐做法)

🔍 最佳实践:国内镜像放前面加速下载,官方源放后面作为 fallback,避免镜像同步延迟导致包缺失。

步骤 1:备份原始源

bash 复制代码
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

步骤 2:编辑源列表

bash 复制代码
sudo nano /etc/apt/sources.list

清空原内容,按以下顺序写入(USTC 在前,官方在后):

text 复制代码
# USTC 镜像(主)
deb https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib

# 官方源(备用)
deb https://http.kali.org/kali kali-rolling main non-free contrib
deb-src https://http.kali.org/kali kali-rolling main non-free contrib

✅ 这样配置后,apt 会优先从 USTC 下载;若 USTC 暂时不可用或缺少某包,会自动回退到官方源。

步骤 3:更新系统

bash 复制代码
sudo apt update && sudo apt upgrade -y

⚠️ 若提示 GPG 密钥错误,请运行以下命令更新 Kali 官方签名密钥:

bash 复制代码
wget -q -O - https://archive.kali.org/archive-key.asc | sudo gpg --dearmor -o /usr/share/keyrings/kali-archive-keyring.gpg

✅ 1.4 安装 Python 和构建依赖

SearXNG 要求 Python ≥ 3.11。Kali 2026.1 默认 Python 版本通常为 3.12+,可直接使用。

验证版本:

bash 复制代码
python3 --version
# 应输出:Python 3.12.x 或更高

安装必要依赖:

bash 复制代码
sudo apt install -y git python3-pip python3-venv build-essential \
libxslt-dev libxml2-dev libffi-dev libssl-dev zlib1g-dev

🔑 第二章:部署 SearXNG(支持 SSH 克隆)

💡 为提升 GitHub 克隆速度并避免 HTTPS 限流,推荐配置 SSH 密钥

👉 详细操作请参阅文末附录《附录 A:WSL 中配置 GitHub SSH Key 完全指南》。

✅ 2.1 克隆 SearXNG 仓库

方式一:使用 SSH(推荐,速度快,免密)

bash 复制代码
cd ~
git clone git@github.com:searxng/searxng.git
cd searxng

方式二:使用 HTTPS(无需配置,但可能较慢)

bash 复制代码
cd ~
git clone https://github.com/searxng/searxng.git
cd searxng

✅ 若尚未配置 SSH,请先完成 附录 A,或暂时使用 HTTPS 方式。


✅ 2.2 创建虚拟环境(隔离依赖)

bash 复制代码
python3 -m venv venv
source venv/bin/activate
pip install --upgrade pip wheel

✅ 2.3 安装 SearXNG 依赖(使用 USTC PyPI 镜像加速)

bash 复制代码
pip install -r requirements.txt -i https://pypi.mirrors.ustc.edu.cn/simple/

⏳ 使用 USTC PyPI 镜像可显著提升国内下载速度。


✅ 2.4 初始化配置文件

bash 复制代码
./manage.sh setup

该命令会:

  • ~/.searxng/ 下生成 settings.yml
  • 自动生成安全密钥(ultrasecretkey

⚙️ 第三章:配置局域网访问 ------ 让手机能搜

✅ 3.1 修改监听地址

编辑配置文件:

bash 复制代码
nano ~/.searxng/settings.yml

找到 server 部分,修改为:

yaml 复制代码
server:
  bind_address: "0.0.0.0"   # 关键!监听所有接口
  port: 8888
  public_instance: false    # 必须为 false,防止被公共目录收录

🔒 绝对不要设为 public_instance: true !否则会被自动提交到 searx.space,暴露你的 IP。


✅ 3.2 启动 SearXNG

bash 复制代码
# 确保在 searxng 目录下
source venv/bin/activate
python searx/webapp.py

看到以下输出即成功:

复制代码
Running on http://0.0.0.0:8888/

💡 可按 Ctrl+C 停止。后续可用 nohupscreen 后台运行(见第五章)。


✅ 3.3 放行 Windows 防火墙(关键!)

PowerShell(管理员) 中执行:

powershell 复制代码
New-NetFirewallRule -DisplayName "SearXNG LAN" -Direction Inbound -Protocol TCP -LocalPort 8888 -Profile Private -Action Allow

-Profile Private 表示只在"家庭/工作网络"下允许,更安全。


📱 第四章:局域网访问测试

✅ 4.1 获取 Windows 主机 IP

在 Windows PowerShell 中执行:

powershell 复制代码
ipconfig

找到 无线局域网适配器 WLAN以太网适配器 以太网 下的:

复制代码
IPv4 地址 . . . . . . . . . . . . : 192.168.2.6

✅ 4.2 在手机/其他设备上访问

打开浏览器,输入:

复制代码
http://192.168.2.6:8888

✅ 应看到 SearXNG 搜索界面!

🔍 首次搜索可能较慢(因需连接多个引擎),耐心等待。


✅ 4.3 (可选)优化搜索引擎

默认启用了大量引擎,部分在国内无法访问。建议禁用无效引擎:

编辑 ~/.searxng/settings.yml,找到 search > engines,例如:

yaml 复制代码
- name: google
  disabled: false
- name: bing
  disabled: false
- name: duckduckgo
  disabled: true   # 禁用
- name: yandex
  disabled: true   # 禁用

重启服务生效。


🧹 第五章:进阶与维护 ------ 从能用到好用

✅ 5.1 后台运行(避免关闭终端就停止)

安装 screen

bash 复制代码
sudo apt install -y screen

启动后台任务:

bash 复制代码
screen -S searxng
# 进入新会话后
cd ~/searxng
source venv/bin/activate
python searx/webapp.py
# 按 Ctrl+A, 再按 D 键分离会话

查看/恢复:

bash 复制代码
screen -ls          # 查看会话
screen -r searxng   # 恢复

✅ 5.2 开机自启(可选)

WSL2 不完全支持 systemd,推荐简单方案:

创建 Windows 启动脚本 start-searxng.bat

bat 复制代码
@echo off
wsl -d kali-linux -u your_username -e bash -c "cd ~/searxng && source venv/bin/activate && nohup python searx/webapp.py > /dev/null 2>&1 &"

将该 .bat 文件放入 shell:startup(开机启动文件夹)。

替换 your_username 为你的 WSL 用户名。


✅ 5.3 升级 SearXNG

bash 复制代码
cd ~/searxng
git pull
source venv/bin/activate
pip install --upgrade -r requirements.txt -i https://pypi.mirrors.ustc.edu.cn/simple/

🪦 第六章:入土指南 ------ 彻底卸载

步骤 1:停止服务

bash 复制代码
pkill -f "searx/webapp.py"

步骤 2:删除文件

bash 复制代码
rm -rf ~/searxng ~/.searxng

步骤 3:卸载 Kali WSL(可选)

在 PowerShell 中:

powershell 复制代码
wsl --unregister kali-linux

步骤 4:删除防火墙规则

在 PowerShell(管理员)中:

powershell 复制代码
Remove-NetFirewallRule -DisplayName "SearXNG LAN"

❓ 常见问题(FAQ)

问题 解决方案
手机打不开 192.168.2.6:8888 1. 确认 SearXNG 监听 0.0.0.02. 确认 Windows 防火墙已放行3. 在 Windows 本机浏览器测试 http://127.0.0.1:8888
报错 ModuleNotFoundError 确保激活了虚拟环境:source venv/bin/activate
搜索结果为空/超时 禁用无法访问的搜索引擎(如 Google、DuckDuckGo)
Python 版本过低 Kali 2026.1 默认 ≥3.12,若仍低,需手动编译 Python 3.13

📎 附录 A:WSL 中配置 GitHub SSH Key 完全指南

用于加速 git clonegit pull,避免 HTTPS 限速。

🔧 A.1 生成 SSH 密钥对(在 WSL 中操作)

bash 复制代码
ssh-keygen -t ed25519 -C "your_email@example.com"
  • 按回车使用默认路径 ~/.ssh/id_ed25519
  • 可设密码(passphrase),也可直接回车留空(方便自动化)

🔧 A.2 启动 ssh-agent 并添加密钥

bash 复制代码
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

🔧 A.3 复制公钥到剪贴板

bash 复制代码
cat ~/.ssh/id_ed25519.pub

复制输出的整行内容(以 ssh-ed25519 AAAAC3... 开头)。

🔧 A.4 添加到 GitHub

  1. 登录 GitHub → Settings → SSH and GPG keys
  2. 点击 New SSH key
  3. Title 填 Kali WSL
  4. Key type 选 Authentication
  5. 粘贴公钥内容,点击 Add SSH key

🔧 A.5 验证是否成功

bash 复制代码
ssh -T git@github.com

应返回:

复制代码
Hi <your_github_username>! You've successfully authenticated...

✅ 成功!现在你可以用 git@github.com:... 方式高速克隆仓库。


🎁 结语

现在,你拥有了一个:

  • 双源保障 的 APT 配置(USTC + 官方)
  • SSH 加速 的 GitHub 克隆体验
  • 完全私有 的搜索引擎
  • 无广告、无追踪
  • 局域网内任意设备可用
  • 可自定义引擎和主题

从此告别百度广告、谷歌审查、必应垃圾结果!

最后提醒:技术无罪,用途有界。请仅用于合法学习与个人隐私保护。


Happy Searching! 🔍

本文由qwen3Max辅助生成