ฉันจะมั่นใจได้อย่างไรว่าปริมาณการรับส่งข้อมูล TCP ของ Mac ทั้งหมดผ่านพร็อกซี SOCKS5


13

ฉันมีพร็อกซี SOCKS พร้อมพอร์ต

ฉันจะทำให้ MAC ใช้งานได้อย่างไร ฉันจะเปลี่ยนการตั้งค่าใดภายใต้การตั้งค่าเครือข่าย

คำตอบ:


3

ทำไมการตั้งค่าระบบ -> เครือข่าย -> (เลือกเครือข่ายทางด้านซ้ายของหน้าต่างและเลือกขั้นสูงที่ด้านล่างขวา) -> พร็อกซี (แท็บด้านบน) ใช้งานได้สำหรับคุณ

ป้อนคำอธิบายรูปภาพที่นี่


9
ไม่สามารถใช้ได้กับทุกแอพ Skype, Chrome และอื่น ๆ ดูเหมือนจะข้ามการตั้งค่าเหล่านี้อย่างน้อยในวันที่ 10.10 ...
Ingwie Phoenix

สิ่งที่คุณพูดนั้นเป็นความจริง มันพูดถึงแม้ในความคิดเห็นอื่น ผู้เขียนบอกไว้ชัดเจนว่าพวกเขาต้องการความเรียบง่ายดังนั้นฉันจึงเริ่มต้นด้วยวิธีง่าย ๆ โดยถามว่าคำตอบที่ฉันโพสต์นั้นไม่ได้ผลสำหรับพวกเขา เห็นได้ชัดว่ามันใช้งานได้สำหรับพวกเขาเพราะพวกเขาเลือก ความปลอดภัยไม่ได้เกี่ยวกับคำตอบ 100% เสมอไป ส่วนใหญ่แล้วมันเกี่ยวกับการลดความเสี่ยง
Everett

1
เทอร์มินัลไม่สามารถนำการตั้งค่าพร็อกซีเครือข่ายถุงเท้า 5 มาใช้ได้ แต่แอพจะใช้ได้
E_Jovi

6

หากคุณสามารถตั้งค่าเซิร์ฟเวอร์ SSH ของคุณเองได้ฟรีsshuttleสามารถสร้างช่องทางรับส่งข้อมูล TCP ทั้งหมดผ่านการเชื่อมต่อทำให้ไฟร์วอลล์ทั้งหมดทำงานให้คุณได้

หากต้องการส่งต่อการรับส่งข้อมูล TCP และ DNS ทั้งหมดไปยังเซิร์ฟเวอร์ SSH ระยะไกลคำสั่งนั้นง่ายพอ:

sshuttle --dns -vr ssh_server 0/0

นอกจาก TCP และ DNS แล้ว sshuttle จะไม่ส่งต่อคำขออื่น ๆ เช่น UDP, ICMP, ping เป็นต้น

สำหรับข้อมูลเพิ่มเติมและตัวอย่างให้ดูบทความการใช้ Sshuttle ในการทำงานประจำวัน


ในขณะที่ผู้ถามไม่มีเซิร์ฟเวอร์ SSH ที่จะใช้เพื่อวัตถุประสงค์ แต่อย่างน้อยฉันขอขอบคุณสำหรับการเตือนฉันถึงเครื่องมือที่ยอดเยี่ยมและการทำงานที่นำมาใช้ ความเรียบง่ายในไวยากรณ์นั้นยอดเยี่ยมและความสามารถในการจัดการทั้ง iptables หรือ ipfw ในส่วนแบ็คเอนด์เป็นคุณสมบัติที่น่ายกย่องจากหลังคาบ้าน
0xDAFACADE

นี่ไม่ได้เปลี่ยนเส้นทางการรับส่งข้อมูล TCP ทั้งหมดตัวอย่างเช่นถ้าคุณมี VMWare ที่กำลังรันมันจะข้ามไป
Soheil

5

ในขณะที่การตั้งค่าการตั้งค่าพร็อกซีทั้งระบบเป็นการเริ่มต้นที่ดีคุณอาจต้องการใช้ iptables เพื่อให้แน่ใจว่าทราฟฟิกทั้งหมดจะผ่านพร็อกซี แอปพลิเคชั่นบางตัวไม่ใช้การตั้งค่าการกำหนดค่าทั้งระบบ (Firefox ในแอพพลิเคชั่น) ดังนั้นจึงจำเป็นที่คุณจะต้องปรับกฎของคุณเพื่อไม่ให้เชื่อมต่อโดยตรงและกำหนดเส้นทางการรับส่งข้อมูลผ่านพร็อกซี

