Задался я вопросом как получить более-менее "красивое" имя домена для своего onion сайта. Перелапатив маны на torproject.org, - инфы не нашел, но нашел в гугле, и решил поделиться с вами друзья.
Для начала вводная:
Генерируя .onion домен мы получаем пару ключей наличие которых и означает владение доменом.
Я нашел софт брутящий комбинации ключей и позволяющий получить нам искомое имя домена.
Установка:
Использование:
Что касается скорости нахождения искомого, на гитлабе приведена таблица, я продублирую:
После того, как мы получили ключ, делаем следующее:
1. Генерируем стандартным образом hidden_service, и получаем стандартный домен из 16-символьной абракадабры
- открываем файл /etc/tor/torrc
- находим строку ############### This section is just for location-hidden services ###
- ниже пишем
- сохраняем, закрываем.
2. Ребутаем тор
3. Идем в папку, которую вы указали для дериктивы HiddenServiceDir в torrc файле.
там мы видим два файла hostname и private_key
4. Удаляем файл hostname, и заменяем содержимое private_key на тот ключ, который мы получили от Shallot
5. Ребутаем тор
Для начала вводная:
Когда генерируется .onion домен, вы не можете просто выбрать подходящий домен. Вместо этого, вам необходимо придумать секретный ключ и на его основе вычислить соответствующий onion адрес (по аналогии с генерацией Биткойн-адресов). Сам адрес при этом выходит псевдослучайным, так что нужно перебирать секретные ключи до тех пор, пока доменное имя не окажется подходящим. Так что чем больше специфических символов должен содержать адрес, тем больше вычислительной мощности вам потребуется для подбора к нему секретного ключа.
Генерируя .onion домен мы получаем пару ключей наличие которых и означает владение доменом.
Я нашел софт брутящий комбинации ключей и позволяющий получить нам искомое имя домена.
Установка:
Код:
debian
$ sudo apt-get install libssl-dev
$ sudo apt-get install build-essential
centos
$ yum install openssl-dev
$ yum groupinstall "Development Tools"
--------------------------
$ git clone https://github.com/katmagic/Shallot.git Shallot
$ cd ./Shallot
$ ./configure && make
Использование:
Код:
$ ./shallot -p
base32 alphabet allows letters [a-z] and digits [2-7]
pattern can be a POSIX-style regular expression, e.g.
xxx must contain 'xxx'
bar$ must end with 'bar'
^foo must begin with 'foo'
b[a4]r may contain leetspeech;)
^ab|^cd must begin with 'ab' or 'cd'
[a-z]{16} must contain letters only, no digits
^dusk.*dawn$ must begin with 'dusk' and end with 'dawn'
Код:
$ ./shallot ^bravo
-----------------------------------------------------------------
Found matching domain after 9614046 tries: bravo4jbq2n4gflp.onion
-----------------------------------------------------------------
-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQCdbiF4XecrPkmdXvFxBPmYFDTCurcwGb8G3olweesFl6ba2A/u
............................................
deerM1gVlFVILSEft3vsYSgDvmDnA4/ShhcCOzBvcCs=
-----END RSA PRIVATE KEY-----
Что касается скорости нахождения искомого, на гитлабе приведена таблица, я продублирую:

После того, как мы получили ключ, делаем следующее:
1. Генерируем стандартным образом hidden_service, и получаем стандартный домен из 16-символьной абракадабры
- открываем файл /etc/tor/torrc
- находим строку ############### This section is just for location-hidden services ###
- ниже пишем
Код:
HiddenServiceDir /var/lib/tor/any_name/
HiddenServicePort 80 127.0.0.1:80
2. Ребутаем тор
3. Идем в папку, которую вы указали для дериктивы HiddenServiceDir в torrc файле.
там мы видим два файла hostname и private_key
4. Удаляем файл hostname, и заменяем содержимое private_key на тот ключ, который мы получили от Shallot
5. Ребутаем тор