3proxy және iptables/netfilter көмегімен мөлдір проксимен жұмыс істеу негіздері немесе «барлығын прокси арқылы қою» жолы

Бұл мақалада мен транспарентті проксинің мүмкіндіктерін ашқым келеді, бұл трафикті толығымен немесе бір бөлігін сыртқы прокси-серверлер арқылы клиенттер мүлдем байқамайтын етіп қайта бағыттауға мүмкіндік береді.

Мен бұл мәселені шеше бастағанда, оны жүзеге асыруда бір маңызды мәселе бар - HTTPS протоколы болды. Бұрынғы жақсы күндерде мөлдір HTTP проксиімен байланысты ерекше проблемалар болған жоқ, бірақ HTTPS проксиімен браузерлер протоколға кедергі келтіреді және бақыт осында аяқталады.

Squid прокси-серверіне арналған жалпы нұсқауларда олар тіпті өзіңіздің сертификатыңызды жасауды және оны клиенттерге орнатуды ұсынады, бұл кем дегенде ақымақтық, қисынсыз және MITM шабуылына ұқсайды. Мен Squid қазірдің өзінде ұқсас нәрсені жасай алатынын білемін, бірақ бұл мақала құрметті 3APA3A 3proxy көмегімен дәлелденген және жұмыс әдісі туралы.

Әрі қарай, біз көзден 3прокси құру процесін, оның конфигурациясын, NAT арқылы толық және таңдамалы проксиді, бірнеше сыртқы прокси серверлерге арналарды таратуды, сонымен қатар маршрутизаторды және статикалық маршруттарды пайдалануды егжей-тегжейлі қарастырамыз. Операциялық жүйе ретінде біз Debian 9 x64 қолданамыз. БАСТА!

3прокси орнату және кәдімгі прокси серверді іске қосу

1. ifconfig орнатыңыз (net-tools бумасынан)
apt-get install net-tools
2. Midnight Commander бағдарламасын орнатыңыз
apt-get install mc
3. Бізде қазір 2 интерфейс бар:
enp0s3 - сыртқы, Интернетке қарайды
enp0s8 - ішкі, жергілікті желіні қарау керек
Басқа Debian негізіндегі дистрибутивтерде интерфейстер әдетте eth0 және eth1 деп аталады.
ifconfig -a

интерфейстерenp0s3: жалаушалар=4163 мту 1500
inet 192.168.23.11 желі маскасы 255.255.255.0 хабар тарату 192.168.23.255
inet6 fe80::a00:27ff:fec2:bae4 префикс 64 scopeid 0x20 эфир 08:00:27:c2:ba:e4 txqueuelen 1000 (Ethernet)
RX пакеттері 6412 байт 8676619 (8.2 МБ)
RX қателері 0 төмендеді 0 асып кету 0 кадр 0
TX пакеттері 1726 байт 289128 (282.3 КБ)
TX қателері 0 төмендеді 0 асып кету 0 тасымалдаушы 0 соқтығыс 0

enp0s8: жалаушалар=4098 мту 1500
эфир 08:00:27:79:a7:e3 txqueuelen 1000 (Ethernet)
RX пакеттері 0 байт 0 (0.0 B)
RX қателері 0 төмендеді 0 асып кету 0 кадр 0
TX пакеттері 0 байт 0 (0.0 B)
TX қателері 0 төмендеді 0 асып кету 0 тасымалдаушы 0 соқтығыс 0

мына: жалаулар=73 mtu 65536
inet 127.0.0.1 желі маскасы 255.0.0.0
inet6 ::1 префикс 128 scopeid 0x10 цикл txqueuelen 1 (Жергілікті кері қайтару)
RX пакеттері 0 байт 0 (0.0 B)
RX қателері 0 төмендеді 0 асып кету 0 кадр 0
TX пакеттері 0 байт 0 (0.0 B)
TX қателері 0 төмендеді 0 асып кету 0 тасымалдаушы 0 соқтығыс 0

enp0s8 интерфейсі қазіргі уақытта пайдаланылмаған, біз оны NAT прокси немесе NAT конфигурациясын пайдаланғымыз келгенде қосамыз. Содан кейін оған статикалық IP тағайындау қисынды болады.

4. 3прокси орнатуды бастайық

4.1 Көздерден 3прокси компиляциялау үшін негізгі бумаларды орнату

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) Оны ресми 04proxy веб-сайтынан жүктеп алыңыз.

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]: '/opt/proxy/3proxy-0.8.12/src/plugins/TransparentPlugin' каталогынан шығу
make[1]: '/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

3прокси: /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
пайдаланушылар тестілері:CL:1234
күту уақыты 1 5 30 60 180 1800 16 60
log /home/joke/proxy/logs/3proxy.log D
логпішімі "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
3. айналдыру
күшті
жуу
сынақшыға рұқсат етіңіз
шұлықтар - 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 журналыБелсенді интернет қосылымдары (тек серверлер)
Proto Recv-Q Send-Q Жергілікті мекенжай Шетелдік мекенжай күй PID/бағдарлама атауы
tcp 0 0 0.0.0.0:8080 0.0.0.0:* ТЫҢДАУ 504/3прокси
tcp 0 0 0.0.0.0:22 0.0.0.0:* ТЫҢДАУ 338/sshd
tcp 0 0 0.0.0.0:3128 0.0.0.0:* ТЫҢДАУ 504/3прокси
tcp6 0 0 :::22 :::* ТЫҢДАУ 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: жаңа crontab орнату

4.18. Жүйені қайта жүктеп, браузер арқылы проксиге қосылуға тырысайық. Тексеру үшін біз Firefox браузерін (веб-прокси үшін) және аутентификациясы бар socks5 үшін FoxyProxy қондырмасын қолданамыз.

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

4.19. Қайта жүктеуден кейін прокси жұмысын тексергеннен кейін журналдарды көруге болады. Бұл прокси серверді орнатуды аяқтайды.

3 прокси журналы1542573996.018 PROXY.8080 00000 сынаушы 192.168.23.10:50915 217.12.15.54:443 1193 6939 0 CONNECT_ads.yahoo.com/443_
1542574289.634 SOCK5.3128 00000 сынаушы 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 қызметі 3прокси (dnspr) мүмкіндіктерін пайдаланады. UDP сыртқа «өтпейді», өйткені біз әлі жіберу механизмін қолданбаймыз (Linux ядросында әдепкі бойынша өшірілген).

1. enp0s8 интерфейсін қосу уақыты келді

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

/etc/network/interfaces файлы# Бұл файл жүйеде қол жетімді желі интерфейстерін сипаттайды
# және оларды қалай белсендіру керек. Қосымша ақпаратты интерфейстер(5) бөлімінен қараңыз.

