มีวิธีการตั้งค่าระบบเครือข่ายพร็อกซี่ทั้งเครือข่ายหรือไม่?


18

ถ้าฉันต้องการให้แอปพลิเคชั่น GNOME (เช่นเดียวกับ Firefox และ Chrome) เข้าถึงเครือข่ายผ่านทางพร็อกซีฉันต้องใช้gnome-network-properties(GUI ที่ดีและเรียบง่ายที่ต้องพูด) สำหรับแอพอื่น ๆ (เช่น APT, Transmission, XChat) ฉันต้องใช้วิธีเฉพาะในการทำมัน

มีวิธีหลีกเลี่ยงสิ่งนี้สิ่งที่ฉันสามารถเปิดและปิดเมื่ออยู่ในเครือข่ายที่ต้องใช้พร็อกซี่ (ชื่อโฮสต์: พอร์ต)?


1
ฉันคิดว่าhttp_proxyตัวแปรคือสิ่งที่คุณกำลังมองหา ดูในการสนับสนุนพร็อกซีอย่างไร
sakisk

คำตอบ:


11

ฉันคิดว่าซอฟต์แวร์ linux / unix ที่ใช้เครือข่ายจะให้เกียรติhttp_proxyและftp_proxyตัวแปรสภาพแวดล้อม ขึ้นอยู่กับการตั้งค่าการกระจายของคุณ/etc/environmentจะมีอยู่และอ่านโดยค่าเริ่มต้นโดยเชลล์ล็อกอิน

คุณสามารถเพิ่มบรรทัดว่า

http_proxy=123.45.67.89:1011

ใน/etc/environmentพอเพียง แต่การเปลี่ยนแปลงในไฟล์นั้นจะถือเฉพาะในครั้งต่อไปที่คุณเริ่มกระบวนการเชลล์ - และเฉพาะในกระบวนการเชลล์นั้น ฉันไม่คิดว่าคุณสามารถแก้ไขตัวแปรโกลบอลในเชลล์อื่นที่ไม่ใช่เชลล์ปัจจุบันของคุณได้


1
... ด้วยข้อยกเว้นที่น่าทึ่งของ Firefox และ Thunderbird askubuntu.com/a/23123
akraf - Reinstate Monica

และมันก็ปรากฏขึ้นnode เช่นกัน
Brad Parks

ใช่และโหลดเชลล์ในคำอื่น ๆ หมายถึงการออกจากระบบจากนั้นเข้าสู่ระบบอีกครั้งสำหรับเปลือกกราฟิก
Himanshu Shekhar

6

ฉันยอมรับว่าวิธีที่ดีที่สุดในการใช้พร็อกซีเซิร์ฟเวอร์คือตัวแปรสภาพแวดล้อมhttp_proxyเนื่องจากคำตอบอื่น ๆ ได้ชี้ให้เห็น น่าเสียดายที่ไม่ใช่ทุกแอปพลิเคชันที่ให้เกียรติตัวแปรสภาพแวดล้อม http_proxy ซึ่งเป็นสาเหตุที่ฉันยังคงใช้tsocksสำหรับบางโปรแกรมเพื่อใช้ LD_PRELOAD เพื่อบังคับให้การเชื่อมต่อเครือข่ายผ่านพร็อกซี SOCKS


3

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

(ฉันยังพบredsocksผ่านโพสต์นี้ดูเหมือนจะไม่หรูหราเท่าการใช้ส่วนต่อประสาน TUN กับฉัน - เช่นมันไม่ได้จัดการ UDP เลยสำหรับผู้เริ่ม)


3

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

PS: ฉันเขียนและบำรุงรักษาเครื่องมือนั้น


2

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

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

หากคุณมีแอปพลิเคชันที่ไม่สนับสนุนพร็อกซีคุณสามารถใช้สิ่งต่าง ๆ เช่นsocksifyเพื่อตัดการเชื่อมต่อเครือข่าย


เพื่อให้คุณได้พยายามนี้และล้มเหลว?
tshepang

0

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


0

สิ่งนี้ใช้ได้กับฉัน
vi /etc/environment:

http_proxy="http://username:password@proxysrv:8080/"
https_proxy="https://username:password@proxysrv:8080/"
ftp_proxy="ftp://username:password@proxysrv:8080/"
no_proxy=".mylan.local,.domain1.com,host1,host2"

ยัง
vi /etc/yum.conf:

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