Асновы празрыстага праксіравання з выкарыстаннем 3proxy і iptables/netfilter або як "пусціць усё праз проксі"

У дадзеным артыкуле жадалася б расчыніць магчымасці празрыстага праксіравання, якое дазваляе абсалютна неўзаметку для кліентаў перанакіроўваць увесь або частка трафіку праз вонкавыя проксі-серверы.

Калі я пачынаў вырашаць дадзеную задачу, то сутыкнуўся з тым, што яе рэалізацыя мае адну істотную праблему — пратакол HTTPS. У старыя добрыя часы асаблівых праблем з празрыстым праксіраваннем HTTP не ўзнікала, але пры праксіраванні HTTPS браўзэры паведамляюць аб умяшанні ў пратакол і на гэтым шчасце заканчваецца.

У распаўсюджаных інструкцыях да проксі-серверу Squid прапануюць нават згенераваць уласны сертыфікат і ўсталяваць яго кліентам, што поўнае трызненне як мінімум нерацыянальна і выглядае як MITM – атака. Я ведаю, што Squid ужо нешта падобнае ўмее рабіць, але прамова ў гэтым артыкуле аб правераным і працоўным спосабе з выкарыстаннем 3proxy ад паважанага 3APA3A.

Далей мы падрабязна разгледзім працэс зборкі 3proxy з зыходнікаў, яго наладу, поўнае і выбарачнае праксіраванне з выкарыстаннем NAT, размеркаванне канала на некалькі вонкавых проксі-сервераў, а таксама выкарыстанне роўтара і статычных маршрутаў. У якасці АС выкарыстоўваем Debian 9 x64. Пачынаем!

Усталяванне 3proxy і запуск звычайнага проксі-сервера

1. Усталёўваны ifconfig (з пакета net-tools)
apt-get install net-tools
2. Усталёўваны Midnigth Commander
apt-get install mc
3. У нас зараз 2 інтэрфейсу:
enp0s3 – вонкавы, глядзіць у інтэрнэт
enp0s8 - унутраны, павінен глядзець у лакальную сетку
У іншых Debian-based дыстрыбутывах інтэрфейсы звычайна завуцца eth0 і eth1.
ifconfig -a

Інтэрфейсыenp0s3: flags=4163 mtu 1500
inet 192.168.23.11 маска сеткі 255.255.255.0 трансляцыя 192.168.23.255
inet6 fe80::a00:27ff:fec2:bae4 prefixlen 64 scopeid 0x20 ether 08:00:27:c2:ba:e4 txqueuelen 1000 (Ethernet)
Пакеты RX 6412 байт 8676619 (8.2 МіБ)
Памылкі RX 0 адменена 0 перавыкананне 0 кадр 0
Пакеты TX 1726 байт 289128 (282.3 КіБ)
Памылкі перадачы 0 зніклі 0 перарасходы 0 носьбіт 0 сутыкненні 0

enp0s8: flags=4098 mtu 1500
ether 08:00:27:79:a7:e3 txqueuelen 1000 (Ethernet)
Пакеты RX 0 байтаў 0 (0.0 Б)
Памылкі RX 0 адменена 0 перавыкананне 0 кадр 0
Пакеты TX 0 байт 0 (0.0 Б)
Памылкі перадачы 0 зніклі 0 перарасходы 0 носьбіт 0 сутыкненні 0

lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1 (Local Loopback)
Пакеты RX 0 байтаў 0 (0.0 Б)
Памылкі RX 0 адменена 0 перавыкананне 0 кадр 0
Пакеты TX 0 байт 0 (0.0 Б)
Памылкі перадачы 0 зніклі 0 перарасходы 0 носьбіт 0 сутыкненні 0

Інтэрфейс enp0s8 на дадзены момант не выкарыстоўваецца, мы яго ўключым, калі захочам выкарыстоўваць канфігурацыю Proxy NAT ці NAT. Менавіта тады лагічным будзе прызначыць яму статычны IP.

4. Прыступім да ўстаноўкі 3proxy

4.1/3 Ўстаноўка базавых пакетаў для кампіляцыі XNUMXproxy з зыходнікаў

root@debian9:~# apt-get install build-essential libevent-dev libssl-dev -y

