SearXNG Print

  • 0

How to Install SearXNG on Ubuntu 24.04

SearXNG is a privacy-respecting metasearch engine that aggregates results from multiple search engines without tracking users. This guide will show you how to install and configure SearXNG on Ubuntu 24.04.

 

Step 1 – Update Your System

sudo apt update && sudo apt upgrade -y

 

Step 2 – Install Dependencies and Redis

sudo apt install -y python3-dev python3-babel python3-venv python-is-python3 \
git build-essential libxslt-dev zlib1g-dev libffi-dev libssl-dev redis-server curl \
uwsgi uwsgi-plugin-python3

 Enable and start Redis:

sudo systemctl enable --now redis-server

Confirm Redis is running:

redis-cli ping

Expected output: PONG

Step 3 – Create a Dedicated User and Directories

Create a Dedicated User and Directories:

sudo useradd -r -m -d /usr/local/searxng -s /bin/bash searxng
sudo mkdir -p /usr/local/searxng/searxng-src
sudo chown -R searxng:searxng /usr/local/searxng

 

Step 4 – Clone the SearXNG Repository

Switch to the new user and clone the official repository:

sudo -u searxng git clone https://github.com/searxng/searxng.git /usr/local/searxng/searxng-src

 

Step 5 – Create and Activate a Virtual Environment

sudo -u searxng python3 -m venv /usr/local/searxng/searx-pyenv
sudo -u searxng /usr/local/searxng/searx-pyenv/bin/pip install --upgrade pip setuptools wheel

Step 6 – Install Dependencies and SearXNG

sudo -u searxng /usr/local/searxng/searx-pyenv/bin/pip install -r /usr/local/searxng/searxng-src/requirements.txt
sudo -u searxng /usr/local/searxng/searx-pyenv/bin/pip install --use-pep517 --no-build-isolation -e /usr/local/searxng/searxng-src

 

Step 7 – Create Configuration File

Generate a secret key:

sudo -u searxng /usr/local/searxng/searx-pyenv/bin/python -c "import secrets; print(secrets.token_hex(32))"

Copy the key and create the config file:

sudo mkdir -p /etc/searxng
sudo nano /etc/searxng/settings.yml

 Example content:

use_default_settings: true

general:
  debug: false
  instance_name: "SearXNG"

server:
  secret_key: "PASTE_YOUR_SECRET_KEY_HERE"
  public: true
  bind_address: "0.0.0.0"
  port: 8888

redis:
  url: "redis://localhost:6379/0"

Save and exit.

Step 8 – Create Systemd Service

sudo nano /etc/systemd/system/searxng.service

Add the following:

[Unit]
Description=SearXNG Meta-Search Engine
After=network.target redis-server.service
Wants=redis-server.service

[Service]
Type=simple
User=searxng
Group=searxng
WorkingDirectory=/usr/local/searxng/searxng-src
Environment="SEARXNG_SETTINGS_PATH=/etc/searxng/settings.yml"
Environment="PYTHONPATH=/usr/local/searxng/searxng-src"
ExecStart=/usr/local/searxng/searx-pyenv/bin/python -m searx.webapp
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

 

Step 9 – Enable and Start the Service

sudo systemctl daemon-reload
sudo systemctl enable --now searxng

Check its status:

sudo systemctl status searxng

Step 10: Allow the Port in Firewall 

Open your web browser and go to:

sudo ufw allow 8888/tcp

Step 11:  Access Your SearXNG Instance

Open your browser and go to:

http://<your-server-ip>:8888

 

You’ll see the SearXNG search page, ready to use — fast, customizable, and fully privacy-focused.

 You’ve successfully installed SearXNG on Ubuntu 24.04!

Enjoy private, decentralized web searches without tracking or ads.


Esta resposta lhe foi útil?
Back