LINUX.ORG.RU
ФорумAdmin

Нужна помощь, SSH+RedSocks настройка Iptables для Lan

 , , ,


0

1

Друзья, нужна ваша помощь по настройке Iptables. Ситуация у меня следующая, за последние пару лет мне часто вскрывали роутер и интернет просто до жути лагал и обновление прошивки не помогали и по возможности приходилось делать замену роутера, но я не милионер менять их каждую неделю) у меня был свободный комп на который я прикупил еще одну сетевую, его я пустил под домашний роутер и после этого проблемы с взломом роутера завершились.

Сейчас хочу сделать обход блокировок, пожалуй есть небольшой список сайтов на которые я не могу зайти. У меня есть все тот же комп и есть хостинг на котором есть ssh доступ, через putty проксификация отлично работает но я решил настроить что бы все это работало из коробки. Я нашел гайд по ssh+redsocks, но он видимо не полный.

На компе есть интерфейсы сетевых enp2s0 — WAN, вторая enp1s0 — LAN подсеть 192.168.1.0 порт 12345 это стандартный порт прослушивания для RedSocks. Форвардинг IPv4 включен.

Настройки LAN карты enp1s0

Адрес: 192.168.1.2

Шлюз: 192.168.1.1

Настройки DHCP

option domain-name-servers 8.8.8.8, 8.8.4.4;

subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.100 192.168.1.254;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.2;
option domain-name-servers 8.8.8.8;

} default-lease-time 600; max-lease-time 7200;

Настройки RedSocks base {

log_debug = off;
log_info = off;
log = "syslog:daemon";
daemon = on;
user = redsocks;
group = redsocks;
redirector = iptables;

}

redsocks {

local_ip = 0.0.0.0;
local_port = 12345;

ip = 127.0.0.1; // change here
port = 1080; // change here
type = socks5;

}

redudp {

local_ip = 127.0.0.1;
local_port = 10053;

ip = 192.168.99.1; // change here
port = 8080; // change here

dest_ip = 8.8.8.8;
dest_port = 53;

udp_timeout = 30;
udp_timeout_stream = 180;

}

dnstc { local_ip = 127.0.0.1; local_port = 5300; }

Настройки Iptables

iptables -t nat -N REDSOCKS

iptables -t nat -A REDSOCKS -d 192.168.1.1 -j RETURN

iptables -t nat -A REDSOCKS -p tcp -j REDIRECT –to-ports 12345

iptables -t nat -A OUTPUT -p tcp -m owner –uid-owner admin1 -j REDSOCKS

iptables -t nat -A PREROUTING –in-interface enp1s0 -p tcp -j REDSOCKS

На хостовой машине если указать socks5 который я получаю из ssh 127.0.0.1 порт 1080 то все работает на самом роутере, но на локальную сеть нет раздачи интернета, но если прописать еще одно правило

iptables -t nat -A POSTROUTING -o enp2s0 -j MASQUERADE

С этим правилом проксификация идет и в локальную сеть, но есть один недостаток, мой IP становится таким же как на de хостинге, но вместе с ним высвечивается и мой домашний IP это происходит из-за последнего правила которое я добавляю, но без него пока что не работает раздача в локальную сеть. Правила которые я записываю они неполные, но что бы разобраться и настроить iptables там очень и очень много нужно прочитать что бы правильно настроить раздачу интернета в локальную сеть через RedSocks.

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

Также сразу хочу попросить что не советуйте с покупкой впн, на него нужно тратить деньги, свободной копейки сейчас просто нету, к тому же зачем платить за впн если я иногда помогаю знакомым обслуживать их сайт, а взамен имею свободный доступ к хостингу с ssh доступом, который я могу использовать как прокси. Также попрошу сильно не острить вспомните когда вы и сами ничего не знали и спрашивали совета у более опытных людей) Эта мелочь, которая не дает мне спать уже как неделю, хотя бы под конец недели, я хочу выспаться в удовольствие и знанием того что дело сделано. Буду благодарен любой помощи.

высвечивается и мой домашний IP

Какой именно — 192.168.1.2? И где высвечивается?

mky ★★★★★ ()
Ответ на: комментарий от mky

Есть такой сайт для проверки browserleaks.com/ip когда захожу из компа который подключен к домашнему серверу, то вижу IP который мне присвоил интернет провайдер в списке WebRTC Leak Test: Public IP address там и высвечивается, хотя должен быть такой же как и на прокси

Pacman ()
Ответ на: комментарий от anc

Подскажите, а что если я пропишу теже правила но только tcp заменю на udp, так должно сработать или есть шанс что еще сам сервер нужно как то подстраивать

Pacman ()
Ответ на: комментарий от Pacman

Если я правильно понял, что написано в гугле про redudp, то для udp вам будет нужен udp socks5 сервер, а openssh не умеет udp. Может вам вобще отключить webrtc в браузере...

mky ★★★★★ ()
Ответ на: комментарий от mky

Да нет, не вариант, хочется не только иметь доступ к сайтам, но и в майл игры заходить без блокировки. Если я вас правильно понял то любой ssh клиент не умеет делать udp трафик? Но какие есть альтернативы, RedSocks на сколько я понял из всех мануалов которые попадались, то он должен уметь udp over tcp и если я все правильно понимаю то udp socks5 сервер может мне помочь в данном вопросе. Вы можете что то порекоменндовать? Также подскажите на счет правил, они у меня прописаны только для tcp но udp в том гайде вообще небыло

Pacman ()
Ответ на: комментарий от Pacman

Если я вас правильно понял то любой ssh клиент не умеет делать udp трафик?

Это точно, «ssh клиент не умеет делать udp трафик» и он еще много чего не умеет делать, например печь пироги.

Но вот поднять полноценный тунель с преферансом и куртизанками используя ssh возможно (нужна настройка на стороне сервера). Да прибудет с вами гугл.

anc ★★★★★ ()
Ответ на: комментарий от Pacman

но и в майл игры заходить без блокировки

Няпонял. Эти-то за шо блокируют? Они вроде как свои. Шото вы батенька на троля похожи.

anc ★★★★★ ()
Ответ на: комментарий от Pacman

Также подскажите на счет правил, они у меня прописаны только для tcp но udp в том гайде вообще небыло

Я видел примеры udp правил только для 53-го порта, по мне это означает, что redsocks применим только для DNS-трафика. Про

он должен уметь udp over tcp

мне информации не попадалось.

mky ★★★★★ ()
Ответ на: комментарий от Tanger

Да, я знаю что проще, даже есть скрипты автонастройки, но суть в том что прокси мне дает ссх от хостинга, не впс и к сожалению он очень ограниченный

Pacman ()
Ответ на: комментарий от mky

Подскажи пожалуйста, я пошел дальше и на китайском сайте повезло найти немного больше информации, и нашел правила для нормальной работы днс. Но что бы была возможность работы с udp трафиком, нужно настроить режим TPRoxy из всего прочитанного я понял что это как то имеет отношение к ядру системы. У меня стоит Debian 9, но пока что так ничего и не смог найти как это активировать что бы все заработало https://blog.csdn.net/ts__cf/article/details/78942294 по данной инструкции пытался настроить сам udp но что то у меня не получается как минимум правило

iptables -t mangle -A SSUDP -p udp -j TPROXY –on-port 10053 –tproxy-mark 0x01/0x01

Не желает запускаться

Pacman ()
Ответ на: комментарий от Pacman

Не знаю какой у вас там символ (китайский сайт или ЛОР съел), но перед «on-port», как и перед маркером, должены стоять два дефиса (минуса).

mky ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.