Tropic Host

SearXNG: מה זה ואיך להתקין מנוע חיפוש פרטי משלכם על VPS

2 דקות קריאה
Tropic
SearXNG: מה זה ואיך להתקין מנוע חיפוש פרטי משלכם על VPS

Language: he

SearXNG: מנוע חיפוש משלכם ללא מעקב על VPS

מנוע חיפוש רגיל יכול לקשר שאילתת חיפוש לכתובת IP, לעוגיות ולהיסטוריית פעילות. SearXNG משנה את מסלול הבקשה: הדפדפן מתחבר למופע שלכם, וזה פונה לכמה מנועי חיפוש חיצוניים ומשלב את התשובות שלהם בדף אחד.

המקורות החיצוניים רואים את כתובת שרת SearXNG במקום את העוגיות של המשתמש. השירות עצמו אינו בונה פרופיל פרסומי. עם זאת, אין כאן אנונימיות מלאה: בעלים של מופע ציבורי יכולים לשמור לוגים מבחינה טכנית, ולאחר שתפתחו קישור אתר היעד מתקשר שוב ישירות עם הדפדפן.

נבחן את היכולות של SearXNG ונקים מופע משלנו על VPS עם HTTPS והגנה באמצעות סיסמה.

מהו SearXNG וכיצד הוא פועל

SearXNG הוא מנוע מטא־חיפוש חינמי בקוד פתוח. הוא אינו מתחזק אינדקס משלו של אתרים: השירות מקבל תוצאות ממנועי חיפוש וממקורות מיוחדים שהוגדרו, מנרמל אותן ומציג אותן בממשק אחד.

Browser → your SearXNG → search engines
                         ↓
                  combined results

עבור כל שאילתה, SearXNG:

  1. קובע את קטגוריית החיפוש: אינטרנט, תמונות, חדשות, סרטונים או קטגוריה אחרת;
  2. פונה למקורות שנבחרו בשם השרת;
  3. אינו שולח אליהם את עוגיות המשתמש ומשתמש בפרופיל דפדפן אקראי עבור בקשות יוצאות;
  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, ולכן אפשר להגדיר אותו כמנוע החיפוש המוגדר כברירת מחדל בדפדפן. זמינה גם API של HTTP עם תשובות JSON, CSV או RSS, אם המנהל הפעיל את הפורמטים הנדרשים.

מופע יחיד יכול לשמש כשרת חיפוש עבור לוח מחוונים פנימי, בוט, סקריפט מחקר או עוזר AI מקומי. יש לחשוף את ה־API רק לאחר שהוגדרו אימות ומגבלות קצב.

עד כמה SearXNG פרטי

מה הוא עושהמה הוא לא עושה
אינו שולח עוגיות דפדפן למנועי חיפוש חיצונייםאינו מספק אנונימיות מלאה
מסתיר את כתובת ה־IP של המשתמש מאחורי כתובת ה־IP של השרתאינו מגן על המשתמש לאחר פתיחת אתר תוצאות
מסיר פרסום של צד שלישי וחלק מפרמטרי המעקבאינו מבטיח שבעלים של שרת של אדם אחר אינו שומר לוגים
יכול לשמש כ־proxy לתמונותאינו מחליף VPN, Tor או הגנת דפדפן

מופע ציבורי נוח להתנסות בשירות, אך צריך לסמוך על המנהל שלו, וכתובת IP משותפת מועדת יותר להגבלת קצב.

שרת משלכם נותן לכם שליטה על לוגים, מקורות וגישה, אך אינו הופך את הדפדפן לאנונימי.

מופע ציבורי, שרת ביתי או VPS

אפשרותיתרונותמגבלות
מופע ציבוריאין צורך להתקין דבראמון בבעלים, עומס, CAPTCHA
שרת ביתישליטה מלאה בלי לשכור VPSהמכשיר חייב לפעול ברציפות; קשה יותר להגדיר גישה מבחוץ
VPS משלכםפעולה 24/7, דומיין, HTTPS, גישה ממכשירים שוניםצריך לעדכן קונטיינרים ולעקוב אחר האבטחה