แก้ไข: ในขณะที่ฉันใช้iptablesกฎเป็นการส่วนตัวเพื่อจัดการกับ "การรั่วไหล" ที่อาจเกิดขึ้นจาก VPN ของฉันฉันจริง ๆ แล้วผิดที่คิดว่า iptables สามารถทำงานกับพร็อกซีถุงเท้าโดยตรง คุณจะต้องมีอะไรบางอย่างเช่นtun2socksเพื่อสร้างอินเทอร์เฟซอุโมงค์เสมือน (เช่นการใช้งานของ vpn)

หลังจากนั้นคุณสามารถตั้งค่าสคริปต์ iptables คล้ายกับต่อไปนี้:

#!/bin/bash
if [[ $EUID -ne 0 ]]; then
    echo "This script must be run as root" 1>&2
    exit 1
fi

# name of primary network interface (before tunnel)
PRIMARY=eth0

# gateway ip address (before tunnel - adsl router ip address)
# automatically determine the ip from the default route
GATEWAY=`route -n | grep $PRIMARY | egrep "^0\.0\.0\.0" | tr -s " " | cut -d" " -f2`

# provided by tun2socks: interface name
TUNNEL=tun0

# If you'd like, putting the tun2socks command here is a good idea.  It may or may not be necessary to do so, but either way is more convenient than running the two commands separately.

# iptables rules - important!

LOCAL_NET=192.168.0.0/16
#LOCAL_NET=$GATEWAY

# Flush all previous filter rules, you might not want to include this line if you already have other rules setup
iptables -t filter --flush

iptables -t filter -X MYVPN
iptables -t filter -N MYVPN

# Add local routes to routing table
route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0
route add -host 23.21.163.237 dev eth0 gw 192.168.1.1

# Add ssh routes to routing table
ip route add table 128 to 192.168.1.0/24 dev eth0
ip route add table 128 default via 192.168.1.1

# Exceptions for local traffic & vpn server
iptables -t filter -A MYVPN -o lo -j RETURN
iptables -t filter -A MYVPN -o ${TUNNEL} -j RETURN
iptables -t filter -A MYVPN --dst 127.0.0.1 -j RETURN
iptables -t filter -A MYVPN --dst $LOCAL_NET -j RETURN
iptables -t filter -A MYVPN --dst ${SERVER} -j RETURN
iptables -t filter -A MYVPN --dst ${VPN_SERVER} -j RETURN

# Add extra local nets here as necessary

iptables -t filter -A MYVPN -j DROP

# MYVPN traffic leaving this host:
iptables -t filter -A OUTPUT -p tcp --syn -j MYVPN
iptables -t filter -A OUTPUT -p icmp -j MYVPN
iptables -t filter -A OUTPUT -p udp -j MYVPN

โดยปกติคุณจะต้องทำให้สคริปต์นี้สะท้อนถึงเครือข่ายเฉพาะของคุณ (เช่นหากคุณใช้บางอย่างเช่นซับเน็ต 192.168.0.0/24 ให้ปรับตามนั้น) นอกจากนี้ยังขึ้นอยู่กับสคริปต์ที่ฉันใช้กับ VPN อย่างแน่นหนาดังนั้นทุกคนกล่าวถึง MYVPN หรือ VPN - ในขณะที่คุณไม่ได้ใช้ VPN tun2socksทำงานอย่างมีประสิทธิภาพราวกับว่าคุณเป็นดังนั้นทุกอย่างควรทำงานเหมือนกัน

และขอขอบคุณเป็นพิเศษกับคำตอบนี้ที่ Unix.SE สำหรับการชี้แนะทิศทางที่ถูกต้องเพื่อตอบคำถามนี้

แก้ไขอีกครั้ง: ดังนั้นดูเหมือนว่า OS X จริง ๆ แล้วจะทำเช่นนี้กับipfwiptables (ขออภัยฉันส่วนใหญ่เป็นคนลินุกซ์และคิดว่า OS X มี iptables ให้ใช้งาน) มีการเทียบดังกล่าวว่าสคริปต์ที่สามารถนำมาปรับบางส่วนที่จะชี้ให้เห็นเป็นที่นี่ man ipfwควรกำหนดให้คุณตรงกับไวยากรณ์ ฉันจะปล่อยให้iptablesสคริปต์ต้นฉบับเป็นเทมเพลตเพื่อให้คุณสามารถเห็นสิ่งที่เกิดขึ้นในเชิงแนวคิด WaterRoofดูเหมือนจะช่วยให้การใช้ipfwงานง่ายขึ้น ส่วนหน้าอื่น ๆ อาจจะใช้ได้เช่นกัน