4.2. Створым тэчку для запампоўкі архіва з зыходнікамі

root@debian9:~# mkdir -p /opt/proxy

4.3. Пяройдзем у гэтую тэчку

root@debian9:~# cd /opt/proxy

4.4. Цяпер загрузім апошні пакет 3proxy. На момант напісання артыкула апошняй стабільнай версіяй была 0.8.12 (18/04/2018) Спампуем яе з афіцыйнага сайта 3proxy

root@debian9:/opt/proxy# wget https://github.com/z3APA3A/3proxy/archive/0.8.12.tar.gz

4.5. Распакуем запампаваны архіў

root@debian9:/opt/proxy# tar zxvf 0.8.12.tar.gz

4.6. Пераходзім у распакаваны каталог для зборкі праграмы

root@debian9:/opt/proxy# cd 3proxy-0.8.12

4.7. Далей трэба дадаць радок у файл загалоўка, каб наш сервер быў цалкам ананімным (рэальна працуе, усё праверана, ip кліентаў хаваюцца)

root@debian9:/opt/proxy/3proxy-0.8.12# nano +29 src/proxy.h

Дадаем радок

#define ANONYMOUS 1

Націскаем Ctrl+x і Enter, каб захаваць змены.

4.8. Прыступім да зборкі праграмы

root@debian9:/opt/proxy/3proxy-0.8.12# make -f Makefile.Linux

Makelogmake[2]: Leaving directory '/opt/proxy/3proxy-0.8.12/src/plugins/TransparentPlugin'
make[1]: Leaving directory '/opt/proxy/3proxy-0.8.12/src'

Памылак няма, працягваем.

4.9. Усталюем праграму ў сістэму

root@debian9:/opt/proxy/3proxy-0.8.12# make -f Makefile.Linux install

4.10. Пераходзім у каранёвы каталог і правяраем, куды ўсталявалася праграма

root@debian9:/opt/proxy/3proxy-0.8.12# cd ~/
root@debian9:~# whereis 3proxy

3proxy: /usr/local/bin/3proxy /usr/local/etc/3proxy

4.11. Створым тэчку для канфігурацыйных файлаў і логаў у хатнім каталогу карыстача

root@debian9:~# mkdir -p /home/joke/proxy/logs

4.12. Пераходзім у каталог, дзе павінен быць канфіг

root@debian9:~# cd /home/joke/proxy/

4.13. Ствараем пусты файл і які капіюецца туды канфіг

root@debian9:/home/joke/proxy# cat > 3proxy.conf

3proxy.confдэман
pidfile /home/joke/proxy/3proxy.pid
nserver 8.8.8.8
nscache 65536
users tester:CL:1234
timeouts 1 5 30 60 180 1800 16 60
log /home/joke/proxy/logs/3proxy.log D
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
круціць 3
auth strong
ўпоравень
allow tester
socks -p3128
проксі -p8080

Для захавання націскаем Ctrl + Z

4.14. Створым pid - файл, каб не было памылак пры запуску.

root@debian9:/home/joke/proxy# cat > 3proxy.pid

Для захавання націскаем Ctrl + Z

4.15. Запускаем проксі сервер!

root@debian9:/home/joke/proxy# 3proxy /home/joke/proxy/3proxy.conf

4.16. Паглядзім, ці слухае сервер парты

root@debian9:~/home/joke/proxy# netstat -nlp

netstat logActive Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 504/3proxy
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 338/sshd
tcp 0 0 0.0.0.0:3128 0.0.0.0:* LISTEN 504/3proxy
tcp6 0 0 :::22 :::* LISTEN 338/sshd
udp 0 0 0.0.0.0:68 0.0.0.0:* 352/dhclient

Як і было напісана ў канфігу, вэб-проксі слухае ў нас порт 8080, Socks5-проксі – 3128.

4.17. Для аўтазапуску службы проксі пасля перазагрузкі трэба дадаць яе ў cron.

root@debian9:/home/joke/proxy# crontab -e

Дадаем радок

@reboot /usr/local/bin/3proxy /home/joke/proxy/3proxy.conf

Націскаем Enter, бо cron павінен бачыць знак канца радка і захоўваем файл.

Павінна быць паведамленне аб усталёўцы новага crontab-а.

crontab: installing new crontab

4.18. Перазагрузім сістэму і паспрабуем падлучыцца праз браўзэр да проксі. Для праверкі выкарыстоўваем браўзэр Firefox (для вэба-проксі) і дадатак FoxyProxy для socks5 з аўтэнтыфікацыяй.

root@debian9:/home/joke/proxy# reboot

4.19. Праверыўшы працу проксі пасля перазагрузкі, можна паглядзець логі. На гэтым настройка проксі-сервера завершана.

3 proxy log1542573996.018 PROXY.8080 00000 tester 192.168.23.10:50915 217.12.15.54:443 1193 6939 0 CONNECT_ads.yahoo.com:443.
1542574289.634 SOCK5.3128 00000 tester 192.168.23.10:51193 54.192.13.69:443 0 0 0 CONNECT_normandy.cdn.mozilla.net:443

Настройка і запуск канфігурацыі Transparent Proxy NAT

У дадзенай канфігурацыі ўсе прылады ўнутранай сеткі будуць празрыста працаваць у інтэрнэце праз выдалены проксі-сервер. Абсалютна ўсе tcp-злучэнні будуць перанакіроўвацца ў адзін або некалькі (рэальна пашырае шырыню канала, прыклад канфігурацыі №2!) проксі-сервераў. Служба DNS будзе выкарыстоўваць магчымасці 3proxy (dnspr). UDP вонкі "хадзіць" не будзе, бо мы пакуль не выкарыстоўваны механізм forward (па-змаўчанні адключаны ў ядры Linux).

1. Надышоў час уключыць інтэрфейс enp0s8

root@debian9:~# nano /etc/network/interfaces

/etc/network/interfaces file# Гэты файл апісвае сеткавыя інтэрфейсы, даступныя ў вашай сістэме
# і як іх актываваць. Для атрымання дадатковай інфармацыі глядзіце інтэрфейсы (5).

