Tropic Host

SearXNG: τι είναι και πώς να εγκαταστήσετε τη δική σας μηχανή αναζήτησης σε VPS

7 ελάχιστη ανάγνωση
Tropic
SearXNG: τι είναι και πώς να εγκαταστήσετε τη δική σας μηχανή αναζήτησης σε VPS

Language: el

SearXNG: η δική σας μηχανή αναζήτησης χωρίς παρακολούθηση σε VPS

Μια συνηθισμένη μηχανή αναζήτησης μπορεί να συνδέσει ένα ερώτημα με τη διεύθυνση IP, τα cookie και το ιστορικό δραστηριότητας. Το SearXNG αλλάζει αυτή τη διαδρομή: ο browser συνδέεται στη δική σας εγκατάσταση, η οποία ρωτά πολλές εξωτερικές μηχανές αναζήτησης και συνδυάζει τις απαντήσεις τους σε μία σελίδα.

Οι εξωτερικές πηγές βλέπουν τη διεύθυνση του διακομιστή SearXNG αντί για τα cookie του χρήστη. Η ίδια η υπηρεσία δεν δημιουργεί διαφημιστικό προφίλ. Ωστόσο, αυτό δεν σημαίνει πλήρη ανωνυμία: ο ιδιοκτήτης μιας δημόσιας εγκατάστασης μπορεί τεχνικά να κρατά αρχεία καταγραφής και, αφού ανοίξετε έναν σύνδεσμο, ο ιστότοπος προορισμού επικοινωνεί ξανά με τον browser.

Θα εξετάσουμε τις δυνατότητες του SearXNG και θα εγκαταστήσουμε τη δική μας εγκατάσταση σε VPS με HTTPS και προστασία μέσω κωδικού πρόσβασης.

Τι είναι το SearXNG και πώς λειτουργεί

Το SearXNG είναι μια δωρεάν μηχανή μετα-αναζήτησης ανοιχτού κώδικα. Δεν διατηρεί δικό του ευρετήριο ιστοτόπων: η υπηρεσία λαμβάνει αποτελέσματα από τις ρυθμισμένες μηχανές αναζήτησης και εξειδικευμένες πηγές, τα κανονικοποιεί και τα εμφανίζει σε μία ενιαία διεπαφή.

Browser → your SearXNG → search engines
                         ↓
                  combined results

Για κάθε ερώτημα, το SearXNG:

  1. προσδιορίζει την κατηγορία αναζήτησης: ιστός, εικόνες, ειδήσεις, βίντεο ή άλλη κατηγορία·
  2. επικοινωνεί με τις επιλεγμένες πηγές για λογαριασμό του διακομιστή·
  3. δεν τους στέλνει τα cookie του χρήστη και χρησιμοποιεί τυχαιοποιημένο προφίλ browser για τα εξερχόμενα αιτήματα·
  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 δεν ισχύει πλέον.

Αναζήτηση για τον browser και τα δικά σας εργαλεία

Το SearXNG υποστηρίζει OpenSearch, επομένως μπορεί να οριστεί ως προεπιλεγμένη μηχανή αναζήτησης του browser. Διατίθεται επίσης HTTP API με απαντήσεις JSON, CSV ή RSS, εφόσον ο διαχειριστής έχει ενεργοποιήσει τις απαιτούμενες μορφές.

Μία εγκατάσταση μπορεί να λειτουργήσει ως backend αναζήτησης για εσωτερικό dashboard, bot, script έρευνας ή τοπικό βοηθό AI. Το API πρέπει να εκτίθεται μόνο αφού ρυθμιστούν ο έλεγχος ταυτότητας και τα όρια ρυθμού.

Πόσο ιδιωτικό είναι το SearXNG

Τι κάνειΤι δεν κάνει
Δεν στέλνει cookie του browser σε εξωτερικές μηχανές αναζήτησηςΔεν παρέχει πλήρη ανωνυμία
Κρύβει την IP του χρήστη πίσω από την IP του διακομιστήΔεν προστατεύει τον χρήστη αφού ανοίξει τον ιστότοπο ενός αποτελέσματος
Αφαιρεί διαφημίσεις τρίτων και ορισμένες παραμέτρους παρακολούθησηςΔεν εγγυάται ότι ο ιδιοκτήτης ξένου διακομιστή δεν κρατά αρχεία καταγραφής
Μπορεί να λειτουργήσει ως proxy για εικόνεςΔεν αντικαθιστά VPN, Tor ή την προστασία του browser

