3proxy සහ iptables/netfilter භාවිතයෙන් විනිවිද පෙනෙන ප්‍රොක්සි කිරීමේ මූලික කරුණු හෝ "සියල්ල ප්‍රොක්සියක් හරහා දමන්නේ" කෙසේද?

මෙම ලිපියෙන් මම පාරදෘශ්‍ය ප්‍රොක්සිකරණයේ හැකියාවන් හෙළිදරව් කිරීමට කැමැත්තෙමි, එමඟින් සේවාදායකයින්ගේ අවධානයට ලක් නොවන බාහිර ප්‍රොක්සි සේවාදායකයන් හරහා ගමනාගමනයේ සම්පූර්ණ හෝ කොටසක් හරවා යැවීමට ඔබට ඉඩ සලසයි.

මම මෙම ගැටළුව විසඳීමට පටන් ගත් විට, එය ක්‍රියාත්මක කිරීමේදී එක් වැදගත් ගැටළුවක් ඇති බව මට මුහුණ දීමට සිදු විය - HTTPS ප්‍රොටෝකෝලය. හොඳ පැරණි දිනවල, විනිවිද පෙනෙන HTTP ප්‍රොක්සි කිරීම සමඟ විශේෂ ගැටළු නොතිබුණි, නමුත් HTTPS ප්‍රොක්සි කිරීම සමඟ, බ්‍රව්සර් ප්‍රොටෝකෝලයට බාධා කිරීම් වාර්තා කරන අතර සතුට අවසන් වන්නේ එතැනිනි.

Squid proxy සේවාදායකය සඳහා වන පොදු උපදෙස් වල, ඔවුන් ඔබේම සහතිකයක් ජනනය කර සේවාදායකයින් මත ස්ථාපනය කිරීමට පවා යෝජනා කරයි, එය අවම වශයෙන් සම්පූර්ණ විකාරයක්, අතාර්කික සහ MITM ප්‍රහාරයක් මෙන් පෙනේ. දැල්ලන්ට දැනටමත් ඒ හා සමාන දෙයක් කළ හැකි බව මම දනිමි, නමුත් මෙම ලිපිය ගෞරවනීය 3APA3A වෙතින් 3proxy භාවිතා කරන ඔප්පු කරන ලද සහ ක්‍රියාකාරී ක්‍රමයක් ගැන ය.

ඊළඟට, අපි මූලාශ්‍රයෙන් 3proxy ගොඩනැගීමේ ක්‍රියාවලිය, එහි වින්‍යාසය, NAT භාවිතයෙන් සම්පූර්ණ සහ තෝරාගත් ප්‍රොක්සි කිරීම, බාහිර ප්‍රොක්සි සේවාදායකයන් කිහිපයකට නාලිකා බෙදා හැරීම මෙන්ම රවුටරයක් ​​සහ ස්ථිතික මාර්ග භාවිතය පිළිබඳව විස්තරාත්මකව බලමු. අපි මෙහෙයුම් පද්ධතිය ලෙස භාවිතා කරන්නේ Debian 9 x64. ආරම්භය!

3proxy ස්ථාපනය කිරීම සහ සාමාන්‍ය ප්‍රොක්සි සේවාදායකයක් ක්‍රියාත්මක කිරීම

1. ifconfig ස්ථාපනය කරන්න (net-tools පැකේජයෙන්)
apt-get install net-tools
2. Midnight Commander ස්ථාපනය කරන්න
apt-get install mc
3. අපට දැන් අතුරුමුහුණත් 2 ක් ඇත:
enp0s3 - බාහිර, අන්තර්ජාලය දෙස බලයි
enp0s8 - අභ්යන්තර, දේශීය ජාලය දෙස බැලිය යුතුය
අනෙකුත් ඩේබියන් පාදක බෙදාහැරීම් වල අතුරු මුහුණත් සාමාන්‍යයෙන් eth0 සහ eth1 ලෙස හැඳින්වේ.
ifconfig -a

