Here is how to use the mkp224o utility to generate a vanity URL based on your specified filter.
Step 1 — Prepare Server
These instructions are for a Linux server running a recent version of Debian or Ubuntu.
Get your server package lists up to date:
sudo apt update
Upgrade to the latest version of all your existing packages:
sudo apt upgrade
Install the prerequisites for compiling mkp224o from source:
sudo apt install git build-essential autoconf libsodium-dev
Step 2 — Compile Mkp224o
Make a directory for downloads, and change into it:
mkdir ~/Downloads cd ~/Downloads
Get the source code for mkp224o from Github:
git clone https://github.com/cathugger/mkp224o.git
Change into the mkp224o source directory:
Generate the configure script:
Run the configure script:
Compile mkp224o from source:
Step 3 — Run Mkp224o
Make the output directory for the generated address possibilities. We will name this directory as
Now run mkp224o and send its output to the directory named
possible. We use the option
-d to specify the output directory, and we select only onion domain names that begin with the characters
blog. Of course, you can change
blog in the example to names of your own choosing.
./mkp224o -d possible blog
For the 4-character filter
blog, on my machine, mkp224o generated one possible onion domain name every 5 seconds. Onion v3 addresses may have one of 32 different characters in each position. Extrapolating to length 5, we might expect it to generate one possible domain name every 2 minutes 40 seconds. Extrapolating to length 6, we would expect a possible onion domain name every 1.5 hours. For a filter of length 7, we would expect a possible onion domain name every 2 days. For length 8, you might get a single possibility roughly every 64 days.
When you are satisfied with the number of possibilities generated, press Ctrl+c on your computer keyboard to stop the mkp224o process.
Now list the results in the directory named
ls -l possible
Choose one of the generated domain names. List the contents of that domain name’s directory. For example:
ls -l possible/blogiwuasytomnunoj642gv7pswvacsnil4pr465mtz2wrlqf2mac5ad.onion
You will see that the directory contains three files:
Step 4 — Implement Onion Address
You will need to copy the three files above into your
/var/lib/tor/hidden_service directory. For example, if you use the word
blog as your hidden service directory name:
sudo mkdir /var/lib/tor/blog sudo cp possible/blogiwuasytomnunoj642gv7pswvacsnil4pr465mtz2wrlqf2mac5ad.onion/* /var/lib/tor/blog sudo chown -R debian-tor:debian-tor /var/lib/tor/blog sudo chmod 700 /var/lib/tor/blog
Now turn to the post for sample Tor and Nginx onion website configuration files.