Create Your Own Search Engine for More Privacy & Zero Trust Issues
Search engines inevitably carry some traces of metadata about anyone who uses them, even if just temporarily. If you don't want to trust this data to a third-party search engine, the only solution is to host your own. One could choose to host this on an external server or even use it on a local network.
Many search engines also create user profiles even for website viewers who do not register accounts. While it is possible to see the customization of search results according to mined data as a convenience, it can also be seen as an invasion of privacy or even a form of censorship. A metasearch engine instance facilitates the same valuable search results while limiting the type and amount of data which can be gathered about individual users,
- searx may not offer you as personalized results as Google, but it doesn't generate a profile about you
- searx doesn't care about what you search for, never shares anything with a third party, and it can't be used to compromise you
- searx is free software, the code is 100% open and you can help to make it better
Step 1Choose a Local or Web-Based Instance
Before installing Searx, it's best to first decide on what sort of access you would like to have to the Searx instance. Searx, when installed, is accessible through a web browser, similar to any other search engine. This instance could be accessed on a remote web server or simply through a local install of the metasearch tool.In this tutorial, Searx is installed locally and accessed on the same device on which it is installed, but the software could also be used on an internet-connected server to create a web-based search engine, such as the public instances listed on GitHub.
Step 2Update Your Linux System
Once you've chosen a device to install a Searx instance on, the next step is to ensure that the system is updated and secure. On Debian-based Linux distributions like Ubuntu, this updating process can be completed using apt-get. The command below will update the system software repositories and upgrade any out-of-date software.sudo apt-get update && sudo apt-get upgrade
Step 3Install Searx
Installation of Searx creates a server-like stack of services which can be accessed locally or used to create a real live instance of the metasearch engine on an internet-connected server.Option 1Using Docker
Docker can be used to install Searx in a container, assuming Docker is installed and configured on the system one wishes to install Searx on. We have a guide on setting up and using Docker, and Docker also has some instructions on its site. If you do not wish to use Docker, you can skip to the installation instructions in Option 2 for the classic installation method.git clone github.com/asciimoo/searx.gitAfter the source code is finished downloading, move into the directory with cd.
cd searx/
docker build -t searx .
docker run -d --name searx -p 8888:8888 searx
Option 2The Classic Installation
Searx can also be installed conventionally, rather than using Docker containers. To begin the manual installation process, first install the required dependencies by running the command shown below in a terminal. This command will install Git, which assists in copying the Searx source code, as well as a number of other libraries required by the software to compile and run.sudo apt-get install git build-essential libxslt-dev python-dev python-virtualenv python-babel zlib1g-dev libffi-dev libssl-dev
cd /usr/local/Now, we can download a copy of the Searx source code by running the following command.
sudo git clone github.com/asciimoo/searx.git
sudo useradd searx -d /usr/local/searxNext, assign the same user account to the Searx directory with chown.
sudo chown searx:searx -R /usr/local/searx
sudo -u searx -iOnce this user account is in use, we can activate the Searx virtual environment by running the command below. This allows the tool to run within its own operating environment to ensure proper usage of dependencies or libraries. To activate the virtual environment:
virtualenv searx-veWe can use an included shell script to update the tool by running the command below.
./manage.sh update_packages
python searx/webapp.py
Step 4Access & Use Your Searx Search Engine
Once Searx is running, it can be accessed locally by going to http://localhost:8888/ in a web browser. It will look like and function very similar to any other search engine.At the right of the URL for any given result shown in Searx, the originating search engines will be listed, such as Google and Bing in the results seen in the image below. Searx also directly integrates other forms of searches, including ones to look for files, images, maps, and even social media.
Comments
Post a Comment