අතුරු මුහුණත්enp0s3: flags=4163 mtu 1500
inet 192.168.23.11 netmask 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 (ඊතර්නෙට්)
RX පැකට් 6412 බයිට් 8676619 (8.2 MiB)
RX දෝෂ 0 පහත වැටී 0 ඉක්මවා 0 රාමු 0
TX පැකට් 1726 බයිට් 289128 (282.3 KiB)
TX දෝෂ 0 පහත වැටී 0 ඉක්මවා 0 වාහක 0 ගැටීම් 0

enp0s8: flags=4098 mtu 1500
ether 08:00:27:79:a7:e3 txqueuelen 1000 (ඊතර්නෙට්)
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 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1 (Local Loopback)
RX පැකට් 0 බයිට් 0 (0.0 B)
RX දෝෂ 0 පහත වැටී 0 ඉක්මවා 0 රාමු 0
TX පැකට් 0 බයිට් 0 (0.0 B)
TX දෝෂ 0 පහත වැටී 0 ඉක්මවා 0 වාහක 0 ගැටීම් 0

enp0s8 අතුරුමුහුණත දැනට භාවිතා නොවේ, අපට Proxy NAT හෝ NAT වින්‍යාසය භාවිතා කිරීමට අවශ්‍ය වූ විට අපි එය සක්‍රීය කරන්නෙමු. එවිට එය ස්ථිතික IP එකක් පැවරීම තාර්කික වනු ඇත.

4. අපි 3proxy ස්ථාපනය ආරම්භ කරමු

4.1 මූලාශ්‍රවලින් 3proxy සම්පාදනය කිරීම සඳහා මූලික පැකේජ ස්ථාපනය කිරීම

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

මැක්ලොග්සාදන්න[2]: නාමාවලියෙන් පිටවීම '/opt/proxy/3proxy-0.8.12/src/plugins/TransparentPlugin'
සාදන්න[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

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

4.11. පරිශීලකයාගේ මුල් නාමාවලියෙහි වින්‍යාස ගොනු සහ ලොග් සඳහා ෆෝල්ඩරයක් සාදා ගනිමු

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

4.12. config එක තිබිය යුතු බහලුම වෙත යන්න

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
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
කරකවන්න 3
auth ශක්තිමත්
දෝර
පරීක්ෂකයට ඉඩ දෙන්න
මේස් -p3128
proxy -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. අපි බලමු server එක ports වල අහනවද කියලා

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/3proxy සවන් දෙන්න
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/3proxy සවන් දෙන්න
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. නැවත පණගැන්වීමෙන් පසු ප්‍රොක්සි සේවාව ස්වයංක්‍රීයව ආරම්භ කිරීමට, ඔබ එය ක්‍රෝන් වෙත එක් කළ යුතුය.

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

පේළියක් එකතු කරන්න

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

අපි Enter ඔබන්න, මන්ද ක්‍රෝන් පේළියේ අක්ෂරයේ අවසානය දැකිය යුතු අතර ගොනුව සුරකින්න.

නව crontab එකක් ස්ථාපනය කිරීම පිළිබඳ පණිවිඩයක් තිබිය යුතුය.

crontab: නව crontab ස්ථාපනය කිරීම

4.18. අපි පද්ධතිය නැවත ආරම්භ කර බ්‍රව්සරය හරහා ප්‍රොක්සි වෙත සම්බන්ධ වීමට උත්සාහ කරමු. පරීක්ෂා කිරීම සඳහා, අපි ෆයර්ෆොක්ස් බ්‍රවුසරය (වෙබ් ප්‍රොක්සියක් සඳහා) සහ සත්‍යාපනය සහිත 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:P/443HTT
1542574289.634 SOCK5.3128 00000 පරීක්ෂක 192.168.23.10:51193 54.192.13.69:443 0 0 0 CONNECT_normandy.cdn.mozilla.net:443

විනිවිද පෙනෙන ප්‍රොක්සි NAT වින්‍යාසය සැකසීම සහ ක්‍රියාත්මක කිරීම

මෙම වින්‍යාසය තුළ, අභ්‍යන්තර ජාලයේ ඇති සියලුම උපාංග දුරස්ථ ප්‍රොක්සි සේවාදායකයක් හරහා අන්තර්ජාලයේ විනිවිද පෙනෙන ලෙස ක්‍රියා කරයි. නියත වශයෙන්ම සියලුම TCP සම්බන්ධතා එකකට හෝ වැඩි ගණනකට හරවා යවනු ලැබේ (ඇත්ත වශයෙන්ම නාලිකා පළල පුළුල් කරයි, වින්‍යාස කිරීමේ උදාහරණ අංක 2!) ප්‍රොක්සි සේවාදායකයන්. DNS සේවාව 3proxy (dnspr) හැකියාවන් භාවිතා කරනු ඇත. අප තවමත් ඉදිරි යාන්ත්‍රණය භාවිතා නොකරන බැවින් UDP පිටතට "යන්නේ නැත" (ලිනක්ස් කර්නලයේ පෙරනිමියෙන් අක්‍රීය කර ඇත).

1. enp0s8 අතුරුමුහුණත සක්‍රීය කිරීමට කාලයයි

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

/etc/network/interfaces ගොනුව# මෙම ගොනුව ඔබගේ පද්ධතියේ පවතින ජාල අතුරුමුහුණත් විස්තර කරයි
# සහ ඒවා සක්‍රිය කරන්නේ කෙසේද. වැඩි විස්තර සඳහා, අතුරුමුහුණත් (5) බලන්න.

මූලාශ්රය /etc/network/interfaces.d/*

# loopback ජාල අතුරු මුහුණත
එය කාර් කරන්න
iface lo inet loopback

# මූලික ජාල අතුරු මුහුණත
අවසර-hotplug enp0s3
iface enp0s3 inet dhcp

# ද්විතියික ජාල අතුරු මුහුණත
අවසර-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: flags=4163 mtu 1500
inet 192.168.23.11 netmask 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 (ඊතර්නෙට්)
RX පැකට් 61 බයිට් 7873 (7.6 KiB)
RX දෝෂ 0 පහත වැටී 0 ඉක්මවා 0 රාමු 0
TX පැකට් 65 බයිට් 10917 (10.6 KiB)
TX දෝෂ 0 පහත වැටී 0 ඉක්මවා 0 වාහක 0 ගැටීම් 0

enp0s8: flags=4163 mtu 1500
inet 192.168.201.254 netmask 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 (ඊතර්නෙට්)
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 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1 (Local Loopback)
RX පැකට් 0 බයිට් 0 (0.0 B)
RX දෝෂ 0 පහත වැටී 0 ඉක්මවා 0 රාමු 0
TX පැකට් 0 බයිට් 0 (0.0 B)
TX දෝෂ 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
කල් ඉකුත්වීම් 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
ඉඩ දෙන්න *
මාපිය මේස් 1000 IP_ADDRESS OF EXTERNAL_PROXY 5 පරීක්ෂක 3128
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 ලොගයක්‍රියාකාරී අන්තර්ජාල සම්බන්ධතා (සේවාදායක පමණි)
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/3proxy සවන් දෙන්න
tcp6 0 0 :::22 :::* සවන් දෙන්න 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. දැන් ප්‍රොක්සිය 888 තොටේ ඕනෑම TCP සම්බන්ධතා පිළිගැනීමට සූදානම්, 53 වරායේ DNS, එවිට ඒවා දුරස්ථ socks5 ප්‍රොක්සි සහ DNS Google 8.8.8.8 වෙත හරවා යැවිය හැක. අප කළ යුත්තේ ලිපින නිකුත් කිරීම සඳහා netfilter (iptables) සහ DHCP රීති සැකසීමයි.

8. iptables-peristent සහ 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";
විකල්පය domain-name-servers ns1.example.org, ns2.example.org;

පෙරනිමි-කල්බදු කාලය 600;
උපරිම කල්බදු කාලය 7200;

ddns-update-style none;

# මෙම DHCP සේවාදායකය දේශීය සඳහා නිල DHCP සේවාදායකය නම්
# ජාලය, අධිකාරී විධානය අදහස් නොකළ යුතුය.

බලාධිකාරී;

# අභ්‍යන්තර උපජාලයක් සඳහා තරමක් වෙනස් වින්‍යාසයක්.
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 ලොගයක්‍රියාකාරී අන්තර්ජාල සම්බන්ධතා (සේවාදායක පමණි)
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/3proxy සවන් දෙන්න
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/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
අමු 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 සම්භාවිතාවක් සහිතව නව සම්බන්ධතා ස්ථාපිත කර ඇත.

සටහන: අපට වෙබ් ප්‍රොක්සියක් තිබේ නම්, අපි socks5 වෙනුවට සම්බන්ධ කිරීම ලිවිය යුතුය, socks4 නම්, socks4 (socks4 ලොගින්/මුරපද අවසරය සඳහා සහය නොදක්වයි!)

විනිවිද පෙනෙන ප්‍රොක්සි සේවාදායකය අංක 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
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
කරකවන්න 3
දෝර
auth iponly
dnspr
ඉඩ දෙන්න *

මාපිය මේස් 200 IP_ADDRESS_EXTERNAL_PROXY#5 1 පරීක්ෂක 3128
මාපිය මේස් 200 IP_ADDRESS_EXTERNAL_PROXY#5 2 පරීක්ෂක 3128
මාපිය මේස් 200 IP_ADDRESS_EXTERNAL_PROXY#5 3 පරීක්ෂක 3128
මාපිය මේස් 200 IP_ADDRESS_EXTERNAL_PROXY#5 4 පරීක්ෂක 3128
මාපිය මේස් 100 IP_ADDRESS_EXTERNAL_PROXY#5 5 පරීක්ෂක 3128
මාපිය මේස් 100 IP_ADDRESS_EXTERNAL_PROXY#5 6 පරීක්ෂක 3128

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 + විනිවිද පෙනෙන ප්‍රොක්සි වින්‍යාසය සැකසීම සහ ධාවනය කිරීම

මෙම වින්‍යාසය තුළ, අපි තනි ලිපින හෝ උපජාල වරණීය හෝ පූර්ණ විනිවිද පෙනෙන ප්‍රොක්සි කිරීම සමඟ සුපුරුදු NAT යාන්ත්‍රණය භාවිතා කරන්නෙමු. අභ්‍යන්තර ජාල භාවිතා කරන්නන් තමන් ප්‍රොක්සියක් හරහා ක්‍රියා කරන බව නොදැන ඇතැම් සේවා/උපජාල සමඟ වැඩ කරනු ඇත. සියලුම https සම්බන්ධතා හොඳින් ක්‍රියා කරයි, සහතික උත්පාදනය/ප්‍රතිස්ථාපනය කිරීම අවශ්‍ය නොවේ.

පළමුව, අපට ප්‍රොක්සි කිරීමට අවශ්‍ය උපජාල/සේවා මොනවාදැයි තීරණය කරමු. pandora.com වැනි සේවාවක් ක්‍රියාත්මක වන ස්ථානයේ බාහිර ප්‍රොක්සි පිහිටා ඇතැයි සිතමු. දැන් එහි උපජාල/ලිපින තීරණය කිරීමට ඉතිරිව ඇත.

1. පිං

root@debian9:~# ping pandora.com
PING pandora.com (208.85.40.20) දත්ත බයිට් 56(84).

2. BGP 208.85.40.20 Google වෙත ටයිප් කරන්න

අපි සයිට් එකට යමු 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#_උපසර්ග

මෙන්න අවශ්‍ය උපජාල!

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/*

# loopback ජාල අතුරු මුහුණත
එය කාර් කරන්න
iface lo inet loopback

# මූලික ජාල අතුරු මුහුණත
අවසර-hotplug enp0s3
iface enp0s3 inet ස්ථිතික
192.168.23.2 ලිපිනය
Netmask 255.255.255.0
ද්වාරය 192.168.23.254

# ද්විතියික ජාල අතුරු මුහුණත
අවසර-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. මූලාශ්‍රයෙන් 3proxy ස්ථාපනය කිරීම සඳහා උපදෙස් www.ekzorchik.ru/2015/02/how-to-take-your-socks-proxy

3. GitHub හි 3ප්‍රොක්සි සංවර්ධන ශාඛාව github.com/z3APA3A/3proxy/issues/274

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න