LINUX.ORG.RU
ФорумAdmin

OpenWRT разблокировка сайтов через прокси

 , ,


0

1

В общем как знаете заблокировали ВК на Украине, ищу пути разблокировки. Очень хороший вариант использовать http/socks5 proxy (Так как блокировали поверхностно, то надо пробросить только основной ip, потому особой просадки при прослушивании музыки/видео не будет)

Можно ли это настроить на OpenWRT через тот же iptables?



Последнее исправление: DangerD (всего исправлений: 1)

Ты уж определись, что ты хочешь.
SOCKS proxy - Dante
HTTP proxy - 3proxy
VPN - openvpn или pptp и тд с iptables.
Для прокси iptables не нужен :)

joy4eg ★★★★★
()
Последнее исправление: joy4eg (всего исправлений: 2)
Ответ на: комментарий от joy4eg

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

anonymous
()

tor + redsocks + iptables

Только вчера такое у себя настраивал. redsocks может перенаправлять весь TCP+UDP трафик, либо, в зависимости от настроек iptables, только на определенные узлы, что я и сделал у себя

r0ck3r ★★★★★
()
Последнее исправление: r0ck3r (всего исправлений: 1)

dnsmasq-full + ipset + openvpn + mwan3 для удобной настройки маршрутов из гуя (openvpn-коннект добавляется в зону wan, дальше понятно, думаю).

pekmop1024 ★★★★★
()

Поставь Tor на роутер, вытащи на локальный интерфейс и ходи туда как в socks proxy.

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

Для этого есть VPN и статичные маршруты. А прокси для этого ... ну такое.

Абсолютно бездоказательная, ничем не обоснованная идиосинкразия.

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

Банально неудобно.

Можно подумать, у вас получилось доказательно... Неудобно чем? Сделайте wpad.dat, там добавьте DIRECT на всё, кроме ok.com и что там надо и всего-то делов.

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

Можно подумать, у вас получилось доказательно...

Да мне, собственно, всё равно, кто и что об этом думает - мало ли людей, которые в чем-то не разбираются - мне теперь бросить все и доказывать в интернете им, что они не правы?

Нормальный маршрут всегда будет полноценнее прозрачного прокси, и тем более - обычного.

У меня даже на домашнем роутере висит тор и четыре впна из разных стран, используемые в зависимости от доменных имен для различных маршрутов. При этом для подключенных устройств никаких дополнительных настроек не требуется, и transparent proxy используется только для .onion сайтов, потому что такова природа самого тора. Однако даже для их открытия нигде никому не требуется дополнительных настроек, потому что каждому .onion присвоен самим тором фиктивный адрес, который уже находится в перенаправляемом в тор ipset'е.

При этом все рулится удобно и без мозголюбства с изобретением iptables-велосипедов, штатными средствами OpenWRT.

Про недомашнее применение вообще даже и говорить не стоит, построй-ка мне корпоративную сеть без VPN и маршрутов, на проксях :-D

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

Нормальный маршрут всегда будет полноценнее прозрачного прокси, и тем более - обычного.

Нормальный маршрут будет если у вас адреса у VPN-сервера свободны и белые. Если нет, и речь только о маршруте до VPN-сервера, то значить ТАМ вам надо делать NAT/прозрачный прокси. То есть наоборот получите больше количество действий по настройке.

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

прозрачный прокси

Да что ж тебя все время тянет говна откушать, дорогой?

pekmop1024 ★★★★★
()

На VPS поставить shadowsocks-libev и на ноут клиент. Либо открывать SSH тунель и через FoxyProxy подключатся

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

Нормальный маршрут всегда будет полноценнее прозрачного прокси, и тем более - обычного.
У меня даже на домашнем роутере висит тор и четыре впна из разных стран, используемые в зависимости от доменных имен для различных маршрутов.

Если я вас правильно понял, то что бы прописать статику на конкретные домены надо как минимум собрать все ip для этого домена, более того поддерживать в актуальном состоянии, т.к. они могут меняться, так что это тоже не такая тривиальная задача, в то время как через проксю этого огорода городить не надо. Так что тут какими средствами достигнуть результата зависит от задачи.

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

не такая тривиальная задача

Одна строчка в конфиге dnsmasq на каждый домен первого или второго уровня. Ну просто надорваться можно от усилий. :) Мало кто почему-то в курсе, что dnsmasq умеет на базе dns-запросов формировать ipset'ы, которые потом можно использовать для маршрутизации и фильтрации трафика как угодно.

pekmop1024 ★★★★★
()
Последнее исправление: pekmop1024 (всего исправлений: 1)
Ответ на: комментарий от pekmop1024

Мало кто почему-то в курсе, что dnsmasq умеет на базе dns-запросов формировать ipset'ы, которые потом можно использовать для маршрутизации и фильтрации трафика как угодно.

Действительно не знал. Спасибо за пояснение! Запомню на будущее.

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

Только, как я уже писал выше, в случае OpenWRT надо ставить пакет dnsmasq-full вместо стандартной обрезанной версии.

pekmop1024 ★★★★★
()
11 ноября 2017 г.
Ответ на: cc от kollega777

Статей никаких нет.
Кратко: формируешь ipset с помощью dnsmasq, потом роутишь эти ipset'ы через определенный шлюз с помощью mwan3. Ну, это если тебе хочется всем рулить через вебгуй.

pekmop1024 ★★★★★
()
Последнее исправление: pekmop1024 (всего исправлений: 1)
1 сентября 2018 г.
Ответ на: комментарий от DangerD

1) Устанавливаем tor, redsocks и nslookup

2) в /etc/tor/torrc прописываем:

SOCKSPort 0.0.0.0:9050

3) Прописываем в /etc/redsocks.conf это:

base {
        log_debug = on;
        log_info = on;
        log = stderr;
        daemon = on;
        redirector = iptables;
}

redsocks {
        local_ip = 0.0.0.0;
        local_port = 12345;
        ip = 127.0.0.1;
        port = 9050;
        type = socks5;
}

redudp {                                                         
        local_ip = 127.0.0.1;                                             
        local_port = 10053;                                               
                                                                          
        ip = 192.168.10.1;                                                   
        port = 9050;                                                      
        dest_ip = 8.8.8.8;                                                        
        dest_port = 53;                                                           
                                                                                  
        udp_timeout = 30;                                                         
        udp_timeout_stream = 180;                                                 
}  
4) В /etc/firewall.user пишем это:
iptables -t nat -X REDSOCKS                                                                                                                                  
iptables -t nat -N REDSOCKS                                                                                                                                  
                                                                                                                                                             
iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN                                                                                                           
iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN                                                                                                          
iptables -t nat -A REDSOCKS -d 10.10.1.0/22 -j RETURN                                                                                                        
iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN                                                                                                         
iptables -t nat -A REDSOCKS -d 169.254.0.0/16 -j RETURN                                                                                                      
iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN                                                                                                       
iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN                                                                                                      
iptables -t nat -A REDSOCKS -d 224.0.0.0/4 -j RETURN                                                                                                         
iptables -t nat -A REDSOCKS -d 240.0.0.0/4 -j RETURN                                                                                                         
iptables -t nat -A REDSOCKS -j LOG -p tcp --syn --log-level info --log-prefix "rs "                                                                          
iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-ports 12345                                                                                             
iptables -t nat -A REDSOCKS -j LOG -p tcp --syn --log-level info --log-prefix "err "                                                                         

5) Создаем файл /usr/bin/unblocker с таким содержимым:

#!/bin/sh

FILE="/etc/blocked"
ADD_CMD_1="iptables -t nat -I PREROUTING 1 -d _DEST_IP_ -p tcp -s 192.168.1.0/16 -j REDSOCKS"
ADD_CMD_2="iptables -t nat -I OUTPUT 1 -d _DEST_IP_ -p tcp -j REDSOCKS"
CLEAR_CMD="iptables -t nat -F PREROUTING"
LOG="/var/log/ip_list"

get_md5 () {
    if [ -f $FILE ]
        then
            md5sum $FILE | cut -d" " -f1;
        else
            touch $FILE;
            get_md5;
    fi
}

update_chains () {
    $CLEAR_CMD
    if [ -f $FILE ]
        then
            echo "" > $LOG;
            cat $FILE | 
                while read i; 
                    do 
                        ( nslookup "$i" | grep -v "#53" | grep Address | grep "\." | cut -d":" -f2 | cut -d" " -f2); 
                    done | 
                        while read i; 
                            do 
                                CMD_1=`echo $ADD_CMD_1 | sed s/_DEST_IP_/$i/g`;
                                CMD_2=`echo $ADD_CMD_2 | sed s/_DEST_IP_/$i/g`;
                                echo $i >> $LOG;
                                $CMD_1;
                                $CMD_2;
                            done;
    fi

}

echo "" > $LOG;
MD5_BEFORE=`get_md5`;
update_chains;

while :;
    do
        sleep 10;
        MD5=`get_md5`;
        if [ "$MD5_BEFORE" = "$MD5" ]
            then
                continue;
            else
                MD5_BEFORE=$MD5;
                update_chains;
        fi
    done

6) делаем /usr/bin/unblocker исполняемым при помощи chmod +x

7) настраиваем автозапуск usr/bin/unblocker через cron или /etc/rc.local

8) В /etc/blocked помещаем список заблокированных ресурсов по одному на строку

9) Убеждаемся, что автозапуск для tor и redsocks включен и перезагружаем роутер

r0ck3r ★★★★★
()
Последнее исправление: r0ck3r (всего исправлений: 1)

обходить блокировку для прослушивания онлайн музыки

как эта болезнь называется?

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