מופע SearXNG משלכם שימושי למשפחה, לצוות, למפתח או לכלי AI מקומיים. לחיפושים מזדמנים, מופע ציבורי פשוט יותר.

איזה VPS דרוש עבור SearXNG

העומס תלוי במספר המשתמשים, המקורות והשאילתות המקבילות. תצורות התחלה מעשיות:

תרחישCPURAMאחסון
משתמש אחד1 vCPU1 GB10 GB
משפחה או צוות קטן2 vCPU2 GB20 GB
API ושירותים נוספים2–4 vCPUמ־4 GBמ־30 GB

אין צורך בדיסק גדול. איכות הרשת, כתובת IP יציבה וזיכרון RAM פנוי חשובים יותר.

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 עם הדומיין וסוד אקראי:

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

המגביל מפחית את הסיכון שבוטים יעמיסו על המופע ויגרמו למנועי חיפוש חיצוניים להגביל את כתובת ה־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, ולאחר מכן הוסיפו את SearXNG לדפדפן באמצעות OpenSearch. כדי לעדכן אותו, הריצו:

sudo docker compose pull
sudo docker compose up -d

גבו את .env, את Caddyfile ואת תיקיית searxng. הפעילו את API של JSON רק כשצריך, ואל תשאירו אותו ללא סיסמה והגבלת קצב.

טעויות נפוצות

טעותתוצאהפתרון
הפיכת המופע לציבוריבוטים יוצרים עומס וה־IP מוגבל לעיתים קרובות יותרהשתמשו בסיסמה, ב־VPN או ב־Single Sign-On
הפעלת מקורות רבים מדיתוצאות איטיות ופסקי זמןהשאירו כמה מנועים יציבים
התייחסות ל־SearXNG כאילו הוא אינדקס עצמאיחלק מהתוצאות נעלמות כאשר מערכות חיצוניות נכשלותקחו בחשבון את התלות במקורות
ציפייה לאנונימיות מלאהאתר היעד עדיין יכול לעקוב אחר הדפדפןהשתמשו בהגנת דפדפן, VPN או Tor
הפעלה ללא HTTPSהשאילתות והסיסמה נשלחות ללא אבטחההשתמשו ב־reverse proxy עם TLS

סיכום

SearXNG משלב מקורות שונים בממשק אחד, מצמצם התאמה אישית ומספק שירות חיפוש יחיד לדפדפן, לסקריפטים או ל־AI מקומי. מופע ציבורי מספיק כדי להתנסות. לשימוש קבוע, שרת משלכם עם HTTPS, אימות, מגביל וכמה מקורות יציבים הוא בחירה טובה יותר.

אפשר להתחיל עם 1 GB RAM. הגדילו את המשאבים כאשר מספר המשתמשים גדל, כאשר מפעילים את ה־API או כאשר מריצים קונטיינרים נוספים.

FAQ

האם SearXNG אנונימי לחלוטין?

לא. הוא מסתיר חלק מהנתונים ממנועי החיפוש החיצוניים, אך מנהל המופע יכול לשמור לוגים. לאחר שתפתחו אתר, מנגנוני המעקב שלו עצמו חלים.

האם SearXNG טוב יותר מ־Google?

הוא פותר בעיה אחרת. Google בדרך כלל מהיר יותר ומתאים את התוצאות למשתמש במידה רבה יותר. SearXNG נותן לכם שליטה רבה יותר, מאפשר לשלב מקורות ותלוי פחות בפרופיל משתמש.

האם אפשר להשתמש ב־SearXNG בלי VPS?

כן. אפשר להשתמש במופע ציבורי, במחשב ביתי, ב־NAS או בשרת קטן. VPS נדרש עבור גישה 24/7 מכל רשת.

כמה RAM נדרש?

למשתמש אחד, התחלה עם 1 GB היא סבירה. למשפחה, לצוות, ל־API או לקונטיינרים נוספים עדיפים 2–4 GB.

האם אפשר לחבר את SearXNG לדפדפן או ל־AI?

כן. הדפדפן יכול להשתמש ב־OpenSearch, ואפליקציות יכולות להשתמש ב־HTTP API. יש להגן על גישת ה־API באמצעות אימות ומגביל.