source /etc/network/interfaces.d/*

# Кольцавы сеткавы інтэрфейс
аўто ло
IFACE вось інэт шлейфу

# Асноўны сеткавы інтэрфейс
allow-hotplug enp0s3
iface enp0s3 inet dhcp

# The secondary network interface
allow-hotplug enp0s8
iface enp0s8 inet static
адрас 192.168.201.254
Маска 255.255.255.0

Тут мы прызначылі інтэрфейсу enp0s8 статычны адрас 192.168.201.254 і маску 255.255.255.0
Захоўваем канфіг Ctrl+X і перазагружаемся

root@debian9:~# reboot

2. Правяраем інтэрфейсы

root@debian9:~# ifconfig

ifconfig logenp0s3: flags=4163 mtu 1500
inet 192.168.23.11 маска сеткі 255.255.255.0 трансляцыя 192.168.23.255
inet6 fe80::a00:27ff:fec2:bae4 prefixlen 64 scopeid 0x20 ether 08:00:27:c2:ba:e4 txqueuelen 1000 (Ethernet)
RX packets 61 bytes 7873 (7.6 KiB)
Памылкі RX 0 адменена 0 перавыкананне 0 кадр 0
Пакеты TX 65 байт 10917 (10.6 КіБ)
Памылкі перадачы 0 зніклі 0 перарасходы 0 носьбіт 0 сутыкненні 0

enp0s8: flags=4163 mtu 1500
inet 192.168.201.254 маска сеткі 255.255.255.0 трансляцыя 192.168.201.255
inet6 fe80::a00:27ff:fe79:a7e3 prefixlen 64 scopeid 0x20 ether 08:00:27:79:a7:e3 txqueuelen 1000 (Ethernet)
Пакеты RX 0 байтаў 0 (0.0 Б)
Памылкі RX 0 адменена 0 перавыкананне 0 кадр 0
Пакеты TX 8 байт 648 (648.0 Б)
Памылкі перадачы 0 зніклі 0 перарасходы 0 носьбіт 0 сутыкненні 0

lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1 (Local Loopback)
Пакеты RX 0 байтаў 0 (0.0 Б)
Памылкі RX 0 адменена 0 перавыкананне 0 кадр 0
Пакеты TX 0 байт 0 (0.0 Б)
Памылкі перадачы 0 зніклі 0 перарасходы 0 носьбіт 0 сутыкненні 0

3. Усё атрымалася, зараз неабходна наладзіць 3proxy для празрыстага праксіравання.

root@debian9:~# cd /home/joke/proxy/
root@debian9:/home/joke/proxy# cat > 3proxytransp.conf

Прыклад канфігурацыі празрыстага проксі-сервера №1дэман
pidfile /home/joke/proxy/3proxy.pid
nserver 8.8.8.8
nscache 65536
timeouts 1 5 30 60 180 1800 16 60
log /home/joke/proxy/logs/3proxy.log D
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
круціць 3
ўпоравень
auth iponly
dnspr
allow *
parent 1000 socks5 IP_АДРАС_ЗНЕШНЯГА_ПРОКСІ 3128 tester 1234
plugin /opt/proxy/3proxy-0.8.12/src/TransparentPlugin.ld.so transparent_plugin
tcppm -i0.0.0.0 888 127.0.0.1 11111

4. Цяпер запускаем 3proxy з новым канфігам
root@debian9:/home/joke/proxy# /usr/local/bin/3proxy /home/joke/proxy/3proxytransp.conf

5. Зноў дадамо ў crontab
root@debian9:/home/joke/proxy# crontab -e
@reboot /usr/local/bin/3proxy /home/joke/proxy/3proxytransp.conf

6. Паглядзім, што зараз слухае наш проксі
root@debian9:~# netstat -nlp

netstat logActive Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 349/sshd
tcp 0 0 0.0.0.0:888 0.0.0.0:* LISTEN 354/3proxy
tcp6 0 0 :::22 :::* LISTEN 349/sshd
udp 0 0 0.0.0.0:53 0.0.0.0:* 354/3proxy
udp 0 0 0.0.0.0:68 0.0.0.0:* 367/dhclient

7. Цяпер проксі гатовы прымаць любыя TCP-злучэнні на порце 888, DNS на порце 53, каб потым іх перанакіраваць у выдалены socks5 - проксі і DNS Google 8.8.8.8. Нам засталося настроіць правілы netfilter (iptables) і DHCP для выдачы адрасоў.

8. Усталюем пакет iptables-persistent і dhcpd

root@debian9:~# apt-get install iptables-persistent isc-dhcp-server

9. Кіруем файл запуску dhcpd
root@debian9:~# nano /etc/dhcp/dhcpd.conf

dhcpd.conf#dhcpd.conf
#
# Sample configuration file for ISC dhcpd
#

# option definitions common to all supported networks…
option domain-name "example.org";
option domain-name-servers ns1.example.org, ns2.example.org;

час арэнды па змаўчанні 600;
максімальны час арэнды 7200;

ddns-update-style none;

# Калі гэты сервер DHCP з'яўляецца афіцыйным серверам DHCP для лакальнага
# network, the authoritative directive павінна быць uncommented.

аўтарытэтны;

# A slightly different configuration for an internal subnet.
падсетка 192.168.201.0 сеткавая маска 255.255.255.0 {
дыяпазон 192.168.201.10 192.168.201.250;
варыянт сервераў даменных імёнаў 192.168.201.254;
апцыённыя маршрутызатары 192.168.201.254;
опцыя трансляцыя-адрас 192.168.201.255;
час арэнды па змаўчанні 600;
максімальны час арэнды 7200;
}

11. Перазагружаемся і правяраем службу на порце 67
root@debian9:~# reboot
root@debian9:~# netstat -nlp

netstat logActive Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 389/sshd
tcp 0 0 0.0.0.0:888 0.0.0.0:* LISTEN 310/3proxy
tcp6 0 0 :::22 :::* LISTEN 389/sshd
udp 0 0 0.0.0.0:20364 0.0.0.0:* 393/dhcpd
udp 0 0 0.0.0.0:53 0.0.0.0:* 310/3proxy
udp 0 0 0.0.0.0:67 0.0.0.0:* 393/dhcpd
udp 0 0 0.0.0.0:68 0.0.0.0:* 405/dhclient
udp6 0 0 :::31728 :::* 393/dhcpd
raw 0 0 0.0.0.0:1 0.0.0.0:* 393/dhcpd

12. Засталося перанакіраваць усе tcp запыты на порт 888 і захаваць правіла ў iptables

root@debian9:~# iptables -t nat -A PREROUTING -s 192.168.201.0/24 -p tcp -j REDIRECT --to-ports 888

root@debian9:~# iptables-save > /etc/iptables/rules.v4

13. Для пашырэння паласы канала можна выкарыстоўваць адразу некалькі проксі-сервераў. Агульная сума павінна быць 1000. Новыя злучэнні ўсталёўваюцца з верагоднасцю 0.2, 0.2, 0.2, 0.2, 0,1, 0,1 да ўказаных проксі-серверам.

Заўвага: калі ў нас web-проксі то замест socks5 трэба пісаць connect, калі socks4, то socks4 (socks4 НЕ ПАДТРЫМЛЯЕ АЎТАРЫЗАЦЫЮ ЛАГІН/ПАРОЛЬ!)

Прыклад канфігурацыі празрыстага проксі-сервера №2дэман
pidfile /home/joke/proxy/3proxy.pid
nserver 8.8.8.8
nscache 65536
maxconn 500
timeouts 1 5 30 60 180 1800 16 60
log /home/joke/proxy/logs/3proxy.log D
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
круціць 3
ўпоравень
auth iponly
dnspr
allow *

parent 200 socks5 IP_АДРАС_ЗНЕШНЯГА_ПРОКСІ№1 3128 tester 1234
parent 200 socks5 IP_АДРАС_ЗНЕШНЯГА_ПРОКСІ№2 3128 tester 1234
parent 200 socks5 IP_АДРАС_ЗНЕШНЯГА_ПРОКСІ№3 3128 tester 1234
parent 200 socks5 IP_АДРАС_ЗНЕШНЯГА_ПРОКСІ№4 3128 tester 1234
parent 100 socks5 IP_АДРАС_ЗНЕШНЯГА_ПРОКСІ№5 3128 tester 1234
parent 100 socks5 IP_АДРАС_ЗНЕШНЯГА_ПРОКСІ№6 3128 tester 1234

plugin /opt/proxy/3proxy-0.8.12/src/TransparentPlugin.ld.so transparent_plugin
tcppm -i0.0.0.0 888 127.0.0.1 11111

Настройка і запуск канфігурацыі NAT + Transparent Proxy

У дадзенай канфігурацыі мы будзем выкарыстоўваць звычайны механізм NAT з выбарачным або поўным празрыстым праксіраванне асобных адрасоў або падсетак. Карыстальнікі ўнутранай сеткі будуць працаваць з пэўнымі сэрвісамі/падсеткамі нават не здагадваючыся, што яны працуюць праз проксі. Усе https злучэння працуюць выдатна, ніякіх сертыфікатаў генераваць/падмяняць не трэба.

Для пачатку вызначымся, якія падсеткі/сэрвісы мы жадаем праксіраваць. Выкажам здагадку, што вонкавыя проксі-сервера знаходзяцца тамака, дзе працуе такі сэрвіс, як pandora.com. Цяпер засталося вызначыць яго падсеткі/адрасы.

1. Пінгуем

root@debian9:~# ping pandora.com
PING pandora.com (208.85.40.20) 56(84) bytes of data.

2. Набіраем у гугле BGP 208.85.40.20

Пераходзім на сайт bgp.he.net/net/208.85.40.0/24#_netinfo
Відаць, што шукаю падсетку гэта AS40428 Pandora Media, Inc

bgp.he.net/net/208.85.40.0/24#_netinfo

Адкрываем прэфіксы v4

bgp.he.net/AS40428#_prefixes

Вось і шуканыя падсеткі!

199.116.161.0/24
199.116.162.0/24
199.116.164.0/23
199.116.164.0/24
199.116.165.0/24
208.85.40.0/24
208.85.41.0/24
208.85.42.0/23
208.85.42.0/24
208.85.43.0/24
208.85.44.0/24
208.85.46.0/23
208.85.46.0/24
208.85.47.0/24

3. Для памяншэння колькасці падсетак трэба выканаць агрэгацыю. Пераходзім на сайт ip-calculator.ru/aggregate і які капіюецца туды наш спіс. Як вынік - 6 падсетак замест 14-ці.

199.116.161.0/24
199.116.162.0/24
199.116.164.0/23
208.85.40.0/22
208.85.44.0/24
208.85.46.0/23

4. Чысцім правілы iptables

root@debian9:~# iptables -F
root@debian9:~# iptables -X
root@debian9:~# iptables -t nat -F
root@debian9:~# iptables -t nat -X

Уключаем механізм forward і NAT

root@debian9:~# echo 1 > /proc/sys/net/ipv4/ip_forward
root@debian9:~# iptables -A FORWARD -i enp0s3 -o enp0s8 -j ACCEPT
root@debian9:~# iptables -A FORWARD -i enp0s8 -o enp0s3 -j ACCEPT
root@debian9:~# iptables -t nat -A POSTROUTING -o enp0s3 -s 192.168.201.0/24 -j MASQUERADE

Каб forward быў уключаны ўвесь час пасля перазагрузкі зменім файл

root@debian9:~# nano /etc/sysctl.conf

І раскаментуем радок

net.ipv4.ip_forward = 1

Ctrl+X для захавання файла

5. Заварочваем падсеткі pandora.com у проксі

root@debian9:~# iptables -t nat -A PREROUTING -s 192.168.201.0/24 -d 199.116.161.0/24,199.116.162.0/24,199.116.164.0/23,208.85.40.0/22,208.85.44.0/24,208.85.46.0/23 -p tcp -j REDIRECT --to-ports 888

6. Захаваем правілы

root@debian9:~# iptables-save > /etc/iptables/rules.v4

Настройка і запуск канфігурацыі Transparent Proxy via router

У дадзенай канфігурацыі празрысты проксі-сервер можа быць асобным ПК ці віртуальнай машынай за хатнім/карпаратыўным роўтарам. Дастаткова прапісаць статычныя маршруты на роўтары ці прыладах і ўся падсетка будзе выкарыстоўваць проксі без неабходнасці якіх-небудзь дадатковых налад.

ВАЖНА! Неабходна, каб наш шлюз атрымліваў статычны IP ад роўтара, альбо быў настроены на статыку сам.

1. Наладжваем статычны адрас шлюза (адаптар enp0s3)

root@debian9:~# nano /etc/network/interfaces

/etc/network/interfaces file# Гэты файл апісвае сеткавыя інтэрфейсы, даступныя ў вашай сістэме
# і як іх актываваць. Для атрымання дадатковай інфармацыі глядзіце інтэрфейсы (5).

source /etc/network/interfaces.d/*

# Кольцавы сеткавы інтэрфейс
аўто ло
IFACE вось інэт шлейфу

# Асноўны сеткавы інтэрфейс
allow-hotplug enp0s3
iface enp0s3 inet static
адрас 192.168.23.2
Маска 255.255.255.0
192.168.23.254 шлюз

# The secondary network interface
allow-hotplug enp0s8
iface enp0s8 inet static
адрас 192.168.201.254
Маска 255.255.255.0

2. Дазваляем прыладам з падсеткі 192.168.23.0/24 выкарыстоўваць праксіраванне

root@debian9:~# iptables -t nat -A PREROUTING -s 192.168.23.0/24 -d 199.116.161.0/24,199.116.162.0/24,199.116.164.0/23,208.85.40.0/22,208.85.44.0/24,208.85.46.0/23 -p tcp -j REDIRECT --to-ports 888

3. Захаваем правілы
root@debian9:~# iptables-save > /etc/iptables/rules.v4

4. Прапішам падсеткі на роўтары

Router network list199.116.161.0 255.255.255.0 192.168.23.2
199.116.162.0 255.255.255.0 192.168.23.2
199.116.164.0 255.255.254.0 192.168.23.2
208.85.40.0 255.255.252.0 192.168.23.2
208.85.44.0 255.255.255.0 192.168.23.2
208.85.46.0 255.255.254.0 192.168.23.2

Выкарыстаныя матэрыялы/рэсурсы

1. Афіцыйны сайт праграмы 3proxy 3proxy.ru

2. Інструкцыя па ўстаноўцы 3proxy з зыходнікаў www.ekzorchik.ru/2015/02/how-to-take-your-socks-proxy

3. Ветка распрацоўніка 3proxy на GitHub github.com/z3APA3A/3proxy/issues/274

Крыніца: habr.com

Дадаць каментар