Μια δημόσια εγκατάσταση είναι βολική για δοκιμή της υπηρεσίας, αλλά πρέπει να εμπιστεύεστε τον διαχειριστή της και μια κοινόχρηστη IP είναι πιθανότερο να περιοριστεί ως προς τον ρυθμό.

Ο δικός σας διακομιστής σάς δίνει έλεγχο στα αρχεία καταγραφής, τις πηγές και την πρόσβαση, αλλά δεν κάνει τον browser ανώνυμο.

Δημόσια εγκατάσταση, οικιακός διακομιστής ή VPS

ΕπιλογήΠλεονεκτήματαΠεριορισμοί
Δημόσια εγκατάστασηΔεν χρειάζεται να εγκαταστήσετε τίποταΕμπιστοσύνη στον ιδιοκτήτη, υπερφόρτωση, CAPTCHA
Οικιακός διακομιστήςΠλήρης έλεγχος χωρίς ενοικίαση VPSΗ συσκευή πρέπει να λειτουργεί συνεχώς· η εξωτερική πρόσβαση ρυθμίζεται δυσκολότερα
Το δικό σας VPSΛειτουργία 24/7, domain, HTTPS, πρόσβαση από διαφορετικές συσκευέςΤα containers πρέπει να ενημερώνονται και η ασφάλεια να παρακολουθείται

Η δική σας εγκατάσταση SearXNG είναι χρήσιμη για οικογένεια, ομάδα, προγραμματιστή ή τοπικά εργαλεία AI. Για περιστασιακές αναζητήσεις, μια δημόσια εγκατάσταση είναι απλούστερη.

Τι VPS χρειάζεται το SearXNG

Το φορτίο εξαρτάται από τον αριθμό των χρηστών, τις πηγές και τα ταυτόχρονα ερωτήματα. Πρακτικές αρχικές διαμορφώσεις:

ΣενάριοCPURAMΑποθήκευση
Ένας χρήστης1 vCPU1 GB10 GB
Οικογένεια ή μικρή ομάδα2 vCPU2 GB20 GB
API και πρόσθετες υπηρεσίες2–4 vCPUαπό 4 GBαπό 30 GB

Δεν χρειάζεται μεγάλος δίσκος. Η ποιότητα του δικτύου, μια σταθερή διεύθυνση IP και η διαθέσιμη RAM είναι σημαντικότερα.

Ένα Linux VPS από το tropic.host είναι κατάλληλο για αυτό το σενάριο: μπορείτε να ξεκινήσετε με μικρή διαμόρφωση και να αυξήσετε τους πόρους καθώς προσθέτετε χρήστες ή πρόσβαση 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 με το domain και ένα τυχαίο secret:

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",
]

Ο περιοριστής μειώνει τον κίνδυνο τα bot να υπερφορτώσουν την εγκατάσταση και να κάνουν τις εξωτερικές μηχανές αναζήτησης να περιορίσουν νωρίτερα τη διεύθυνση 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. Εκκίνηση των containers

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

Ανοίξτε το https://search.example.com. Το Caddy θα λάβει αυτόματα πιστοποιητικό TLS και στη συνέχεια ο browser θα ζητήσει το όνομα χρήστη searchuser και τον κωδικό πρόσβασης. Τα αρχεία καταγραφής του SearXNG είναι διαθέσιμα με αυτή την εντολή:

sudo docker compose logs -f searxng

Τι να ρυθμίσετε μετά την εκκίνηση

Κρατήστε μόνο τις χρήσιμες πηγές, επιλέξτε γλώσσα και ρύθμιση SafeSearch και προσθέστε το SearXNG στον browser μέσω OpenSearch. Για ενημέρωση, εκτελέστε:

sudo docker compose pull
sudo docker compose up -d

