Протокол IRC: Анонимные чаты в терминале
Life-Hack [Жизнь-Взлом]/ХакингПрочитав эту статью, вы узнаете что такое IRC и как это работает, а также сможете запустить собственный анонимный сервер в сети i2p.
ДИСКЛЕЙМЕР:
Автор статьи никого не призывает к правонарушениям и отказывается нести ответственность за ваши действия. Вся информация предоставлена исключительно в ознакомительных целях. Спасибо!
Что такое IRC и как это работает:
❓> IRC (Internet Relay Chat) — протокол прикладного уровня для обмена сообщениями в режиме реального времени.
Разработан в основном для группового общения, также позволяет общаться через личные сообщения и обмениваться данными, в том числе файлами.
IRC использует транспортный протокол TCP и криптографический TLS (опционально).
IRC начало завоёвывать особенную популярность после операции «Буря в пустыне» (1991), когда сообщения со всего мира собирались в одном месте и в режиме «on-line» транслировались в IRC.
Согласно спецификациям протокола, IRC-сеть — это группа серверов, соединённых между собой. Простейшей сетью является одиночный сервер.
Сеть должна иметь вид связного дерева, в котором каждый сервер является центральным узлом для остальной части сети.
Клиентом называется всё, что подключено к серверу, кроме других серверов. Различают два типа клиентов:
- пользовательские;
- сервисные.
Пересылка сообщений в IRC-сети:
IRC предоставляет возможность как группового, так и приватного общения.
Для группового общения существует несколько возможностей.
Пользователь может отправить сообщение списку пользователей, при этом серверу отправляется список, сервер выделяет из него отдельных пользователей и отправляет копию сообщения каждому из них.
Более эффективным является использование каналов. В этом случае сообщение отправляется непосредственно серверу, а сервер отправляет его всем пользователям в канале.
Как при групповом, так и при приватном общении сообщения отправляются клиентам по кратчайшему пути и видимы только отправителю, получателю и входящим в кратчайший путь серверам.
Кроме того, возможна отправка широковещательного сообщения. Сообщения клиентов, касающиеся изменения состояния сети (например, режима канала или статуса пользователя), должны отправляться всем серверам, входящим в сеть. Все сообщения, исходящие от сервера, также должны быть отправлены всем остальным серверам.
Поднимаем свой анонимный IRC-сервер внутри сети i2p:
В данном примере будет использована самая простая реализация IRC-сервера - miniircd:
Установка:
git clone https://github.com/jrosdahl/miniircd.git cd miniircd ./miniircd -p 5555 -d sudo apt install i2pd cd /var/lib/i2pd sudo nano tunnels.conf
и в вставляем в файл эти строчки:
[anon-chatserver]
type = irc
host = 127.0.0.1
port = 5555
keys = chatserver-key.dat
Далее перезагружаем шлюз i2pd:
sudo service i2pd restart
Теперь нам необходимо узнать, какой адрес нам выделила сеть i2p:
sudo apt install elinks
elinks
Печатаем это:
127.0.0.1:7070
И находим необходимую информацию:
Настраиваем:
cd /var/lib/i2pd
sudo nano tunnels.conf
вставляем с помощью редактора в файл эти строчки:
[IRC2]
type = client
address = 127.0.0.1
port = 6669
destination = <адрес, который выделила сеть i2p>
destinationport = 5555
#keys = irc-client-key.dat
Перезапускаем:
sudo service i2pd restart
Включаем клиент:
apt install pijn
pidjn
Нажимаем Add, выбираем протокол IRC и вводим данные:
Также делаем на вкладке Advandced:
Готово!
теперь мы можем участвовать в переписке: