Не палимся или конфигурация домашнего сервера анонимизации!

Не палимся или конфигурация домашнего сервера анонимизации!

BezLich

За основу была взята OS Fedora Linux 16 i386. Впрочем, поклонникам других дистрибутивов GNU/Linux не составит большого труда адаптировать данные инструкции под свою ось.


Начнем, пожалуй, с подготовки OS.

Мне лично не понадобилась графическая среда для всего этого. Я ее попросту отключил и поставил sshd.

ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

yum -y install openssh-server

systemctl enable sshd.service

systemctl start sshd.service


В локалке файрвол ни к чему, да и мешать он будет.

iptables -F

iptables -X

/usr/libexec/iptables.init save


Т.к. мы будем использовать как локальный роутер, то

sysctl net.ipv4.ip_forward=1

echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf

1. VPN

Ну тут уже писано-переписано…

yum -y install openvpn


Два варианта:

1.1 Берем VPN в аренду у одного из сервисов.

Лично у меня такие сервисы всегда вызывали недоверие, однако это проще.

В данном случае, надо просто попросить их скинуть вам конфиг, ключи и инструкции к openvpn.


1.2 Берем дешевый VPS сервер (пойдет минимальный конфиг OpenVZ) — $10-$20 в месяц.

Нужно попросить саппорт включить NAT и TUN на этом контейнере (в случае OpenVZ).


Далее по инструкциям: http://unix-notes.ru/2009/03/02/ustanovka-openvpn-na-linux-v-openvz-kontejjner/

 Замечания:

* Порт лучше использовать отличный от стандартного 1194 (директива конфига клиента и сервера «port»), дабы не привлекать лишнего внимания. Лучше всего использовать стандартный порт других сервисов: 80(http), 443(https) и т.д.

* Протокол лучше использовать TCP — лучше будет работать по WiFi/WiMax

* Если вы решили поставить OpenVPN на своем сервере, где что то крутится, имейте в виду что его нужно вешать на абсолютно свободный IP адрес, иначе чревато утечкой информации

* Сервер должен располагаться на одном континенте с вами, иначе будут длинные пинги и падение скорости

Предположим, сервер VPN уже есть и есть конфиг и сертификаты клиента лежат в правильных местах.


 Включаем openvpn:

systemctl enable openvpn.service

systemctl start openvpn.service

Проверяем tracert до какого то хоста, убеждаемся что трасса пошла не через вашего провайдера.

2. DNS

Хотя трафик пошел через VPN, DNS запросы тоже желательно пустить туда же. С изюминкой.

yum -y install named


Ну, кроме стандартной конфигурации кеширующего нейм сервера (listen-on, allow-query выставить для вашей сети), можно отметить вот что.


Если вы хотите включить резолв бесплатных OpenNIC доменов (.geek, .free, .micro и т.д.) и доменов NameCoin (.bit) необходимо:

a) Выключить dnssec (в options):

dnssec-enable no;

dnssec-validation no;


b) Добавить резолверы для этих зон:

Здесь 178.32.31.41 — резолвер, указанный здесь (поддерживет .bit и opennic зоны) или здесь (поддерживают только OpenNIC зоны) — выбирайте.


Публичные зоны я через них пропускать не стал, ибо не стоит. Т.е. зону "." оставляем по дефолту.

zone "bit" {

type forward;

forwarders { 178.32.31.41; };

};


zone "geek" {

type forward;

forwarders { 178.32.31.41; };

};


zone "free" {

type forward;

forwarders { 178.32.31.41; };

};


zone "bbs" {

type forward;

forwarders { 178.32.31.41; };

};


zone "glue" {

type forward;

forwarders { 178.32.31.41; };

};


zone "parody" {

type forward;

forwarders { 178.32.31.41; };

};


zone "oss" {

type forward;

forwarders { 178.32.31.41; };

};


zone "indy" {

type forward;

forwarders { 178.32.31.41; };

};


zone "fur" {

type forward;

forwarders { 178.32.31.41; };

};


zone "ind" {

type forward;

forwarders { 178.32.31.41; };

};


zone "micro" {

type forward;

forwarders { 178.32.31.41; };

};


zone "dyn" {

type forward;

forwarders { 178.32.31.41; };

};


