拒绝大数据窥探,还能让小龙虾联网!NAS自建私有化搜索引擎

哈喽小伙伴们好,我是Stark-C~

咱就说,这年头大数据真的是越来越没有底线了,甚至连搜索引擎都被“绑架”!我在网上搜个出行攻略,就给我推一些酒店信息,查个资料什么的,没找到有用信息不说,还给我一堆乱七八糟的广告,最主要的是,当前的商业公共浏览器基本都会存在一些隐私安全方面的问题。

今天就教大家在NAS上私有化部署一个隐私至上的元搜索引擎『SearXNG』,不仅能让你告别被监控的搜索体验,还能作为一些项目的联网搜索后端,比如说给部署好的小龙虾开通“上网权限”。

关于SearXNG

🔺SearXng是一个免费开源、注重隐私的元搜索引擎(Meta Search Engine)。它汇聚了11大类上百种公开搜索引擎资源,并且也支持自定义搜索引擎。和我们常用的公共浏览器所不同的是,它本身不生产搜索结果,而是同时向多个搜索引擎发起请求,再把结果统一整合、过滤、排序后返回给用户。

项目Github地址:https://github.com/searxng/searxng

项目核心亮点:

  • 绝对隐私:SearXng搜索引擎不绑定账号,不上传任何数据,甚至连日志都没有,所有的搜索都在我们自己搭建好的服务上完成,我们干什么了,只有自己知道。

  • 元搜索能力:SearXng汇聚了上百种公开搜索引擎资源,它会把多个搜索源的结果聚合在一起,再经过去重、过滤和排序,所以我们看到会是一个更全面、更干净的搜索结果。

  • 自由化定制:我们可以通过它的设置项来定制更加适合自己的专属搜索引擎,比如说不同的搜索类别启用哪些搜索源、屏蔽哪些域名,甚至是通过一些规则来决定它的搜索排序、过滤。

SearXNG部署

🔺本次部署依然是以极空间NAS为例,打开文件管理器,在Docker目录下新建一个“searxng”的文件夹。

🔺然后点击极空间NAS的“Docker”应用,点击【Compose】 > 【新增项目】。

🔺在“创建项目”页面自定义项目名称,“存储位置”需要手动选择我们前面新建的searxng文件夹,勾选下方的“所有合规文件夹添加最大读写权限”,最后输入以下 Docker Compose 配置信息后点“创建”按钮:

services:
  searxng:
    image: searxng/searxng:latest
    container_name: searxng
    ports:
      - "8082:8080"    #项目打开端口,冒号前面不要冲突
    volumes:
      - ./searxng:/etc/searxng:rw
      - ./searxng-data:/var/log/searxng:rw
    environment:
      - SEARXNG_BASE_URL=http://192.168.31.122:8082/    #项目的真实打开链接(IP:端口号)
    restart: unless-stopped
    networks:
      - searxng-net

  redis:
    image: redis:alpine
    container_name: searxng-redis
    command: redis-server --appendonly yes
    volumes:
      - ./redis-data:/data
    restart: unless-stopped
    networks:
      - searxng-net

networks:

以上代码需要修改的地方就看我给到的中文注释,其它的直接保持默认即可。镜像的拉取需要自行解决网络问题,粘贴到自己的NAS这边之前建议使用AI工具优化一下,以防止格式问题造成的部署失败。

🔺部署好的项目会有两个Docker容器“运行中”。

SearXNG体验

🔺项目的打开方式没什么特别,直接浏览器地址栏输入【IP:端口号】即可,如果你有外网使用需求,也可以直接通过项目自带的“远程访问”一键打开,当然这个也是咱们极空间用户的专属福利了。

🔺项目原生支持中文,主页其实和我们日常使用的搜索引擎差不多,只不过SearXng看上去更干净更清爽。

🔺随便尝试搜索一下“什么值得买”,第一个坑出现了,貌似啥也没搜到。这个是正常情况,因为它目前默认的搜索引擎都是“国际版”,还不符合中国宝宝的体质。我们需要点开右上角的“首选项”稍作修改。

🔺打开首选项的“搜索引擎”设置,可以看到它下面有很多搜索引擎列表,问题是绝大多数咱们国内都用不了(甚至绝大部分我们都不认识),我们需要找到我们国内可以用的并开启就可以了(建议直接拉到引擎列表下方你就能看到几个熟悉的面孔了)。

🔺然后打开国内可用搜索引擎之后,在搜索关键字,它就会返回结果了。

🔺但是此时的SearXNG依然不好用,先不说因为联网问题导致结果被“阉割”严重,最主要的是目前它也不能被小龙虾找到,所以我们需要对它进行进一步的优化。打开NAS的文件管理器,依次打开“searxng--searxng--settings.yml”文件,settings.yml极空间这边目前不支持直接查看,我们直接选择“尝试用文本编辑器打开”即可,

🔺settings.yml原本的配置内容是给极客开发者使用的,体量很大。但是对于我们普通用户显得很是臃肿。所以我个人整理出了一个精简优化版。大家唯一需要修改的地方就在“outgoing”下面的位置改写成自己的网络代理链接,从而让SearXNG具备互联网的能力。如果说你有全局网络能力,直接把代理这里删掉即可。

我个人完整的精简优化版如下,大家直接复制粘贴过去即可(记得将原配置全部删除):

general:
  debug: false
  instance_name: "SearXNG"
  privacypolicy_url: false
  donation_url: false
  contact_url: false
  enable_metrics: true
  open_metrics: ''

brand:
  docs_url: https://docs.searxng.org/
  public_instances: https://searx.space
  wiki_url: https://github.com/searxng/searxng/wiki
  issue_url: https://github.com/searxng/searxng/issues

search:
  safe_search: 0
  autocomplete: ""
  autocomplete_min: 4
  favicon_resolver: ""
  default_lang: "auto"
  ban_time_on_fail: 5
  max_ban_time_on_fail: 120
  suspended_times:
    SearxEngineAccessDenied: 180
    SearxEngineCaptcha: 3600
    SearxEngineTooManyRequests: 180
    cf_SearxEngineCaptcha: 1296000
    cf_SearxEngineAccessDenied: 86400
    recaptcha_SearxEngineCaptcha: 604800
  formats:
    - html
    - json
    - csv
    - rss

server:
  port: 8888
  bind_address: "0.0.0.0"
  base_url: false
  limiter: false
  public_instance: false
  secret_key: "CHANGE_ME"
  image_proxy: false
  http_protocol_version: "1.0"
  method: "POST"
  default_http_headers:
    X-Content-Type-Options: nosniff
    X-Download-Options: noopen
    X-Robots-Tag: noindex, nofollow
    Referrer-Policy: no-referrer

valkey:
  url: "redis://searxng-redis:6379/0"

ui:
  static_path: ""
  templates_path: ""
  query_in_title: false
  default_theme: simple
  center_alignment: false
  default_locale: ""
  theme_args:
    simple_style: auto
  search_on_category_select: true
  hotkeys: default
  url_formatting: pretty

outgoing:
  request_timeout: 10.0
  max_request_timeout: 15.0
  enable_http: true
  useragent_suffix: ""
  pool_connections: 100
  pool_maxsize: 20
  enable_http2: true
  proxies:
    all://:
      - http://192.168.31.61:7897
  extra_proxy_timeout: 5

plugins:
  searx.plugins.calculator.SXNGPlugin:
    active: true
  searx.plugins.hash_plugin.SXNGPlugin:
    active: true
  searx.plugins.self_info.SXNGPlugin:
    active: true
  searx.plugins.unit_converter.SXNGPlugin:
    active: true
  searx.plugins.tracker_url_remover.SXNGPlugin:
    active: true

categories_as_tabs:
  general:
  images:
  videos:
  news:
  it:
  science:
  files:

engines:

  # 核心
  - name: google
    engine: google
    shortcut: go

  - name: bing
    engine: bing
    shortcut: bi

  - name: baidu
    engine: baidu
    baidu_category: general
    categories: [general]
    shortcut: bd
    disabled: true

  - name: duckduckgo
    engine: duckduckgo
    shortcut: ddg

  - name: brave
    engine: brave
    shortcut: br

  # 学术
  - name: google scholar
    engine: google_scholar
    shortcut: gos

  - name: semantic scholar
    engine: semantic_scholar
    shortcut: se

  - name: arxiv
    engine: arxiv
    shortcut: arx

  # 代码
  - name: github
    engine: github
    shortcut: gh

  - name: stackoverflow
    engine: stackexchange
    api_site: 'stackoverflow'
    shortcut: st

  - name: docker hub
    engine: docker_hub
    shortcut: dh

  # 图片
  - name: bing images
    engine: bing_images
    shortcut: bimg

  - name: pexels
    engine: pexels
    shortcut: pe

  - name: unsplash
    engine: unsplash
    shortcut: us

  - name: baidu images
    engine: baidu
    baidu_category: images
    categories: [images]
    shortcut: bdi
    disabled: true

  # 视频
  - name: youtube
    engine: youtube_noapi
    shortcut: yt

  - name: vimeo
    engine: vimeo
    shortcut: vm

  # 新闻
  - name: bing news
    engine: bing_news
    shortcut: bin

doi_resolvers:
  oadoi.org: 'https://oadoi.org/'
  doi.org: 'https://doi.org/'
  sci-hub.se: 'https://sci-hub.se/'
  sci-hub.st: 'https://sci-hub.st/'
  sci-hub.ru: 'https://sci-hub.ru/'

default_doi_resolver: 'oadoi.org'

engines_default:
  - google
  - bing
  - baidu
  - duckduckgo
  - brave

🔺有定制个性化搜索引擎需求的小伙伴也可以通过修改“engines”下面的内容来实现,注意格式缩进,建议搭配AI工具来操作。还有就是settings.yml这边的每次改动都记得点右上角“保存”按钮。

🔺然后回到项目页面,点击一下“重启”按钮,新的配置就算是正式生效了!

🔺这个时候我们再使用SearXNG,看到的搜索结果就将会是另外一个世界,可以看到我们定义的搜索引擎已经全部都正常启用了!

🔺那怎么让它作为小龙虾的搜索引擎呢?很简单!直接告诉小龙虾它的地址,剩下的基本就不用我们管,聪明的小龙虾自己就能把它配置好。

🔺甚至小龙虾还告诉了我们它和SearXNG的工作原理。

最后

总的来说,如果你也厌倦了市面上商业搜索引擎的广告轰炸和隐私泄露,那不妨试试在自己的 NAS 上搭建一个仅属于自己的专属搜索引擎。一次部署,长期受益,既能提升日常效率,也能为其它的项目打开更多的可能。

目前极空间的各大NAS产品优惠继续,同时极空间部分产品还可享受白条3期或6期免息政策,180天内出现质量问题只换不修,2年官方质保。喜欢的小伙伴不要犹豫赶快入手吧,早买早享受~

好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