Jump to content

shadowsocks-libev как настроить


Recommended Posts

Поставил шэдоусокс без -libev (ss-local), товарищи, подскажите, а можно в нём на Кинетиках прописать несколько серверов и как-то их чередовать автоматом по доступности, как это реализовано в виндовом клиенте?

Пробовал так в json, не катит:

{

server (первый)

.......

},

{

server (второй)

.......

}

Link to comment
Share on other sites

  • 4 weeks later...

Мой вариант настройки shadowsocks на кинетике:

opkg install nano ipset iptables shadowsocks-libev-ss-redir

nano /opt/etc/shadowsocks.json

{
    "server":"SERVER",
    "server_port":PORT,
    "password":"PASSWORD",
    "method":"METHOD",
    "mode":"tcp_and_udp",
    "local_address":"0.0.0.0",
    "local_port":1080,
    "timeout":600
}

nano /opt/etc/ndm/netfilter.d/shadow

#!/bin/sh
if [ -z "$(iptables-save 2>/dev/null | grep unblock)" ]; then
ipset create unblock hash:net -exist
iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblock dst -j REDIRECT --to-port 1080
iptables -I PREROUTING -w -t nat -i br0 -p udp -m set --match-set unblock dst -j REDIRECT --to-port 1080
until ping -c1 dns.google >/dev/null 2>&1; do :; done
for i in `cat /opt/root/sites`; do
for j in `nslookup $i | grep -v 127.0.0.1 | awk '/Addr/ {print $3}' | grep -v ":"`; do
ipset -exist add unblock $j
done
done
fi
if [ -z "$(ps | grep -v grep | grep ss-redir)" ]; then
ss-redir -c /opt/etc/shadowsocks.json -f /opt/var/run/ss-redir.pid
fi
exit 0

nano /opt/root/sites

rutracker.org
flibusta.is
tjournal.ru

 

После перезагрузки должно заработать. Получить пароль и метод из ссылки ss:// можно на сайте base64decode.org

 

Edited by uneasy
  • Upvote 1
Link to comment
Share on other sites

  • 7 months later...

Добрый день, прошу помощи завсегдатаев форума. Никак не могу завернуть трафик UDP (в частности - DNS-запросы клиентов роутера) на порт локального прокси, поднятый на роутере. Есть сервер ss, поднятый на VDS, tcp-трафик (как исходящий от роутера, так и от клиентов роутера при заходе на заблокированный сайт) без проблем идет через данный сервер. Конфиг ss на роутере:

{
    "server":"XX.XXX.XX.XX",
    "server_port":441,
    "local_address":"0.0.0.0",
    "local_port":1080,
    "password":"пароль",
    "mode":"tcp_and_udp",
    "timeout":86400,
    "method":"chacha20-ietf-poly1305",
    "no_delay":true,
    "reuse_port":true,
    "workers":4
}

В настройках DHCP устанавливаю DNS-сервер для клиентов роутера, как 192.168.1.1 (чтобы UDP-трафик клиентов шел через штатный ndnproxy прошивки). Запускаю данный скрипт на роутере (заблокированные сайты прописаны в файле /opt/root/sites), tcp-трафик заворачивается, доступ к заблокированным сайтам я получаю без проблем:

#!/bin/sh
if [ -z "$(iptables-save 2>/dev/null | grep unblock)" ]; then
ipset create unblock hash:net -exist
iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblock dst -j REDIRECT --to-port 1080
iptables -w -t nat -N SS-REDIR_TCP-ROUTER
iptables -w -t nat -A SS-REDIR_TCP-ROUTER -d XX.XXX.XX.XX -j RETURN
iptables -w -t nat -A SS-REDIR_TCP-ROUTER -p tcp -j REDIRECT --to-ports 1080
iptables -w -t nat -I OUTPUT -p tcp -j SS-REDIR_TCP-ROUTER
until ping -c1 dns.google >/dev/null 2>&1; do :; done
for i in `cat /opt/root/sites`; do
for j in `nslookup $i | grep -v 127.0.0.1 | awk '/Addr/ {print $3}' | grep -v ":"`; do
ipset -exist add unblock $j
done
done
fi
if [ -z "$(ps | grep -v grep | grep ss-redir)" ]; then
ss-redir -u -c /opt/etc/shadowsocks_udp.json -f /opt/var/run/ss-redir.pid
fi
exit 0

Проштудировав тему, пробую вручную завернуть UDP-трафик на 1080 порт ss-прокси роутера (т.к. запросы DNS "летят" на сервер VDS в открытом виде до DNS-сервера AdGuard Home, поднятого на VDS), предварительно отключив сетевые ускорители (через CLI кинетика):

system set net.netfilter.nf_conntrack_fastnat 0
no ppe software
no ppe hardware
system configuration save

Из окружения entware вручную выполняю команды:

ip route add local default dev lo table 100
ip rule add fwmark 1 lookup 100
insmod /lib/modules/$(uname -r)/xt_TPROXY.ko
iptables -w -t mangle -N SSREDIR
iptables -w -t mangle -A SSREDIR -p udp -m set --match-set unblock dst -j RETURN
iptables -w -t mangle -A SSREDIR -p udp -j TPROXY --on-port 1080 --tproxy-mark 0x01/0x01
iptables -w -t mangle -A SSREDIR -p udp -j MARK --set-mark 1
iptables -w -t mangle -A PREROUTING -p udp -j SSREDIR

Но после ввода данных команд интернет как на роутере, так и на его клиентах отваливается полностью, я не могу загрузить ни одну страницу (даже пинг не работает). Кроме того, как только я подключаю нового клиента по wi-fi, интернет сразу же оживает - таблица mangle перезаписывается с удалением всех, введенных вручную, правил iptables. В связи с этим вопросы:

1. Механизм TPROXY на роутере вообще рабочий?

2. Какой процесс перезаписывает таблицу mangle и как туда правильно добавлять правила iptables, чтобы избежать их дальнейшего удаления?

3. Как все-таки правильно завернуть DNS-запросы как самого роутера, так и клиентов его локальной сети на порт локального прокси ss, поднятого на роутере?

Link to comment
Share on other sites

25 минут назад, Пихал Метрович сказал:

2. Какой процесс перезаписывает таблицу mangle и как туда правильно добавлять правила iptables, чтобы избежать их дальнейшего удаления?

На форуме было неоднократно - https://github.com/ndmsystems/packages/wiki/Opkg-Component#ndmnetfilterd

Link to comment
Share on other sites

10 минут назад, zyxmon сказал:

На форуме было неоднократно - https://github.com/ndmsystems/packages/wiki/Opkg-Component#ndmnetfilterd

Благодарю, а что насчет заворота UDP-трафика через ss-redir? Не могу понять, в чем дело.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...