คำถามนี้มีคำตอบอยู่ที่นี่แล้ว:
ฉันจะให้ rTorrent ใช้ VPN (OpenVPN) ได้อย่างไร แต่แอปพลิเคชั่นที่เหลือในเซิร์ฟเวอร์ของฉันจะใช้การเชื่อมต่ออินเทอร์เน็ตปกติ เซิร์ฟเวอร์รันเดเบียน
คำถามนี้มีคำตอบอยู่ที่นี่แล้ว:
ฉันจะให้ rTorrent ใช้ VPN (OpenVPN) ได้อย่างไร แต่แอปพลิเคชั่นที่เหลือในเซิร์ฟเวอร์ของฉันจะใช้การเชื่อมต่ออินเทอร์เน็ตปกติ เซิร์ฟเวอร์รันเดเบียน
คำตอบ:
ผูกซ็อกเก็ตการฟังและการเชื่อมต่อขาออกไปยังที่อยู่เครือข่ายอินเทอร์เฟซนี้
rtorrent -b a.b.c.d
บล็อกพอร์ตทั้งหมดยกเว้นช่วงพอร์ตจาก 49164 ถึง 49164 (ช่วงพอร์ตเริ่มต้น)
iptables -A INPUT -i "Interface (ex. tun1)" -j DROP
iptables -A OUTPUT -i "Interface (ex. tun1)" -j DROP
iptables -A FORWARD -i "Interface (ex. tun1)" -j DROP
iptables -A INPUT -p tcp --sport 49164:49164 --dport 49164:49164 -i "Interface (ex. tun1)" -j ACCEPT
iptables -A INPUT -p udp --sport 49164:49164 --dport 49164:49164 -i "Interface (ex. tun1)" -j ACCEPT
iptables -A OUTPUT -p tcp --sport 49164:49164 --dport 49164:49164 -i "Interface (ex. tun1)" -j ACCEPT
iptables -A OUTPUT -p udp --sport 49164:49164 --dport 49164:49164 -i "Interface (ex. tun1)" -j ACCEPT
หรือ
iptables -A INPUT -i "Interface (ex. tun1)" -j ACCEPT
iptables -A OUTPUT -i "Interface (ex. tun1)" -j DROP
iptables -A FORWARD -i "Interface (ex. tun1)" -j DROP
iptables -A OUTPUT -p tcp --sport 49164:49164 --dport 49164:49164 -i "Interface (ex. tun1)" -j ACCEPT
iptables -A OUTPUT -p udp --sport 49164:49164 --dport 49164:49164 -i "Interface (ex. tun1)" -j ACCEPT
หรือสำหรับผู้ใช้เฉพาะ
iptables -A INPUT -i "Interface (ex. tun1)" -j ACCEPT
iptables -A OUTPUT -i "Interface (ex. tun1)" -j DROP
iptables -A FORWARD -i "Interface (ex. tun1)" -j DROP
iptables -A OUTPUT -o "Interface (ex. tun1)" -m owner --uid-owner "USER UID (ex. 2021) or USER NAME (ex. ithenrik)" -j REJECT
http://libtorrent.rakshasa.no/rtorrent/rtorrent.1.html
https://wiki.archlinux.org/index.php/RTorrent#Port_configuration
-I INPUT -p udp --sport 80 --dport 80 -i "Interface" -j ACCEPT // -I OUTPUT -p tcp --sport 80 --dport 80 -i "Interface" -j ACCEPT