zone "gopher" {

type forward;

forwarders { 178.32.31.41; };

};


Нужно сказать что NameCoin пока что мало что из себя представляет, но задумка весьма неплохая, полностью исключающая такое явление как корневые DNS, центральный орган ICANN и усложняющая жизнь таким вещам как пресловутая SOPA 


 В .bit вы сам себе регистратор, ICANN и корневой DNS сервер.


Запускаем bind:

systemctl enable named.service

systemctl start named.service

3. Tor.

Полезно так же иметь под рукой Tor-прокси (The Onoin Router). Домены .onion — на них можно попасть только через Tor прокси.

yum -y install tor polipo


В /etc/tor/torrc правим SocksListenAddress на локальный адрес сервачка и запускаем Tor:

systemctl enable tor.service

systemctl start tor.service


Однако Tor это socks-прокси, а удобнее было бы http-прокси. Для этого есть polipo.

В /etc/polipo/config правим

proxyaddress = "0.0.0.0"


socksParentProxy = "192.168.0.2:9050" # <- локальный айпи сервачка

socksProxyType = socks5


Стартуем.

systemctl enable polipo.service

systemctl start polipo.service

4. I2P.

Internet Invisible Project — сайты .i2p, на них можно попасть только через i2p прокси.

Для работы необходим OpenJDK.

yum install java-1.7.0-openjdk


Далее, пускать i2p от рута совсем не обязательно. Добавляем юзера и запускаем инсталлер:

adduser i2p

su i2p

cd

wget http://mirror.i2p2.de/i2pinstall_0.8.12.exe

java -jar i2pinstall_0.8.12.exe -console


Указываем в качестве инсталяционной папочки /home/i2p/bin/ и продолжаем установку.

В конфиге /home/i2p/.i2p/clients.config меняем 127.0.0.1 на айпи сервачка.

В конфиге /home/i2p/.i2p/i2ptunnel.config меняем айпишники проксей (tunnel.*.interface) на 0.0.0.0


Запускаем i2p:

su -c '/home/i2p/bin/i2prouter start' i2p

echo "su -c '/home/i2p/bin/i2prouter start' i2p" >> /etc/rc.d/rc.local


 Итого.

Предполагая что 192.168.0.2 — IP адрес локального сервера:

* Выставляя шлюз и DNS любой машины в локалке в 192.168.0.2 — мы пускаем трафик (включая DNS) этой машины через VPN, получаем доступ к доменам OpenNIC и NameCoin

* Выставляя прокси в броузере любой машины из локалки в 192.168.0.2:4444 (http) и 192.168.0.2:4445 (https) — мы из броузера входим в сеть i2p (домены .i2p)

* Выставляя прокси в броузере любой машины из локалки в 192.168.0.2:8123, мы имеем из броузера доступ к сети Tor (домены .onion)

Веб-конфигуратор I2P расположен по адресу http://192.168.0.2/config.jsp — там есть много интересных вещей.


Для удобства переключения между различными настройками прокси есть дополнительные расширения к хрому и огнелису (Torbutton например).


 Замечания:

* I2P сеть медленно «разгоняется». Появление прокси нужно ждать спустя минуту гдето после старта

* I2P сеть плохо приспособлена для серфинга обычных сайтов

* I2P ест трафик (Tor тоже ест, но не так). Его лимиты можно указать в веб-конфигураторе. Но работает I2p по принципу ты мне — я тебе. Чтобы иметь более-менее реальную скорость в I2P, необходимо сначала прокачать через себя ощутимый объем транзитного трафика

* В настройках туннелирования I2P можно задавать количество прыжков до узла назначения. Ниже количество — выше скорость, ниже безопасность. И наоборот

* Не стоит ходить по обычным внешним http сайтам через I2P или Tor. По многим причинам, главная из которых — исходящие узлы неизвестно в чьих руках и если вы ходите по http, то в HTML код вам могут подсунуть каку. https это не касается, но зачем? Есть VPN же

* На сервачке с Tor и I2P можно расположить свой анонимный сайт в соответствующей сети Tor/I2P и вычислить его местоположение почти нереально, равно как и «положить» его!

⚡️Читайте самые интересные материалы про безопасность на канале BezLich ⚡️

Report Page