Скопипастил
ольшой Пиздец.
Задача вроде довольно банальная и очевидная, но меня постоянно заваливают письмами об анонимном мессенджере и вопросами вроде "какого анонимного хостера знаешь, нужен анонимный жаббер", поэтому решил вместо тысячи ответов давать линк на одну статью.
У схемы jabber + tor + rapsberry pi есть ряд плюсов:
Установка необходимых пакетов
Процесс установки опустим, т.к. по этому шагу написана не одна тысяча материалов, скажу лишь, что лучше ставить
Далее необходимо определиться с jabber-сервером. Тут варинтов не очень много, мы выберем в этой роли prosody, он молод и интенсивно развиваем.
Ставим необходимые пакеты:
Генерация домена
Более подробно про генерацию доменов в TOR можно в статье,
pigf5kfufjz63s5z.onion — домен, который мы будем использовать в jabber-сервере.
Далее создаём конфиг /etc/prosody/prosody.cfg.lua с примерно таким содержанием:
Все вхождения pigf5kfufjz63s5z.onion необходимо поменять на тот домен, который сгенерировался у вас.
Создание ключей ssl
После чего перезапускаем prosody:
Настройка клиентской стороны
На клиентской стороне ставим и запускаем TOR:
А в клиенте jabber выбираем в свойствах соединения Socks5-прокси, в качестве Host указываем 127.0.0.1 в качестве Port — 9050. Пишем логин (если логина ещё нет — регистрируемся, выбрав соответствующий пункт меню в клиенте), а в качестве хоста сервера указываем ваш свежесгенерированный onion-ресурс (в моём случае это pigf5kfufjz63s5z.onion).
Регистрацию так же можно сделать закрытой (для "своих") поменяв в конфиге prosody allow_registration с true на false, тогда регистрировать пользователей можно из консоли:
Остальные тонкости настройки
Напоследок несколько важных нюансов
Не забываем на малинке поменять пароль для pi, root, настроить , запустить netstat -tulpan и убедиться что никаких левых сервисов не запущено (как правило светят наружу ненужные ntpd, avahi-daemon, dhcpcd — всё лишнее удаляем через apt purge имя_пакета), либо вообще запрещаем все порты кроме 9050 фаерволлом (об этом можно почитать, например, . Ещё можно поставить и минимально настроить fail2ban и
Кстати, если в вашей стране TOR блокируется, то поможет вот
Удачной анонимной и относительно безопасной переписки на личном одноплатном сервере!
[doublepost=1498408644,1498395271][/doublepost]Не забываем добавить в :
чтобы можно было регистрироваться из jabber-клиента.
[doublepost=1498410334][/doublepost]P.S. Кто желает затестить свежесозданный мной сервер пишите в ЛС или жабу...
[doublepost=1506366321][/doublepost]Что ж. Вижу никому не интересно...
Ссылка скрыта от гостей
. Может пригодится кому. Ведь скоро БЗадача вроде довольно банальная и очевидная, но меня постоянно заваливают письмами об анонимном мессенджере и вопросами вроде "какого анонимного хостера знаешь, нужен анонимный жаббер", поэтому решил вместо тысячи ответов давать линк на одну статью.
У схемы jabber + tor + rapsberry pi есть ряд плюсов:
- не придётся покупать доменное имя
- не нужно ничего оплачивать ежегодно
- никто не отследит по денежным транзакциям кто владелец
- домен не угонят (естественно всё относительно, ведь могут украсть ключи) и никто не забанит и не отключит домен
- не придётся искать и покупать анонимного хостера, а если он и анонимный, то нет гарантии в отказе слива информации о вас. Плюс их услуги довольно дорогие и часто отсуствует качество предоставляемых услуг, потому как довольно маленькая конкуренция
- дешёвое обслуживание (всего 4Вт)
- отсутствие левых владельцев, которым следует верить, что у них всё "на самом деле отключено и ничего не сливается третьим лицам".
- rapsberry pi может находиться за кучей натов и ей не нужно пробрасывание портов и тем более выделенный IP
- местонахождение сервера будет никому не известно, кроме владельца
Установка необходимых пакетов
Процесс установки опустим, т.к. по этому шагу написана не одна тысяча материалов, скажу лишь, что лучше ставить
Ссылка скрыта от гостей
, т.к. чем меньше у нас будет изначально пакетов, тем лучше.Далее необходимо определиться с jabber-сервером. Тут варинтов не очень много, мы выберем в этой роли prosody, он молод и интенсивно развиваем.
Ставим необходимые пакеты:
Код:
$ sudo apt install tor prosody
Генерация домена
Более подробно про генерацию доменов в TOR можно в статье,
Ссылка скрыта от гостей
, но если кратко:
Код:
$ printf "HiddenServiceDir /var/lib/tor/jabber\nHiddenServicePort 5222 127.0.0.1:5222\n" | sudo tee /etc/tor/torrc
$ sudo systemctl tor restart
$ sudo cat /var/lib/tor/jabber/hostname
pigf5kfufjz63s5z.onion
pigf5kfufjz63s5z.onion — домен, который мы будем использовать в jabber-сервере.
Далее создаём конфиг /etc/prosody/prosody.cfg.lua с примерно таким содержанием:
Код:
admins = { "root@nsltzcvhmzfa7ypr.onion" }
modules_enabled = {
-- Generally required
"roster"; -- Allow users to have a roster. Recommended ;)
"saslauth"; -- Authentication for clients and servers. Recommended if you want to log in.
"tls"; -- Add support for secure TLS on c2s/s2s connections
-- "dialback"; -- s2s dialback support
-- "disco"; -- Service discovery
-- Not essential, but recommended
"private"; -- Private XML storage (for room bookmarks, etc.)
"vcard"; -- Allow users to set vCards
-- These are commented by default as they have a performance impact
--"privacy"; -- Support privacy lists
--"compression"; -- Stream compression (Debian: requires lua-zlib module to work)
-- Nice to have
"version"; -- Replies to server version requests
"uptime"; -- Report how long server has been running
"time"; -- Let others know the time here on this server
"ping"; -- Replies to XMPP pings with pongs
"pep"; -- Enables users to publish their mood, activity, playing music and more
-- "register"; -- Allow users to register on this server using a client and change passwords
-- Admin interfaces
-- "admin_adhoc"; -- Allows administration via an XMPP client that supports ad-hoc commands
--"admin_telnet"; -- Opens telnet console interface on localhost port 5582
-- HTTP modules
--"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP"
--"http_files"; -- Serve static files from a directory over HTTP
-- Other specific functionality
"posix"; -- POSIX functionality, sends server to background, enables syslog, etc.
--"groups"; -- Shared roster support
--"announce"; -- Send announcement to all online users
--"welcome"; -- Welcome users who register accounts
--"watchregistrations"; -- Alert admins of registrations
--"motd"; -- Send a message to users when they log in
--"legacyauth"; -- Legacy authentication. Only used by some old clients and bots.
};
modules_disabled = {
-- "offline"; -- Store offline messages
-- "c2s"; -- Handle client connections
"s2s"; -- Handle server-to-server connections
};
allow_registration = true;
daemonize = true;
pidfile = "/var/run/prosody/prosody.pid";
c2s_require_encryption = true
authentication = "internal_hashed"
log = {
-- Log files (change 'info' to 'debug' for debug logs):
info = "/dev/null";
error = "/dev/null";
-- Syslog:
{ levels = { "error" }; to = "syslog"; };
}
VirtualHost "nsltzcvhmzfa7ypr.onion"
enabled = true -- Remove this line to enable this host
ssl = {
key = "/etc/prosody/certs/host.key";
certificate = "/etc/prosody/certs/host.crt";
}
Include "conf.d/*.cfg.lua"
Все вхождения pigf5kfufjz63s5z.onion необходимо поменять на тот домен, который сгенерировался у вас.
Создание ключей ssl
Код:
$ sudo openssl req -new -x509 -days 365 -nodes -out "/etc/prosody/certs/host.crt" -newkey rsa:2048 -keyout "/etc/prosody/certs/host.key"
После чего перезапускаем prosody:
Код:
$ sudo systemctl prosody restart
Настройка клиентской стороны
На клиентской стороне ставим и запускаем TOR:
Код:
$ sudo apt install tor
$ sudo systemctl tor restart
А в клиенте jabber выбираем в свойствах соединения Socks5-прокси, в качестве Host указываем 127.0.0.1 в качестве Port — 9050. Пишем логин (если логина ещё нет — регистрируемся, выбрав соответствующий пункт меню в клиенте), а в качестве хоста сервера указываем ваш свежесгенерированный onion-ресурс (в моём случае это pigf5kfufjz63s5z.onion).
Регистрацию так же можно сделать закрытой (для "своих") поменяв в конфиге prosody allow_registration с true на false, тогда регистрировать пользователей можно из консоли:
Код:
$ sudo prosodyctl register имя_пользоавтеля ваш_onion_домен пароль_пользователя
Остальные тонкости настройки
Ссылка скрыта от гостей
.Напоследок несколько важных нюансов
Не забываем на малинке поменять пароль для pi, root, настроить , запустить netstat -tulpan и убедиться что никаких левых сервисов не запущено (как правило светят наружу ненужные ntpd, avahi-daemon, dhcpcd — всё лишнее удаляем через apt purge имя_пакета), либо вообще запрещаем все порты кроме 9050 фаерволлом (об этом можно почитать, например, . Ещё можно поставить и минимально настроить fail2ban и
Ссылка скрыта от гостей
.Кстати, если в вашей стране TOR блокируется, то поможет вот
Ссылка скрыта от гостей
.Удачной анонимной и относительно безопасной переписки на личном одноплатном сервере!
[doublepost=1498408644,1498395271][/doublepost]Не забываем добавить в :
Код:
modules_enabled = {
"register"; -- Allow users to register on this server using a client
};
[doublepost=1498410334][/doublepost]P.S. Кто желает затестить свежесозданный мной сервер пишите в ЛС или жабу...

[doublepost=1506366321][/doublepost]Что ж. Вижу никому не интересно...
Последнее редактирование: