1

В Linux мне нужен способ для маршрутизации всего сетевого трафика интерфейса enp2s0 через SOCKS4 192.168.1.2:1080 (или любого прокси-сервера SOCKS)- что-то вроде Proxifier в Windows.  Прокси работает нормально, если вручную установить в Chrome или Firefox.

ОС: Linux Mint 19.1

Вещи, которые я пытался:

  • Я установил прокси вручную в настройках сети, но я не установил его; Chrome все еще подключается напрямую.  Вот скриншот:

  • Proxychains работает отлично, но я должен вручную запускать каждое приложение с терминала.

Я не знаю, как использовать Redsocks или Iptables (пока).

Я надеюсь, что есть графический интерфейс, такой как Proxifier для Linux, но решение на основе терминала (CLI) вполне подойдет.

2 ответа2

1

для нетерпеливых просто сделай следующее; при условии, что прокси-сервер example.com:7777 и это socks5 (измените его на свой позже)

  • сначала установить redsocks sudo apt-get install redsocks

создайте пустой файл в любом месте и назовите его redsocks.conf (или как угодно), я предполагаю, что он находится здесь /etc/redsocks.conf (измените его на свой).

  • отредактируйте созданный вами файл (redsocks.conf) следующим образом
base {
 log_debug = on;
 log_info = on;
 log = "stderr";
 daemon = off;
 redirector = iptables;
}

redsocks {
    local_ip = 127.0.0.1;
    local_port = 12345;

    ip = example.com;
    port = 7777;
    type = socks5;
      // known types: socks4, socks5, http-connect, http-relay

    // login = username;
    // password = password;
        }

измените example.com 7777 с вашим прокси (обратите внимание, что вы можете использовать любой local_port кроме 12345 , это локальный порт, для которого мы установим правило iptable для перенаправления трафика, поэтому, если вы используете другой, обязательно используйте его в последующие шаги ниже)

- теперь запустите redsocks с назначением файла конфигурации следующим образом

sudo redsocks -c /etc/redsocks.conf

измените место назначения вашего redsocks.conf (если вы получили «bind: Address уже используется», попробуйте killall redsocks), вы также можете проверить, привязан ли redsocks к локальному порту 12345 с помощью netstat -tulpn

- теперь, когда redsocks запущен и готов, давайте изменим правила iptables для использования redsocks. это должно быть настроено в соответствии с вашими потребностями, но если вы хотите перенаправить все пакеты HTTP и HTTPS через прокси. Определите следующие правила.

sudo iptables -t nat -N REDSOCKS

sudo iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 169.254.0.0/16 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 224.0.0.0/4 -j RETURN
sudo iptables -t nat -A REDSOCKS -d 240.0.0.0/4 -j RETURN

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

sudo iptables -t nat -A OUTPUT -p tcp --dport 443 -j REDSOCKS
sudo iptables -t nat -A OUTPUT -p tcp --dport 80 -j REDSOCKS

sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDSOCKS
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDSOCKS

теперь ваш http и https трафик должен быть перенаправлен через example.com:7777

если вы хотите использовать сброс Iptables:

iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X

Дополнительный совет: если у вас есть vpn на вашем iphone или android, вы можете бесплатно использовать его на своем компьютере, независимо от того, какая ОС есть. просто подключите приложение vpn для телефона и установите прокси-сервер socks (в android вы можете использовать приложение «серверы»), затем используйте прокси на вашем компьютере, как указано выше, теперь весь трафик с вашего компьютера маршрутизируется через ваш телефон vpn. аккуратный.

0

Вам нужно перенаправить весь исходящий локальный трафик с помощью iptables . Не известно ни о каких программах с графическим интерфейсом, которые делают это. Мое использование iptables ограничено либо очень простыми написанными сценариями для вызова его для создания маршрутизатора и т.д., Либо для выполнения типичной настройки межсетевого экрана на основе хоста с помощью ufw . Существует графический интерфейс для ufw (gufw , представьте себе, что), но я никогда не использовал его.

Этот (закрытый из-за не по теме) вопрос / ответ должен помочь вам начать.

https://stackoverflow.com/questions/23180696/linux-iptables-redirect-outgoing-traffic-to-local-port

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .