Å ajÄ rakstÄ vÄlos atklÄt caurspÄ«dÄ«gas starpniekserverÄÅ”anas iespÄjas, kas ļauj pilnÄ«bÄ vai daļu trafika novirzÄ«t caur ÄrÄjiem starpniekserveriem, klientiem absolÅ«ti nepamanot.
Kad sÄku risinÄt Å”o problÄmu, saskÄros ar faktu, ka tÄs ievieÅ”anai bija viena bÅ«tiska problÄma - HTTPS protokols. Vecajos labajos laikos ar caurspÄ«dÄ«gu HTTP starpniekserveri Ä«paÅ”u problÄmu nebija, taÄu ar HTTPS starpniekserveri pÄrlÅ«kprogrammas ziÅo par protokola traucÄjumiem, un ar to arÄ« laime beidzas.
KopÄjos Squid starpniekservera norÄdÄ«jumos viÅi pat iesaka izveidot savu sertifikÄtu un instalÄt to klientiem, kas ir vismaz pilnÄ«ga muļķība, neracionÄla un izskatÄs pÄc MITM uzbrukuma. Es zinu, ka Squid jau var izdarÄ«t kaut ko lÄ«dzÄ«gu, bet Å”is raksts ir par pÄrbaudÄ«tu un strÄdÄjoÅ”u metodi, izmantojot 3proxy no cienÄ«jamÄ 3APA3A.
TÄlÄk mÄs detalizÄti aplÅ«kosim 3 starpniekservera izveides procesu no avota, tÄ konfigurÄciju, pilnu un selektÄ«vu starpniekserveri, izmantojot NAT, kanÄlu izplatÄ«Å”anu vairÄkiem ÄrÄjiem starpniekserveriem, kÄ arÄ« marÅ”rutÄtÄja un statisko marÅ”rutu izmantoÅ”anu. MÄs izmantojam Debian 9 x64 kÄ OS. SÄciet!
3 starpniekservera instalÄÅ”ana un parasta starpniekservera palaiÅ”ana
1. InstalÄjiet ifconfig (no net-tools pakotnes)
apt-get install net-tools
2. InstalÄjiet Midnight Commander
apt-get install mc
3. Tagad mums ir 2 saskarnes:
enp0s3 - ÄrÄjs, skatÄs internetÄ
enp0s8 - iekÅ”Äjais, ir jÄiepazÄ«stas vietÄjÄ tÄ«klÄ
Citos uz Debian balstītos izplatījumos saskarnes parasti sauc par eth0 un eth1.
ifconfig -a
Saskarnesenp0s3: karodziÅi=4163 Mtu 1500
inet 192.168.23.11 tÄ«kla maska āā255.255.255.0 pÄrraide 192.168.23.255
inet6 fe80::a00:27ff:fec2:bae4 prefixlen 64 Scopeid 0x20 Äteris 08:00:27:c2:ba:e4 txqueuelen 1000 (Ethernet)
RX paketes 6412 baiti 8676619 (8.2 MiB)
RX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 kadrs 0
TX paketes 1726 baiti 289128 (282.3 KiB)
TX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 nesÄjs 0 sadursmes 0
enp0s8: karodziÅi=4098 Mtu 1500
Äteris 08:00:27:79:a7:e3 txqueuelen 1000 (Ethernet)
RX paketes 0 baiti 0 (0.0 B)
RX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 kadrs 0
TX paketes 0 baiti 0 (0.0 B)
TX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 nesÄjs 0 sadursmes 0
lo: karogi=73 mtu 65536
inet 127.0.0.1 tÄ«kla maska āā255.0.0.0
inet6 ::1 prefixlen 128 Scopeid 0x10 cilpa txqueuelen 1 (Local Loopback)
RX paketes 0 baiti 0 (0.0 B)
RX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 kadrs 0
TX paketes 0 baiti 0 (0.0 B)
TX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 nesÄjs 0 sadursmes 0
enp0s8 saskarne paÅ”laik netiek izmantota, mÄs to iespÄjosim, kad vÄlÄsimies izmantot starpniekservera NAT vai NAT konfigurÄciju. Tad bÅ«tu loÄ£iski pieŔķirt tam statisku IP.
4. SÄksim instalÄt 3proxy
4.1. PamatpakeÅ”u instalÄÅ”ana 3proxy kompilÄÅ”anai no avotiem
root@debian9:~# apt-get install build-essential libevent-dev libssl-dev -y
4.2. Izveidosim mapi arhÄ«va lejupielÄdei ar avotiem
root@debian9:~# mkdir -p /opt/proxy
4.3. Dosimies uz Ŕo mapi
root@debian9:~# cd /opt/proxy
4.4. Tagad lejupielÄdÄsim jaunÄko 3proxy pakotni. RakstÄ«Å”anas laikÄ jaunÄkÄ stabilÄ versija bija 0.8.12 (18/04/2018). LejupielÄdÄjiet to no oficiÄlÄs 3proxy vietnes
root@debian9:/opt/proxy# wget https://github.com/z3APA3A/3proxy/archive/0.8.12.tar.gz
4.5. Izpakosim lejupielÄdÄto arhÄ«vu
root@debian9:/opt/proxy# tar zxvf 0.8.12.tar.gz
4.6. Dodieties uz neizpakoto direktoriju, lai izveidotu programmu
root@debian9:/opt/proxy# cd 3proxy-0.8.12
4.7. TÄlÄk mums jÄpievieno rindiÅa galvenes failam, lai mÅ«su serveris bÅ«tu pilnÄ«gi anonÄ«ms (tas tieÅ”Äm darbojas, viss ir pÄrbaudÄ«ts, klientu IP ir paslÄpti)
root@debian9:/opt/proxy/3proxy-0.8.12# nano +29 src/proxy.h
Pievienojiet rindiÅu
#define ANONYMOUS 1
Nospiediet Ctrl+x un Enter, lai saglabÄtu izmaiÅas.
4.8. SÄksim montÄt programmu
root@debian9:/opt/proxy/3proxy-0.8.12# make -f Makefile.Linux
Makelogmake[2]: iziet no direktorijas "/opt/proxy/3proxy-0.8.12/src/plugins/TransparentPlugin"
make[1]: iziet no direktorijas "/opt/proxy/3proxy-0.8.12/src"
Bez kļūdÄm, turpinÄsim.
4.9. InstalÄjiet programmu sistÄmÄ
root@debian9:/opt/proxy/3proxy-0.8.12# make -f Makefile.Linux install
4.10. Dodieties uz saknes direktoriju un pÄrbaudiet, kur programma tika instalÄta
root@debian9:/opt/proxy/3proxy-0.8.12# cd ~/
root@debian9:~# whereis 3proxy
3proxy: /usr/local/bin/3proxy /usr/local/etc/3proxy
4.11. Izveidosim mapi konfigurÄcijas failiem un žurnÄliem lietotÄja mÄjas direktorijÄ
root@debian9:~# mkdir -p /home/joke/proxy/logs
4.12. Dodieties uz direktoriju, kurÄ jÄatrodas konfigurÄcijai
root@debian9:~# cd /home/joke/proxy/
4.13. Izveidojiet tukÅ”u failu un kopÄjiet tur esoÅ”o konfigurÄciju
root@debian9:/home/joke/proxy# cat > 3proxy.conf
3proxy.confdÄmons
pidfile /home/joke/proxy/3proxy.pid
nserveris 8.8.8.8
nscache 65536
lietotÄju testeris:CL:1234
taimauts 1 5 30 60 180 1800 16 60
log /home/joke/proxy/logs/3proxy.log D
logformÄts "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
pagriezt 3
autors stiprs
flush
atļaut testÄtÄju
zeÄ·es -p3128
starpniekserveris -p8080
Lai saglabÄtu, nospiediet Ctrl + Z
4.14. Izveidosim pid failu, lai startÄÅ”anas laikÄ nebÅ«tu kļūdu.
root@debian9:/home/joke/proxy# cat > 3proxy.pid
Lai saglabÄtu, nospiediet Ctrl + Z
4.15. Palaidīsim starpniekserveri!
root@debian9:/home/joke/proxy# 3proxy /home/joke/proxy/3proxy.conf
4.16. ApskatÄ«sim, vai serveris klausÄs portos
root@debian9:~/home/joke/proxy# netstat -nlp
netstat žurnÄlsAktÄ«vi interneta savienojumi (tikai serveri)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Programmas nosaukums
tcp 0 0 0.0.0.0:8080 0.0.0.0:* KLAUSIES 504/3proxy
tcp 0 0 0.0.0.0:22 0.0.0.0:* KLAUSIES 338/sshd
tcp 0 0 0.0.0.0:3128 0.0.0.0:* KLAUSIES 504/3proxy
tcp6 0 0 :::22 :::* KLAUSIES 338/sshd
udp 0 0 0.0.0.0:68 0.0.0.0:* 352/dhclient
KÄ bija rakstÄ«ts konfigurÄcijÄ, mÅ«su tÄ«mekļa starpniekserveris klausÄs portu 8080, Socks5 starpniekserveris klausÄs portu 3128.
4.17. Lai pÄc atsÄknÄÅ”anas automÄtiski palaistu starpniekservera pakalpojumu, tas jÄpievieno cron.
root@debian9:/home/joke/proxy# crontab -e
Pievienojiet rindiÅu
@reboot /usr/local/bin/3proxy /home/joke/proxy/3proxy.conf
MÄs nospiežam Enter, jo cron vajadzÄtu redzÄt rindas beigu rakstzÄ«mi un saglabÄt failu.
JÄbÅ«t ziÅojumam par jaunas crontab instalÄÅ”anu.
crontab: jaunas crontab instalÄÅ”ana
4.18. PÄrstartÄsim sistÄmu un mÄÄ£inÄsim caur pÄrlÅ«kprogrammu izveidot savienojumu ar starpniekserveri. Lai pÄrbaudÄ«tu, mÄs izmantojam pÄrlÅ«kprogrammu Firefox (tÄ«mekļa starpniekserverim) un FoxyProxy pievienojumprogrammu socks5 ar autentifikÄciju.
root@debian9:/home/joke/proxy# reboot
4.19. PÄc starpniekservera darbÄ«bas pÄrbaudes pÄc atsÄknÄÅ”anas varat skatÄ«t žurnÄlus. Tas pabeidz starpniekservera iestatÄ«Å”anu.
3 starpniekservera žurnÄls1542573996.018 PROXY.8080 00000 testÄtÄjs 192.168.23.10:50915 217.12.15.54:443 1193 6939 0 CONNECT_ads.yahoo.com/443_HTTP
1542574289.634 SOCK5.3128 00000 testeris 192.168.23.10:51193 54.192.13.69:443 0 0 0 CONNECT_normandy.cdn.mozilla.net:443
Transparent Proxy NAT konfigurÄcijas iestatÄ«Å”ana un palaiÅ”ana
Å ajÄ konfigurÄcijÄ visas iekÅ”ÄjÄ tÄ«kla ierÄ«ces pÄrredzami darbosies internetÄ, izmantojot attÄlo starpniekserveri. PilnÄ«gi visi TCP savienojumi tiks novirzÄ«ti uz vienu vai vairÄkiem (reÄli paplaÅ”ina kanÄla platumu, konfigurÄcijas piemÄrs Nr.2!) starpniekserveriem. DNS pakalpojums izmantos 3 starpniekservera (dnspr) iespÄjas. UDP āneiesā uz Äru, jo mÄs vÄl neizmantojam pÄrsÅ«tÄ«Å”anas mehÄnismu (pÄc noklusÄjuma atspÄjots Linux kodolÄ).
1. Ir pienÄcis laiks iespÄjot enp0s8 saskarni
root@debian9:~# nano /etc/network/interfaces
/etc/network/interfaces failu# Å is fails apraksta tÄ«kla saskarnes pieejams jÅ«su sistÄmu
# AktivizÄts un kÄ tos. Lai iegÅ«tu vairÄk informÄcijas, skatiet saskarnes (5).
avots /etc/network/interfaces.d/*
# Atcilpas tīkla saskarne
auto lo
iface lo INET cilpas
# PrimÄrais tÄ«kla interfeiss
allow-hotplug enp0s3
iface enp0s3 inet dhcp
# SekundÄrÄ tÄ«kla saskarne
allow-hotplug enp0s8
iface enp0s8 inet statisks
adrese 192.168.201.254
netmask 255.255.255.0
Å eit mÄs pieŔķīrÄm enp0s8 saskarnei statisku adresi 192.168.201.254 un masku 255.255.255.0
SaglabÄjiet konfigurÄciju Ctrl+X un restartÄjiet
root@debian9:~# reboot
2. Interfeisu pÄrbaude
root@debian9:~# ifconfig
ifconfig žurnÄlsenp0s3: karodziÅi=4163 Mtu 1500
inet 192.168.23.11 tÄ«kla maska āā255.255.255.0 pÄrraide 192.168.23.255
inet6 fe80::a00:27ff:fec2:bae4 prefixlen 64 Scopeid 0x20 Äteris 08:00:27:c2:ba:e4 txqueuelen 1000 (Ethernet)
RX paketes 61 baits 7873 (7.6 KiB)
RX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 kadrs 0
TX paketes 65 baiti 10917 (10.6 KiB)
TX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 nesÄjs 0 sadursmes 0
enp0s8: karodziÅi=4163 Mtu 1500
inet 192.168.201.254 tÄ«kla maska āā255.255.255.0 pÄrraide 192.168.201.255
inet6 fe80::a00:27ff:fe79:a7e3 prefixlen 64 Scopeid 0x20 Äteris 08:00:27:79:a7:e3 txqueuelen 1000 (Ethernet)
RX paketes 0 baiti 0 (0.0 B)
RX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 kadrs 0
TX paketes 8 baiti 648 (648.0 B)
TX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 nesÄjs 0 sadursmes 0
lo: karogi=73 mtu 65536
inet 127.0.0.1 tÄ«kla maska āā255.0.0.0
inet6 ::1 prefixlen 128 Scopeid 0x10 cilpa txqueuelen 1 (Local Loopback)
RX paketes 0 baiti 0 (0.0 B)
RX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 kadrs 0
TX paketes 0 baiti 0 (0.0 B)
TX kļūdas 0 atmests 0 pÄrtÄriÅÅ” 0 nesÄjs 0 sadursmes 0
3. Viss izdevÄs, tagad jums ir jÄkonfigurÄ 3proxy caurspÄ«dÄ«gai starpniekserveri.
root@debian9:~# cd /home/joke/proxy/
root@debian9:/home/joke/proxy# cat > 3proxytransp.conf
CaurspÄ«dÄ«ga starpniekservera Nr.1 āākonfigurÄcijas piemÄrsdÄmons
pidfile /home/joke/proxy/3proxy.pid
nserveris 8.8.8.8
nscache 65536
taimauts 1 5 30 60 180 1800 16 60
log /home/joke/proxy/logs/3proxy.log D
logformÄts "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
pagriezt 3
flush
auth iponly
dnspr
Atļaut *
vecÄku 1000 socks5 IP_ADRESE OF EXTERNAL_PROXY 3128 testeris 1234
spraudnis /opt/proxy/3proxy-0.8.12/src/TransparentPlugin.ld.so transparent_plugin
tcppm -i0.0.0.0 888 127.0.0.1 11111
4. Tagad mÄs palaižam 3proxy ar jauno konfigurÄciju
root@debian9:/home/joke/proxy# /usr/local/bin/3proxy /home/joke/proxy/3proxytransp.conf
5. Pievienojiet vÄlreiz crontab
root@debian9:/home/joke/proxy# crontab -e
@reboot /usr/local/bin/3proxy /home/joke/proxy/3proxytransp.conf
6. ApskatÄ«sim, ko mÅ«su starpniekserveris tagad klausÄs
root@debian9:~# netstat -nlp
netstat žurnÄlsAktÄ«vi interneta savienojumi (tikai serveri)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Programmas nosaukums
tcp 0 0 0.0.0.0:22 0.0.0.0:* KLAUSIES 349/sshd
tcp 0 0 0.0.0.0:888 0.0.0.0:* KLAUSIES 354/3proxy
tcp6 0 0 :::22 :::* KLAUSIES 349/sshd
udp 0 0 0.0.0.0:53 0.0.0.0:* 354/3 starpniekserveris
udp 0 0 0.0.0.0:68 0.0.0.0:* 367/dhclient
7. Tagad starpniekserveris ir gatavs pieÅemt visus TCP savienojumus 888. portÄ, DNS ā 53. portÄ, lai pÄc tam tos varÄtu novirzÄ«t uz attÄlo socks5 starpniekserveri un DNS Google 8.8.8.8. Viss, kas mums jÄdara, ir jÄkonfigurÄ netfilter (iptables) un DHCP noteikumi adreÅ”u izsniegÅ”anai.
8. InstalÄjiet pakotni iptables-persistent un dhcpd
root@debian9:~# apt-get install iptables-persistent isc-dhcp-server
9. RediÄ£Äjiet dhcpd startÄÅ”anas failu
root@debian9:~# nano /etc/dhcp/dhcpd.conf
dhcpd.conf# dhcpd.conf
#
# ISC dhcpd konfigurÄcijas faila paraugs
#
# opciju definÄ«cijas, kas ir kopÄ«gas visiem atbalstÄ«tajiem tÄ«kliemā¦
opcija domÄna nosaukums "example.org";
opcija domÄna vÄrda serveri ns1.example.org, ns2.example.org;
noklusÄjuma nomas laiks 600;
maksimÄlais nomas laiks 7200;
ddns-update-style nav;
# Ja Å”is DHCP serveris ir oficiÄlais DHCP serveris vietÄjam
# tÄ«klÄ, autoritatÄ«vÄ direktÄ«va nav jÄkomentÄ.
autoritatīvs;
# Nedaudz atŔķirÄ«ga konfigurÄcija iekÅ”Äjam apakÅ”tÄ«klam.
apakÅ”tÄ«kls 192.168.201.0 tÄ«kla maska āā255.255.255.0 {
diapazons 192.168.201.10 192.168.201.250;
opcija domÄna vÄrda serveri 192.168.201.254;
opcijas marÅ”rutÄtÄji 192.168.201.254;
opcijas apraides adrese 192.168.201.255;
noklusÄjuma nomas laiks 600;
maksimÄlais nomas laiks 7200;
}
11. RestartÄjiet un pÄrbaudiet pakalpojumu 67. portÄ
root@debian9:~# reboot
root@debian9:~# netstat -nlp
netstat žurnÄlsAktÄ«vi interneta savienojumi (tikai serveri)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Programmas nosaukums
tcp 0 0 0.0.0.0:22 0.0.0.0:* KLAUSIES 389/sshd
tcp 0 0 0.0.0.0:888 0.0.0.0:* KLAUSIES 310/3proxy
tcp6 0 0 :::22 :::* KLAUSIES 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 starpniekserveris
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
neapstrÄdÄts 0 0 0.0.0.0:1 0.0.0.0:* 393/dhcpd
12. Atliek tikai novirzÄ«t visus tcp pieprasÄ«jumus uz portu 888 un saglabÄt noteikumu 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. Lai paplaÅ”inÄtu kanÄla joslas platumu, varat vienlaikus izmantot vairÄkus starpniekserverus. KopÄ ir jÄbÅ«t 1000. Jauni savienojumi ar norÄdÄ«tajiem starpniekserveriem tiek izveidoti ar varbÅ«tÄ«bu 0.2, 0.2, 0.2, 0.2, 0,1, 0,1.
PiezÄ«me: ja mums ir tÄ«mekļa starpniekserveris, tad socks5 vietÄ jÄraksta connect, ja socks4, tad socks4 (socks4 NEATBALSTA PIESLÄGÅ ANAS/PAROLES ATÄ»AUJU!)
CaurspÄ«dÄ«ga starpniekservera Nr.2 āākonfigurÄcijas piemÄrsdÄmons
pidfile /home/joke/proxy/3proxy.pid
nserveris 8.8.8.8
nscache 65536
maxconn 500
taimauts 1 5 30 60 180 1800 16 60
log /home/joke/proxy/logs/3proxy.log D
logformÄts "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
pagriezt 3
flush
auth iponly
dnspr
Atļaut *
vecÄku 200 zeÄ·es5 IP_ADDRESS_EXTERNAL_PROXY#1 3128 testeris 1234
vecÄku 200 zeÄ·es5 IP_ADDRESS_EXTERNAL_PROXY#2 3128 testeris 1234
vecÄku 200 zeÄ·es5 IP_ADDRESS_EXTERNAL_PROXY#3 3128 testeris 1234
vecÄku 200 zeÄ·es5 IP_ADDRESS_EXTERNAL_PROXY#4 3128 testeris 1234
vecÄku 100 zeÄ·es5 IP_ADDRESS_EXTERNAL_PROXY#5 3128 testeris 1234
vecÄku 100 zeÄ·es5 IP_ADDRESS_EXTERNAL_PROXY#6 3128 testeris 1234
spraudnis /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 konfigurÄcijas iestatÄ«Å”ana un palaiÅ”ana
Å ajÄ konfigurÄcijÄ mÄs izmantosim parasto NAT mehÄnismu ar selektÄ«vu vai pilnÄ«bÄ caurspÄ«dÄ«gu atseviŔķu adreÅ”u vai apakÅ”tÄ«klu starpniekserveri. IekÅ”ÄjÄ tÄ«kla lietotÄji strÄdÄs ar noteiktiem pakalpojumiem/apakÅ”tÄ«kliem, pat neapzinoties, ka viÅi strÄdÄ, izmantojot starpniekserveri. Visi https savienojumi darbojas labi, sertifikÄti nav jÄÄ£enerÄ/aizstÄj.
Vispirms izlemsim, kurus apakÅ”tÄ«klus/pakalpojumus vÄlamies izmantot starpniekserveri. PieÅemsim, ka ÄrÄjie starpniekserveri atrodas tur, kur darbojas tÄds pakalpojums kÄ pandora.com. Tagad atliek noteikt tÄ apakÅ”tÄ«klus/adreses.
1. Ping
root@debian9:~# ping pandora.com
PING pandora.com (208.85.40.20) 56 (84) baiti datu.
2. Google ierakstiet BGP 208.85.40.20
Dosimies uz vietni
Var redzÄt, ka apakÅ”tÄ«kls, kuru meklÄju, ir AS40428 Pandora Media, Inc
Atver v4 prefiksus
Šeit ir nepiecieŔamie apakŔtīkli!
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. Lai samazinÄtu apakÅ”tÄ«klu skaitu, jÄveic apkopoÅ”ana. Dodieties uz vietni
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. Notīriet iptables noteikumus
root@debian9:~# iptables -F
root@debian9:~# iptables -X
root@debian9:~# iptables -t nat -F
root@debian9:~# iptables -t nat -X
IespÄjojiet pÄrsÅ«tÄ«Å”anas un NAT mehÄnismu
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
Lai nodroÅ”inÄtu, ka pÄrsÅ«tÄ«Å”ana pÄc atsÄknÄÅ”anas ir iespÄjota pastÄvÄ«gi, mainÄ«sim failu
root@debian9:~# nano /etc/sysctl.conf
Un noÅemiet komentÄru
net.ipv4.ip_forward = 1
Ctrl+X, lai saglabÄtu failu
5. MÄs iesaiÅojam pandora.com apakÅ”tÄ«klus starpniekserverÄ«
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. IevÄrosim noteikumus
root@debian9:~# iptables-save > /etc/iptables/rules.v4
CaurspÄ«dÄ«gÄ starpniekservera iestatÄ«Å”ana un palaiÅ”ana, izmantojot marÅ”rutÄtÄja konfigurÄciju
Å ajÄ konfigurÄcijÄ caurspÄ«dÄ«gais starpniekserveris var bÅ«t atseviŔķs dators vai virtuÄla maŔīna aiz mÄjas/uzÅÄmuma marÅ”rutÄtÄja. Pietiek reÄ£istrÄt statiskus marÅ”rutus marÅ”rutÄtÄjÄ vai ierÄ«cÄs, un viss apakÅ”tÄ«kls izmantos starpniekserveri bez nepiecieÅ”amÄ«bas veikt papildu iestatÄ«jumus.
SVARÄŖGS! Ir nepiecieÅ”ams, lai mÅ«su vÄrteja no marÅ”rutÄtÄja saÅemtu statisku IP vai arÄ« pati bÅ«tu konfigurÄta kÄ statiska.
1. KonfigurÄjiet statiskÄs vÄrtejas adresi (enp0s3 adapteris)
root@debian9:~# nano /etc/network/interfaces
/etc/network/interfaces failu# Å is fails apraksta tÄ«kla saskarnes pieejams jÅ«su sistÄmu
# AktivizÄts un kÄ tos. Lai iegÅ«tu vairÄk informÄcijas, skatiet saskarnes (5).
avots /etc/network/interfaces.d/*
# Atcilpas tīkla saskarne
auto lo
iface lo INET cilpas
# PrimÄrais tÄ«kla interfeiss
allow-hotplug enp0s3
iface enp0s3 inet statisks
adrese 192.168.23.2
netmask 255.255.255.0
vÄrti 192.168.23.254
# SekundÄrÄ tÄ«kla saskarne
allow-hotplug enp0s8
iface enp0s8 inet statisks
adrese 192.168.201.254
netmask 255.255.255.0
2. Atļaujiet ierÄ«cÄm no apakÅ”tÄ«kla 192.168.23.0/24 izmantot starpniekserveri.
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. IevÄrosim noteikumus
root@debian9:~# iptables-save > /etc/iptables/rules.v4
4. ReÄ£istrÄsim apakÅ”tÄ«klus marÅ”rutÄtÄjÄ
MarÅ”rutÄtÄja tÄ«klu saraksts199.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
Izmantotie materiÄli/resursi
1. 3proxy programmas oficiÄlÄ vietne
2. NorÄdÄ«jumi 3proxy instalÄÅ”anai no avota
3. 3 starpniekservera izstrÄdes filiÄle vietnÄ GitHub
Avots: www.habr.com