SearXNG

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.

  • 0 Utenti hanno trovato utile questa risposta
Hai trovato utile questa risposta?

Articoli Correlati

ERPNext v15

Install and maintain ERPNext v15 on Ubuntu ERPNext v15 is installed with Frappe Bench, Node.js...

Open-EMR v7.0.3

Install and maintain Open-EMR v7.0.3 on Ubuntu OpenEMR 7.0.3 is built from the rel-7.0.3 source...

ERPNext v14

Last Updated: 31 August 2025Applies to: Ubuntu 24.04 LTS (fresh server recommended)Skill Level:...

WordPress

Install and maintain WordPress on Ubuntu WordPress is installed below a domain-specific Apache...

Joomla

Install and maintain Joomla on Ubuntu Joomla is installed from the latest selected release under...