Tropic Host

SearXNG: бұл не және VPS-ке жеке іздеу жүйесін қалай орнатуға болады

5 мин оқу
Tropic
SearXNG: бұл не және VPS-ке жеке іздеу жүйесін қалай орнатуға болады

Language: kk

SearXNG: VPS-тегі бақылаусыз жеке іздеу жүйеңіз

Кәдімгі іздеу жүйесі сұрауды IP мекенжайымен, cookie файлдарымен және әрекеттер тарихымен байланыстыра алады. SearXNG бұл жолды өзгертеді: браузер сіздің инстансыңызға қосылады, ал ол бірнеше сыртқы іздеу жүйесіне сұрау жіберіп, жауаптарын бір бетке біріктіреді.

Сыртқы дереккөздер пайдаланушының cookie файлдарын емес, SearXNG серверінің мекенжайын көреді. Қызметтің өзі жарнамалық профиль құрмайды. Дегенмен бұл толық анонимдік емес: жалпыға ашық инстанцияның иесі техникалық тұрғыда логтарды сақтай алады, ал сілтемені ашқаннан кейін мақсатты сайт браузермен қайтадан тікелей әрекеттеседі.

SearXNG мүмкіндіктерін қарастырып, HTTPS және құпиясөз қорғанысымен жеке инстанциямызды VPS-ке орнатамыз.

SearXNG деген не және ол қалай жұмыс істейді

SearXNG — тегін, ашық кодты метаіздеу жүйесі. Ол веб-сайттардың жеке индексін жүргізбейді: қызмет бапталған іздеу жүйелері мен арнайы дереккөздерден нәтижелер алып, оларды бірізді пішімге келтіреді және бір интерфейсте көрсетеді.

Browser → your SearXNG → search engines
                         ↓
                  combined results

Әр сұрау үшін SearXNG:

  1. іздеу санатын анықтайды: веб, суреттер, жаңалықтар, бейнелер немесе басқа санат;
  2. таңдалған дереккөздерге сервер атынан хабарласады;
  3. оларға пайдаланушының cookie файлдарын жібермейді және сыртқа шығатын сұраулар үшін кездейсоқ браузер профилін қолданады;
  4. жауаптарды бір нәтижелер бетіне біріктіреді.

Жылдамдық сыртқы жүйелерге байланысты: олар баяу жауап беруі, CAPTCHA көрсетуі немесе IP мекенжайды бұғаттауы мүмкін. SearXNG — басқарылатын аралық қабат, дербес индекс емес.

SearXNG неге бір іздеу жүйесінен қызығырақ

Бір нәтижелер бетіндегі әртүрлі дереккөздер

Жалпы мақсаттағы іздеу жүйелерін арнайы дереккөздермен біріктіруге болады: энциклопедиялар, карталар, ғылыми жарияланымдар, репозиторийлер, жаңалықтар қызметтері немесе сурет каталогтары. Бұл кәдімгі нәтижелер беті SEO парақтарымен толып кеткенде немесе тар тақырыптағы материалды табу қиын болғанда пайдалы.

Мақала дайындалған кезде құжаттамада 272 интеграция көрсетілген, оның 83-і әдепкі бойынша қосылған. Бұл олардың барлығы бірдей тұрақты дегенді білдірмейді.

Жиынтық конфигурацияға байланысты. Бірнеше тұрақты дереккөздің жұмысы әдетте бәрін бірден қосудан жылдамырақ.

Жылдам командалар

Қысқа пәрмендер іздеу жүйесін, санатты немесе тілді уақытша таңдауға мүмкіндік береді:

!wp docker compose       — search Wikipedia
!images northern lights  — search for images
:en !wp proxy server     — search Wikipedia in English

!! пәрмені пайдаланушыны тікелей сыртқы іздеу жүйесіне бағыттайды. Бұл режимде SearXNG қорғанысы қолданылмайды.

Браузер және жеке құралдарыңыз үшін іздеу

SearXNG OpenSearch стандартын қолдайды, сондықтан оны браузердің әдепкі іздеу жүйесі ретінде орнатуға болады. Әкімші қажетті пішімдерді қосқан болса, JSON, CSV немесе RSS жауаптары бар HTTP API де қолжетімді.

Бір инстанция ішкі бақылау тақтасына, ботқа, зерттеу скриптіне немесе жергілікті AI көмекшісіне іздеу сервері ретінде қызмет ете алады. API тек аутентификация мен жылдамдық шектеулері бапталғаннан кейін ашылуы керек.

SearXNG қаншалықты құпиялылықты қамтамасыз етеді

Ол не істейдіОл не істемейді
Браузер cookie файлдарын сыртқы іздеу жүйелеріне жібермейдіТолық анонимділікті қамтамасыз етпейді
Пайдаланушының IP мекенжайын сервердің IP мекенжайының артына жасырадыНәтиже сайтынан кейін пайдаланушыны қорғамайды
Үшінші тарап жарнамасын және кейбір бақылау параметрлерін жоядыБасқа адамның сервер иесі лог сақтамайтынына кепілдік бермейді
Суреттерді прокси арқылы жібере аладыVPN, Tor немесе браузер қорғанысын алмастырмайды