Δημιουργήστε αντίγραφο ασφαλείας των .env, Caddyfile και του καταλόγου searxng. Ενεργοποιήστε το JSON API μόνο όταν είναι απαραίτητο και μην το αφήνετε χωρίς κωδικό πρόσβασης και περιορισμό ρυθμού.

Συνηθισμένα λάθη

ΛάθοςΣυνέπειαΛύση
Κάνετε την εγκατάσταση δημόσιαΤα bot δημιουργούν φορτίο και η IP περιορίζεται συχνότεραΧρησιμοποιήστε κωδικό πρόσβασης, VPN ή single sign-on
Ενεργοποιείτε υπερβολικά πολλές πηγέςΑργά αποτελέσματα και λήξεις χρόνουΚρατήστε λίγες σταθερές μηχανές
Αντιμετωπίζετε το SearXNG ως δικό του ευρετήριοΟρισμένα αποτελέσματα εξαφανίζονται όταν αποτυγχάνουν εξωτερικά συστήματαΥπολογίστε την εξάρτησή του από τις πηγές
Περιμένετε πλήρη ανωνυμίαΟ ιστότοπος προορισμού μπορεί ακόμη να παρακολουθεί τον browserΧρησιμοποιήστε προστασία browser, VPN ή Tor
Το εκτελείτε χωρίς HTTPSΤα ερωτήματα και ο κωδικός πρόσβασης μεταδίδονται μη ασφαλώςΧρησιμοποιήστε reverse proxy με TLS

Συμπέρασμα

Το SearXNG συνδυάζει διαφορετικές πηγές σε μία διεπαφή, μειώνει την εξατομίκευση και παρέχει μία ενιαία υπηρεσία αναζήτησης για browser, scripts ή τοπικό AI. Μια δημόσια εγκατάσταση αρκεί για δοκιμή. Για τακτική χρήση, καλύτερη επιλογή είναι ο δικός σας διακομιστής με HTTPS, έλεγχο ταυτότητας, περιοριστή και λίγες σταθερές πηγές.

Μπορείτε να ξεκινήσετε με 1 GB RAM. Αυξήστε τους πόρους όσο μεγαλώνει ο αριθμός χρηστών, όταν ενεργοποιείτε το API ή όταν εκτελείτε επιπλέον containers.

FAQ

Είναι το SearXNG πλήρως ανώνυμο;

Όχι. Κρύβει ορισμένα δεδομένα από τις εξωτερικές μηχανές αναζήτησης, αλλά ο διαχειριστής της εγκατάστασης μπορεί να κρατά αρχεία καταγραφής. Αφού ανοίξετε έναν ιστότοπο, εφαρμόζονται οι δικοί του μηχανισμοί παρακολούθησης.

Είναι το SearXNG καλύτερο από το Google;

Λύνει διαφορετικό πρόβλημα. Το Google είναι συνήθως ταχύτερο και εξατομικεύει περισσότερο τα αποτελέσματα. Το SearXNG σάς δίνει περισσότερο έλεγχο, επιτρέπει τον συνδυασμό πηγών και εξαρτάται λιγότερο από ένα προφίλ χρήστη.

Μπορώ να χρησιμοποιήσω το SearXNG χωρίς VPS;

Ναι. Μπορείτε να χρησιμοποιήσετε δημόσια εγκατάσταση, οικιακό υπολογιστή, NAS ή μικρό server. VPS χρειάζεται όταν θέλετε πρόσβαση 24/7 από οποιοδήποτε δίκτυο.

Πόση RAM απαιτείται;

Για έναν χρήστη, η εκκίνηση με 1 GB είναι λογική. Για οικογένεια, ομάδα, API ή επιπλέον containers, προτιμήστε 2–4 GB.

Μπορεί το SearXNG να συνδεθεί με browser ή AI;

Ναι. Ο browser μπορεί να χρησιμοποιεί OpenSearch, ενώ οι εφαρμογές μπορούν να χρησιμοποιούν το HTTP API. Η πρόσβαση στο API πρέπει να προστατεύεται με έλεγχο ταυτότητας και περιοριστή.