ฉันไม่ต้องการใช้ iptables เพราะมันซับซ้อนเกินไป Tun2socks ดูเหมือนว่าฉันต้องการ SSH และเซิร์ฟเวอร์ ฉันเพิ่งมี IP และพอร์ต ... ฉันจะใช้ IP และพอร์ตได้อย่างไร
อเล็กซ์

tun2socksไม่ต้องการ SSH และเซิร์ฟเวอร์ ตัวอย่างบนเว็บไซต์ของพวกเขาคือการใช้ SSH เพื่อสร้าง SOCKS proxy ตั้งแต่แรก หากคุณมีพร็อกซี SOCKS อยู่แล้วมันไม่จำเป็นเลย และใช่iptablesเป็นวิธีที่ผิดในส่วนของฉัน OS X ซึ่งใช้ BSD นั้นใช้ipfwแทนiptablesLinux kernel สำหรับเรื่องที่ซับซ้อนคุณอาจจะสามารถหาส่วนหน้าที่จะทำให้คุณใช้งานได้ง่ายขึ้น แต่ฉันไม่เคยมีประสบการณ์ในเรื่องนี้ มันมีความซับซ้อนในระดับต่ำ แต่ก็มีหลายอย่างที่เกี่ยวข้องกับสาเหตุที่ทำให้งานนี้มีความสามารถ
0xDAFACADE

ฉันได้เพิ่มส่วนหน้าให้คุณใช้กับคำตอบหากช่วยให้การนำทางipfwง่ายขึ้น
0xDAFACADE

0

มีโซลูชั่นจำนวนมาก ไม่มีใครที่ง่ายพอ ๆ กับการเปลี่ยนการตั้งค่าบางอย่าง: เหตุผลก็คือการเอาชนะเป้าหมายทั้งหมดของการทำพร็อกซี่ซึ่งเป็นเส้นทางของแอพพลิเคชั่นที่เฉพาะเจาะจงผ่านเส้นทางอื่น (สำหรับวัตถุประสงค์ในการซ่อนตัว คุณเข้าถึงเส้นทางท้องถิ่น (เร็วกว่าที่คาดคะเน)

บางคนต้องทิ้งเพราะความต้องการของคุณ แต่ให้ฉันพูดถึงพวกเขาเพื่อความสมบูรณ์: VPN, อุโมงค์ SSH, การใช้ pfctl (ตัวกรองแพ็คเก็ตและอินเตอร์เฟซการควบคุม NAT) นอกจากนี้ Tor ยังไม่ได้ออกแบบมาสำหรับการใช้งานที่คุณมีในใจช่วยให้คุณกำหนดเส้นทางการรับส่งข้อมูลทั้งหมดผ่านพร็อกซีของพวกเขา

แอปพลิเคชันทั้งหมดเหล่านี้ฟรีและต้องการความเฉลียวฉลาดที่สุด ในทางกลับกันมีแอปพลิเคชันแบบจ่ายค่าจ้างซึ่งงานส่วนใหญ่ทำโดยคนอื่น แต่มีราคา

Proxycap

ช่วยให้คุณสามารถเปลี่ยนเส้นทางการเชื่อมต่อเครือข่ายของคอมพิวเตอร์ผ่านพร็อกซีเซิร์ฟเวอร์ คุณสามารถบอก ProxyCap ว่าแอปพลิเคชันใดที่จะเชื่อมต่ออินเทอร์เน็ตผ่านพร็อกซีและภายใต้สถานการณ์ใด สิ่งนี้ทำผ่านส่วนติดต่อผู้ใช้ที่เป็นมิตรโดยไม่จำเป็นต้องกำหนดค่าไคลเอนต์อินเทอร์เน็ตใด ๆ ของคุณ

หรือมีProxifier สำหรับ Mac (ระวัง: รองรับเฉพาะ 10.8 เท่านั้น) ที่

อนุญาตให้แอปพลิเคชันเครือข่ายที่ไม่สนับสนุนการทำงานผ่านพร็อกซีเซิร์ฟเวอร์เพื่อดำเนินการผ่านพร็อกซีและเครือข่าย SOCKS หรือ HTTPS


0

ไปที่การตั้งค่า -> เครือข่ายดูว่ามีการล็อคหรือไม่คลิกที่มันและให้รหัสผ่านบัญชีผู้ดูแลระบบของคุณ จากนั้น Advanced-> Proxies-> Check on Socks Proxy ให้การตั้งค่าพร็อกซีของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.