Жалпыға ашық инстанция қызметті сынауға ыңғайлы, бірақ оның әкімшісіне сенуіңіз керек, ал ортақ IP мекенжай жылдамдық шектеуіне жиірек ұшырауы мүмкін.

Жеке сервер логтар, дереккөздер және қолжетімділікті басқаруға мүмкіндік береді, бірақ браузерді анонимді етпейді.

Жалпыға ашық инстанция, үй сервері немесе VPS

НұсқаАртықшылықтарыШектеулері
Жалпыға ашық инстанцияЕштеңе орнатудың қажеті жоқИесіне сенім, шамадан тыс жүктеме, CAPTCHA
Үй серверіVPS жалдамай толық бақылауҚұрылғы үздіксіз жұмыс істеуі керек; сыртқы қолжетімділікті баптау қиынырақ
Жеке VPS24/7 жұмыс, домен, HTTPS, әртүрлі құрылғылардан қолжетімділікКонтейнерлерді жаңартып, қауіпсіздікті бақылау керек

Жеке SearXNG инстанциясы отбасыға, командаға, әзірлеушіге немесе жергілікті AI құралдарына пайдалы. Ара-тұра іздеу үшін жалпыға ашық инстанция қарапайымырақ.

SearXNG-ке қандай VPS қажет

Жүктеме пайдаланушылардың, дереккөздердің және бір уақытта орындалатын сұраулардың санына байланысты. Іс жүзіндегі бастапқы конфигурациялар:

СценарийCPURAMСақтау орны
Бір пайдаланушы1 vCPU1 GB10 GB
Отбасы немесе шағын команда2 vCPU2 GB20 GB
API және қосымша қызметтер2–4 vCPU4 GB-тан30 GB-тан

Үлкен дискі қажет емес. Желі сапасы, тұрақты IP мекенжай және бос RAM маңыздырақ.

tropic.host ұсынатын Linux VPS бұл сценарийге сай келеді: шағын конфигурациядан бастап, пайдаланушыларды немесе API қолжетімділігін қосқанда ресурстарды арттыра аласыз. Тариф таңдағанда сақтау орнына артық төлеуден гөрі RAM мен желі сапасына инвестиция салған пайдалырақ.

SearXNG-ті VPS-ке Docker Compose арқылы орнату

Бұл мысалда Ubuntu 24.04 LTS, search.example.com, Valkey және Caddy қолданылады. DNS-тегі A жазбасын серверге бағыттап, 80 және 443 порттарын ашыңыз.

1. Docker орнату және каталог жасау

sudo apt update
sudo apt install -y docker.io docker-compose-v2 openssl
sudo systemctl enable --now docker

sudo mkdir -p /opt/searxng/searxng
cd /opt/searxng

Домен мен кездейсоқ құпия мәні бар .env файлын жасаңыз:

printf 'SEARXNG_HOSTNAME=search.example.com\nSEARXNG_SECRET=%s\n' \
  "$(openssl rand -hex 32)" | sudo tee .env >/dev/null
sudo chmod 600 .env

2. docker-compose.yml жасау

name: searxng

services:
  searxng:
    image: docker.io/searxng/searxng:latest
    restart: unless-stopped
    environment:
      SEARXNG_BASE_URL: https://${SEARXNG_HOSTNAME}/
      SEARXNG_SECRET: ${SEARXNG_SECRET}
      SEARXNG_VALKEY_URL: valkey://valkey:6379/0
    volumes:
      - ./searxng:/etc/searxng:rw
      - searxng-cache:/var/cache/searxng
    depends_on: [valkey]

  valkey:
    image: docker.io/valkey/valkey:9-alpine
    restart: unless-stopped
    command: valkey-server --save 30 1 --loglevel warning
    volumes:
      - valkey-data:/data

  caddy:
    image: docker.io/caddy:2-alpine
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443"
      - "443:443/udp"
    environment:
      SEARXNG_HOSTNAME: ${SEARXNG_HOSTNAME}
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile:ro
      - caddy-data:/data
      - caddy-config:/config
    depends_on: [searxng]

volumes:
  searxng-cache:
  valkey-data:
  caddy-data:
  caddy-config:

3. SearXNG-ті баптау

searxng/settings.yml файлын жасаңыз:

use_default_settings: true

general:
  instance_name: "Private Search"

search:
  safe_search: 1
  autocomplete: ""
  formats: [html]

server:
  limiter: true
  image_proxy: true

valkey:
  url: valkey://valkey:6379/0

searxng/limiter.toml файлын жасаңыз:

[botdetection]
trusted_proxies = [
  "127.0.0.0/8",
  "::1",
  "172.16.0.0/12",
]

Limiter боттардың инстанцияға шамадан тыс жүктеме түсіріп, сыртқы іздеу жүйелерінің оның IP мекенжайын ертерек шектеу қаупін азайтады.

4. Құпиясөз және HTTPS қосу

Күрделі құпиясөз үшін hash жасаңыз:

sudo docker run --rm caddy:2-alpine \
  caddy hash-password --plaintext 'REPLACE_WITH_PASSWORD'

Алынған hash мәнін Caddyfile ішіне енгізіңіз:

{$SEARXNG_HOSTNAME} {
    basic_auth {
        searchuser INSERT_HASH_HERE
    }

    reverse_proxy searxng:8080 {
        header_up X-Real-IP {remote_host}
    }
}

Caddy ашық мәтіндегі құпиясөздің орнына hash сақтайды. Basic Auth орнына қызметті VPN арқылы да шектеуге болады.

5. Контейнерлерді іске қосу

sudo docker compose config
sudo docker compose pull
sudo docker compose up -d
sudo docker compose ps

https://search.example.com мекенжайын ашыңыз. Caddy TLS сертификатын автоматты түрде алады, содан кейін браузер searchuser пайдаланушы аты мен құпиясөзін сұрайды. SearXNG логтары мына пәрменмен қолжетімді:

sudo docker compose logs -f searxng

Іске қосылғаннан кейін нені баптау керек

Тек пайдалы дереккөздерді қалдырып, тіл мен SafeSearch параметрін таңдаңыз, содан кейін OpenSearch арқылы SearXNG-ті браузерге қосыңыз. Жаңарту үшін орындаңыз:

sudo docker compose pull
sudo docker compose up -d

.env, Caddyfile және searxng каталогының сақтық көшірмесін жасаңыз. JSON API-ді тек қажет кезде қосып, оны құпиясөз бен жылдамдық шектеуінсіз қалдырмаңыз.

Жиі кездесетін қателер

ҚатеСалдарыШешімі
Инстанцияны жалпыға ашуБоттар жүктеме жасайды, IP жиірек шектеледіҚұпиясөз, VPN немесе бірыңғай кіруді қолданыңыз
Тым көп дереккөзді қосуБаяу нәтижелер және тайм-ауттарБірнеше тұрақты жүйені қалдырыңыз
SearXNG-ті жеке индекс деп қабылдауСыртқы жүйелер істен шыққанда кейбір нәтижелер жоғаладыОның дереккөздерге тәуелділігін ескеріңіз
Толық анонимділікті күтуМақсатты сайт браузерді әлі де бақылай аладыБраузер қорғанысын, VPN немесе Tor қолданыңыз
HTTPS-сіз іске қосуСұраулар мен құпиясөз қорғалмаған түрде беріледіTLS бар reverse proxy қолданыңыз

Қорытынды

SearXNG әртүрлі дереккөздерді бір интерфейсте біріктіреді, жекелендіруді азайтады және браузерге, скрипттерге немесе жергілікті AI-ға арналған бірыңғай іздеу қызметін ұсынады. Оны сынау үшін жалпыға ашық инстанция жеткілікті. Тұрақты қолдану үшін HTTPS, аутентификация, limiter және бірнеше сенімді дереккөзі бар жеке сервер жақсырақ.

1 GB RAM-тан бастауға болады. Пайдаланушылар саны артқанда, API қосылғанда немесе қосымша контейнерлер іске қосылғанда ресурстарды көбейтіңіз.

FAQ

SearXNG толық анонимді ме?

Жоқ. Ол сыртқы іздеу жүйелерінен кейбір деректерді жасырады, бірақ инстанция әкімшісі логтарды сақтай алады. Веб-сайтты ашқаннан кейін оның жеке бақылау механизмдері қолданылады.

SearXNG Google-дан жақсы ма?

Ол басқа мәселені шешеді. Google әдетте жылдамырақ және нәтижелерді көбірек жекелендіреді. SearXNG көбірек бақылау береді, дереккөздерді біріктіруге мүмкіндік жасайды және пайдаланушы профиліне азырақ тәуелді.

SearXNG-ті VPS-сіз қолдануға бола ма?

Иә. Жалпыға ашық инстанцияны, үй компьютерін, NAS немесе шағын серверді қолдануға болады. Кез келген желіден 24/7 қолжетімділік үшін VPS қажет.

Қанша RAM қажет?

Бір пайдаланушы үшін 1 GB-тан бастау орынды. Отбасы, команда, API немесе қосымша контейнерлер үшін 2–4 GB дұрыс.

SearXNG-ті браузерге немесе AI-ға қосуға бола ма?

Иә. Браузер OpenSearch-ті, ал қолданбалар HTTP API-ді пайдалана алады. API қолжетімділігін аутентификация және limiter арқылы қорғау керек.