ืืืืืจ ืื ืืจืฆืื ื ืืืฉืืฃ ืืช ืืืคืฉืจืืืืช ืฉื ืคืจืืงืกื ืฉืงืืฃ, ืืืืคืฉืจ ืื ืืืคื ืืช ืืช ืืชืขืืืจื ืืืื ืื ืืืงื ืืจื ืฉืจืชื ืคืจืืงืกื ืืืฆืื ืืื ืืื ืชืฉืืืช ืื ืฉื ืืงืืืืช.
ืืฉืืชืืืชื ืืคืชืืจ ืืขืื ืื, ืขืืืชื ืืคื ื ืืขืืืื ืฉืืืืฉืื ืฉืื ืืืืชื ืืขืื ืืืช ืืฉืืขืืชืืช โ ืคืจืืืืงืื ื-HTTPS. ืืืืื ืืืืืื, ืื ืืื ืืขืืืช ืืืืืืืช ืขื ืคืจืืงืกื HTTP ืฉืงืืฃ, ืืื ืขื ืคืจืืงืกื HTTPS, ืืคืืคื ืื ืืืืืืื ืขื ืืคืจืขื ืืคืจืืืืงืื ืืฉื ื ืืืจ ืืืืฉืจ.
ืืืืจืืืช ืื ืคืืฆืืช ืืฉืจืช ื-proxy Squid, ืื ืืคืืื ืืฆืืขืื ืืืฆืืจ ืืืฉืืจ ืืฉืื ืืืืชืงืื ืืืชื ืขื ืืงืืืืช, ืืื ืฉืืืช ืืืืืืช ืืื ืืคืืืช, ืื ืจืฆืืื ืืืช ืื ืจืืืช ืืื ืืชืงืคืช MITM. ืื ื ืืืืข ืฉSquid ืืืจ ืืืื ืืขืฉืืช ืืฉืื ืืืื, ืืื ืืืืจ ืื ืขืืกืง ืืฉืืืช ืขืืืื ืืืืืช ืืืืฆืขืืช 3proxy ื-3APA3A ืืืืืื.
ืืืืฉื, ื ืืื ืืคืืจืื ืืช ืชืืืื ืื ืืืช 3proxy ืืืงืืจ, ืชืฆืืจืชื, ืคืจืืงืกื ืืื ืืกืืงืืืื ืืืืฆืขืืช NAT, ืืคืฆืช ืขืจืืฆืื ืืืกืคืจ ืฉืจืชื ืคืจืืงืกื ืืืฆืื ืืื ืืื ืฉืืืืฉ ืื ืชื ืืืืกืืืืื ืกืืืืื. ืื ื ืืฉืชืืฉืื ืืืืืื 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 ืืกืืืช ืจืฉืช 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 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 (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 prefixlen 128 scopeid 0x10 loop txqueuelen 1 (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
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
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
ืืืืง ืืฉืชืืฉืื: 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
ืืืช ืืืง
ืกืืืง
ืืืคืฉืจ ืืืืง
ืืจืืืื -p3128
proxy -p8080
ืืื ืืฉืืืจ, ืืงืฉ Ctrl + Z
4.14. ืืืื ื ืืฆืืจ ืงืืืฅ pid ืืื ืฉืื ืืืื ืฉืืืืืช ืืืืื ืืืชืืื.
root@debian9:/home/joke/proxy# cat > 3proxy.pid
ืืื ืืฉืืืจ, ืืงืฉ Ctrl + Z
4.15. ืืืื ืืืคืขืื ืืช ืฉืจืช ื-proxy!
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:* 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, Proxy Socks5 ืืงืฉืื ืืืฆืืื 3128.
4.17. ืืื ืืืคืขืื ืืืืืืืืช ืืช ืฉืืจืืช ื-proxy ืืืืจ ืืชืืื ืืืืฉ, ืขืืื ืืืืกืืฃ ืืืชื ื-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. ืืื ื ืืชืื ืืช ืืืขืจืืช ืื ื ืกื ืืืชืืืจ ืืจื ืืืคืืคื ื-proxy. ืืื ืืืืืง, ืื ื ืืฉืชืืฉืื ืืืคืืคื Firefox (ืขืืืจ ืคืจืืงืกื ืืื ืืจื ื) ืืืชืืกืฃ FoxyProxy ืขืืืจ socks5 ืขื ืืืืืช.
root@debian9:/home/joke/proxy# reboot
4.19. ืืืืจ ืืืืงืช ืคืขืืืช ื-proxy ืืืืจ ืืชืืื ืืืืฉ, ืชืืื ืืืฆืื ืืช ืืืืื ืื. ืื ืืฉืืื ืืช ืืืืจืช ืฉืจืช ื-proxy.
ืืืื 3 ืคืจืืงืกื1542573996.018 PROXY.8080 00000 ืืืืง 192.168.23.10:50915 217.12.15.54:443 1193 6939 0 CONNECT_ads.yahoo.com:443_HTTP
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
ืืืืืืืื lo
iface lo inet loopback
# ืืืฉืง ืืจืฉืช ืืจืืฉื
ืืคืฉืจ-hotplug enp0s3
iface enp0s3 inet dhcp
# ืืืฉืง ืืจืฉืช ืืืฉื ื
ืืคืฉืจ-hotplug enp0s8
iface enp0s8 inet ืกืืื
ืืชืืืช 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
ืืืื ifconfigenp0s3: 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 ืื ืืช 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 ืืกืืืช ืจืฉืช 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 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 prefixlen 128 scopeid 0x10 loop txqueuelen 1 (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 ืืจืืืื5 IP_ADDRESS ืฉื EXTERNAL_PROXY 3128 ืืืืง 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. ืืื ื ืจืื ืืื ื-proxy ืฉืื ื ืืืืื ืขืืฉืื
root@debian9:~# netstat -nlp
ืืืื netstatืืืืืจื ืืื ืืจื ื ืคืขืืืื (ืฉืจืชืื ืืืื)
Proto Recv-Q Send-Q ืืชืืืช ืืงืืืืช ืืชืืืช ืืจื ืืืื ื PID/ืฉื ืชืืื ืืช
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. ืืขืช ื-proxy ืืืื ืืงืื ืื ืืืืืจื TCP ืืืฆืืื 888, DNS ืืืฆืืื 53, ืื ืฉื ืืชื ืืืื ืืืคื ืืช ืืืชื ื-proxy 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-update-style none;
# ืื ืฉืจืช DHCP ืื ืืื ืฉืจืช ื-DHCP ืืจืฉืื ืขืืืจ ืืืงืืื
# ืจืฉืช, ืืื ืืื ืืกืืืืชืืช ืฆืจืืื ืืืืืช ืืื ืืขืจืืช.
ืืึผืกืึธื;
# ืชืฆืืจื ืืขื ืฉืื ื ืขืืืจ ืชืช ืจืฉืช ืคื ืืืืช.
ืจืฉืช ืืฉื ื 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:* 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 ืืฉืจืชื ื-proxy ืฉืฆืืื ื.
ืืขืจื: ืื ืืฉ ืื ื ืคืจืืงืกื ืืื ืืจื ื, ืื ืืืงืื socks5 ืื ืื ื ืฆืจืืืื ืืืชืื connect, if 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 ืืจืืืื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
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) ืืชืื ืฉื ื ืชืื ืื.
2. ืืงืื BGP 208.85.40.20 ื-Google
ืืื ื ืื ืืืชืจ
ื ืืชื ืืจืืืช ืฉืจืฉืช ืืืฉื ื ืฉืื ื ืืืคืฉ ืืื AS40428 Pandora Media, Inc
ืคืชืืืช ืงืืืืืืช v4
ืืืื ืจืฉืชืืช ืืืฉื ื ืื ืืจืฉืืช!
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. ืืื ืืฆืืฆื ืืช ืืกืคืจ ืจืฉืชืืช ืืืฉื ื, ืขืืื ืืืฆืข ืฆืืืจื. ืื ืกื ืืืชืจ
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
ืืืืจื ืืืจืฆื ืฉื Proxy Transparent ืืืืฆืขืืช ืชืฆืืจืช ืื ืชื
ืืชืฆืืจื ืื, ืฉืจืช ื-proxy ืืฉืงืืฃ ืืืื ืืืืืช ืืืฉื ื ืคืจื ืื ืืืื ื ืืืจืืืืืืช ืืืืืจื ื ืชื ืืืชื/ืืจืืื ื. ืืกืคืืง ืืจืฉืื ืืกืืืืื ืกืืืืื ืื ืชื ืื ืืืืฉืืจืื ืืื ืืืฉื ื ืชืฉืชืืฉ ืืคืจืืงืกื ืืื ืฆืืจื ืืืืืจืืช ื ืืกืคืืช.
ืึธืฉืืึผื! ืืฉ ืฆืืจื ืฉืืฉืขืจ ืฉืื ื ืืงืื IP ืกืืื ืืื ืชื, ืื ืฉืืื ืืืืืจ ืืืืืช ืกืืื ืืขืฆืื.
1. ืืืืจ ืืชืืืช ืฉืขืจ ืกืืืืช (ืืชืื enp0s3)
root@debian9:~# nano /etc/network/interfaces
ืงืืืฅ /etc/network/interfaces# ืงืืืฅ ืื ืืชืืจ ืืช ืืืฉืงื ืืจืฉืช ืืืื ืื ืืืขืจืืช
# ืืืคืขื ืืืื ืืืืื. ืืงืืืช ืืืืข ื ืืกืฃ, ืจืื ืืืฉืงืื (5).
ืืงืืจ /etc/network/interfaces.d/*
# ืืืฉืง ืจืฉืช loopback
ืืืืืืืื lo
iface lo inet loopback
# ืืืฉืง ืืจืฉืช ืืจืืฉื
ืืคืฉืจ-hotplug enp0s3
iface enp0s3 inet ืกืืื
ืืชืืืช 192.168.23.2
ืืกืืืช ืจืฉืช 255.255.255.0
ืฉืขืจ 192.168.23.254
# ืืืฉืง ืืจืฉืช ืืืฉื ื
ืืคืฉืจ-hotplug enp0s8
iface enp0s8 inet ืกืืื
ืืชืืืช 192.168.201.254
ืืกืืืช ืจืฉืช 255.255.255.0
2. ืืคืฉืจ ืืืืฉืืจืื ืืจืฉืช ืืืฉื ื 192.168.23.0/24 ืืืฉืชืืฉ ืืฉืจืช proxy
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
2. ืืืจืืืช ืืืชืงื ืช 3proxy ืืืงืืจ
3. ืกื ืืฃ ืคืืชืื 3proxy ื-GitHub
ืืงืืจ: www.habr.com