көзі /etc/network/interfaces.d/*

# Кері желі интерфейсі
auto lo
iface lo inet loopback

# Негізгі желі интерфейсі
allow-hotplug enp0s3
iface enp0s3 inet dhcp

# Қосымша желі интерфейсі
allow-hotplug enp0s8
iface enp0s8 inet статикалық
192.168.201.254 мекенжайы
netmask 255.255.255.0

Мұнда біз enp0s8 интерфейсіне 192.168.201.254 статикалық мекенжай мен 255.255.255.0 маскасын тағайындадық.
Ctrl+X конфигурациясын сақтап, қайта жүктеңіз

root@debian9:~# reboot

2. Интерфейстерді тексеру

root@debian9:~# ifconfig

ifconfig журналыenp0s3: жалаушалар=4163 мту 1500
inet 192.168.23.11 желі маскасы 255.255.255.0 хабар тарату 192.168.23.255
inet6 fe80::a00:27ff:fec2:bae4 префикс 64 scopeid 0x20 эфир 08:00:27:c2:ba:e4 txqueuelen 1000 (Ethernet)
RX пакеттері 61 байт 7873 (7.6 КБ)
RX қателері 0 төмендеді 0 асып кету 0 кадр 0
TX пакеттері 65 байт 10917 (10.6 КБ)
TX қателері 0 төмендеді 0 асып кету 0 тасымалдаушы 0 соқтығыс 0

enp0s8: жалаушалар=4163 мту 1500
inet 192.168.201.254 желі маскасы 255.255.255.0 хабар тарату 192.168.201.255
inet6 fe80::a00:27ff:fe79:a7e3 префикс 64 scopeid 0x20 эфир 08:00:27:79:a7:e3 txqueuelen 1000 (Ethernet)
RX пакеттері 0 байт 0 (0.0 B)
RX қателері 0 төмендеді 0 асып кету 0 кадр 0
TX пакеттері 8 байт 648 (648.0 B)
TX қателері 0 төмендеді 0 асып кету 0 тасымалдаушы 0 соқтығыс 0

мына: жалаулар=73 mtu 65536
inet 127.0.0.1 желі маскасы 255.0.0.0
inet6 ::1 префикс 128 scopeid 0x10 цикл txqueuelen 1 (Жергілікті кері қайтару)
RX пакеттері 0 байт 0 (0.0 B)
RX қателері 0 төмендеді 0 асып кету 0 кадр 0
TX пакеттері 0 байт 0 (0.0 B)
TX қателері 0 төмендеді 0 асып кету 0 тасымалдаушы 0 соқтығыс 0

3. Барлығы орындалды, енді мөлдір прокси үшін 3проксиді конфигурациялау қажет.

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
күту уақыты 1 5 30 60 180 1800 16 60
log /home/joke/proxy/logs/3proxy.log D
логпішімі "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
3. айналдыру
жуу
auth iponly
dnspr
рұқсат *
ата-ана 1000 шұлық5 EXTERNAL_PROXY 3128 сынақ құралының IP_ADDRESS 1234
плагин /opt/proxy/3proxy-0.8.12/src/TransparentPlugin.ld.so transparent_plugin
tcppm -i0.0.0.0 888 127.0.0.1 11111

4. Енді біз 3проксиді жаңа конфигурациямен іске қосамыз
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 журналыБелсенді интернет қосылымдары (тек серверлер)
Proto Recv-Q Send-Q Жергілікті мекенжай Шетелдік мекенжай күй PID/бағдарлама атауы
tcp 0 0 0.0.0.0:22 0.0.0.0:* ТЫҢДАУ 349/sshd
tcp 0 0 0.0.0.0:888 0.0.0.0:* ТЫҢДАУ 354/3прокси
tcp6 0 0 :::22 :::* ТЫҢДАУ 349/sshd
udp 0 0 0.0.0.0:53 0.0.0.0:* 354/3прокси
udp 0 0 0.0.0.0:68 0.0.0.0:* 367/dhclient

7. Енді прокси 888 портындағы кез келген TCP қосылымдарын, 53 портындағы DNS-ті қабылдауға дайын, осылайша оларды қашықтағы socks5 проксиіне және DNS Google 8.8.8.8-ге қайта бағыттауға болады. Бізге мекенжайларды беру үшін желі сүзгісін (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
#
# ISC dhcpd үшін үлгі конфигурация файлы
#

Барлық қолдау көрсетілетін желілерге ортақ # опция анықтамалары…
опция домендік атауы "example.org";
ns1.example.org, ns2.example.org домен атауы-серверлері опциясы;

келісімшарт бойынша жалдау уақыты 600;
максималды жалдау уақыты 7200;

ddns-жаңарту стилі жоқ;

# Егер бұл DHCP сервері жергілікті DHCP сервері болса
# желі, беделді директиваға түсініктеме берілмеген болуы керек.

беделді;

# Ішкі ішкі желі үшін сәл басқаша конфигурация.
ішкі желі 192.168.201.0 netmask 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 журналыБелсенді интернет қосылымдары (тек серверлер)
Proto Recv-Q Send-Q Жергілікті мекенжай Шетелдік мекенжай күй PID/бағдарлама атауы
tcp 0 0 0.0.0.0:22 0.0.0.0:* ТЫҢДАУ 389/sshd
tcp 0 0 0.0.0.0:888 0.0.0.0:* ТЫҢДАУ 310/3прокси
tcp6 0 0 :::22 :::* ТЫҢДАУ 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/3прокси
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
шикі 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 ықтималдықпен орнатылады.

Ескертпе: егер бізде веб-прокси болса, онда шұлық5 орнына connect, егер шұлық4 болса, онда шұлық4 жазу керек (шұлық4 КІРУ/ПОСОЛЬ АВТОРИЗАЦИЯСЫН ҚОЛДАМАЙДЫ!)

№2 мөлдір прокси-сервер конфигурациясының мысалыдемон
pidfile /home/joke/proxy/3proxy.pid
nserver 8.8.8.8
nscache 65536
maxconn 500
күту уақыты 1 5 30 60 180 1800 16 60
log /home/joke/proxy/logs/3proxy.log D
логпішімі "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
3. айналдыру
жуу
auth iponly
dnspr
рұқсат *

ата-ана 200 шұлық5 IP_ADDRESS_EXTERNAL_PROXY#1 3128 сынақ құралы 1234
ата-ана 200 шұлық5 IP_ADDRESS_EXTERNAL_PROXY#2 3128 сынақ құралы 1234
ата-ана 200 шұлық5 IP_ADDRESS_EXTERNAL_PROXY#3 3128 сынақ құралы 1234
ата-ана 200 шұлық5 IP_ADDRESS_EXTERNAL_PROXY#4 3128 сынақ құралы 1234
ата-ана 100 шұлық5 IP_ADDRESS_EXTERNAL_PROXY#5 3128 сынақ құралы 1234
ата-ана 100 шұлық5 IP_ADDRESS_EXTERNAL_PROXY#6 3128 сынақ құралы 1234

плагин /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) байт деректер.

2. Google жүйесіне 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

Форвард және 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

Қайта жүктегеннен кейін қайта жіберу мүмкіндігі біржола қосылғанына көз жеткізу үшін файлды өзгертейік

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

Маршрутизатор конфигурациясы арқылы мөлдір проксиді орнату және іске қосу

Бұл конфигурацияда мөлдір прокси сервер жеке компьютер немесе үй/корпоративтік маршрутизатордың артындағы виртуалды машина болуы мүмкін. Маршрутизаторда немесе құрылғыларда статикалық маршруттарды тіркеу жеткілікті және бүкіл ішкі желі ешқандай қосымша параметрлерді қажет етпестен проксиді пайдаланады.

МАҢЫЗДЫ! Біздің шлюз маршрутизатордан статикалық IP алуы немесе статикалық болуы үшін конфигурацияланған болуы керек.

1. Статикалық шлюз мекенжайын конфигурациялаңыз (enp0s3 адаптері)

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

/etc/network/interfaces файлы# Бұл файл жүйеде қол жетімді желі интерфейстерін сипаттайды
# және оларды қалай белсендіру керек. Қосымша ақпаратты интерфейстер(5) бөлімінен қараңыз.

көзі /etc/network/interfaces.d/*

# Кері желі интерфейсі
auto lo
iface lo inet loopback

# Негізгі желі интерфейсі
allow-hotplug enp0s3
iface enp0s3 inet статикалық
192.168.23.2 мекенжайы
netmask 255.255.255.0
192.168.23.254 шлюзі

# Қосымша желі интерфейсі
allow-hotplug enp0s8
iface enp0s8 inet статикалық
192.168.201.254 мекенжайы
netmask 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. Маршрутизаторда ішкі желілерді тіркейік

Маршрутизатор желілерінің тізімі199.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. 3проксиді көзден орнату нұсқаулары www.ekzorchik.ru/2015/02/how-to-take-your-socks-proxy

3. GitHub сайтындағы 3прокси әзірлеу бөлімі github.com/z3APA3A/3proxy/issues/274

Ақпарат көзі: www.habr.com

пікір қалдыру