9/20/2555

Proxy คืออะไร ???

proxy ถ้าแปลตรงๆ ตัวบริการแทน หรือเครื่องบริการแทน
เอาแบเข้าใจหน่อย คือเครื่องคอมพิวเตอร์ที่ทำหน้าที่ให้บริการต่างๆ แทนเครื่องเซิร์ฟเวอร์จริงๆที่ตั้งอยู่ในอินเตอร์เน็ ต(เช่น web



 

Proxy ก็เหมือนบ่อเก็บข้อมูลตรงกลางนะครับ เวลาใครจะไป load อะไรจาก internet
มันก็จะ load มาที่ proxy ก่อน แล้วเราก็จะไป load มาจาก proxy อีกที
มันจะมีประโยชน์ตรงที่ว่า ถ้าคนที่ต่อ internet ในที่เดียวกันใช้ proxy เดียวกันหน่ะครับ
สมมติว่าคนที่ใช้ proxy เดียวกัน load web อันเดียวกัน เวลาคนที่มา load ทีหลังก็จะ load
ได้เร็วขึ้น ประหยัดสายข้อมูล ทำให้ไม่ต้อง load ข้อมูลซ้ำซ้อนครับ
ถ้าอยากจะใช้ proxy ก็ต้องไปตรวจดูกับที่ที่เราต่อ internet แหล่ะครับ ว่าเค้าให้ set อะไรยังไงเค้าน่าจะมีบอกไว้อยู่นะครับ

Proxy มีทั้งหมด 3 ประเภทใหญ่ ๆ นะครับคือ

 

1. Transparent --> แผ่นใส
ตามชื่อนั้นล่ะ เมื่อมีการ request ข้อมูลจาก src ซึ่งโดยปกติ เมื่อก่อนเราต้องมากำหนดว่าเราจะใช้ proxy ตัวนี้นะ มันถึงจะ request ข้อมูลที่เราต้องการผ่านทาง proxy server ที่เรากำหนด ต่อมาปัจจุบันทางฝ่าย it ของบ. ทั้งหลายได้นำ firewall หรือ router มาขวางก่อน gateway ทำให้ข้อมูลที่จะถูกส่งไปยัง src ที่เรา request นั้น ต้องมาผ่าน Proxy server ก่อน ซึง user ส่วนมากจะไม่จำเป็นต้องมา configuration อะไรเพิ่มเติมตรงนี้ เนื่องจาก router และ firewall เป็นตัวจัดการตรงนี้ให้แทนแล้ว โดยมีการทำ redirection ของ Package ทั้งหมดไปยัง proxy server
มันก้อเหมือนแผ่นใสอ๊ะ ก้อใส ๆ ไปเลยเหมือนไม่มี proxy อยู่ หมายความว่าเครื่องเราส่ง information อะไรไป ก้อเป็นอันนั้นหมดเลย ตัว proxy ทำหน้าที่เหมือนเป็น forward ไปเฉย ๆ
ประโยชน์การใช้งานแบบนี้คือเร็ว และสามารถไปเวปที่เครื่องเราเองไปไม่ได้แต่ proxy ไปได้แต่ข้อมูลภายในเราก็จะถูกส่งออกไปด้วย smile.gif

2. Anonymous --> ใครก็ไม่รู้ (ไม่ประสงค์ออกนาม)
ก้อหมายความว่ามันจะซ่อน IP Address ของเครื่องต้นทางจริง ๆ โดยการใช้งานจะเหมือนกับการใช้งานโดยใช้ proxy เอง และก้อซ่อน information อื่น ๆ (พวก header ที่เกี่ยวข้องกะตัวเราอ๊ะ) แต่แบบนี้มันก้อซ่อนไม่หมดนะ เพราะว่า header จริง ๆ ของเรายังอยู่ เหมือนมันแปะเพิ่มเข้าไปเฉย ๆ

ประโยฃน์ของการใช้ proxy แบบนี้ เช่น เราต้องการจะอ้างว่าเราอยู่ประเทศ นู้น นี้ นั้น ถ้าไปใช้ proxy ของประเทศนั้น ๆ ก็เสมือนว่าใช้งานจากประเทศนั้นเลย แน่นอนมันก้อจะช้ากว่าแบบแรก smile.gif

3. High Anonimity --> ลึกลับสุด ๆ
คือมันจะไม่เปิดเผยข้อมูลอะไรของเราเลย การทำงานคือประมาณว่า ตัว proxy จะไปเรียกใช้งานที่ปลายทางให้เอง และได้ข้อมูลมาก็จะส่งมาให้เครื่องที่เรียกใช้งาน (งงไหม) ดังนั้นการใช้งานก็จะเปรียบได้ว่าเครื่อง proxy request ไปเองเลยไงจ๊ะ จะไม่มีข้อมูลอะไรของเราออกไปเลย

ประโยชน์.. หรือเปล่านะ ใช้หลบซ่อนในการแฮคต่าง ๆ เพราะจะไม่รู้ที่มาของเครื่อง (แต่สามารถรู้ได้โดยวิธีอื่น ดังนั้นอย่าลองไปทดสอบละ เค้าจับได้อยู่ดีแหละ) ใช้ในการปลอม IP เพื่อปั๊มการโหวด.. sleep.gif เอ๊ะ ตกลงมันเป็นประโยชน์หรือเปล่านะเนี่ย biggrin.gif และแน่นอนว่าแบบนี้ช้าที่สุด~
จริง ๆ แบบนี้ทำขึ้นมาเพื่อปกป้อง information ต่าง ๆ จากผู้ใช้งานต่างหาก

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

ขั้นตอนการทำงานของ Proxy Server
เมื่อผู้ใช้ติดต่อ WWW ผ่าน Proxy Server
เครื่องจะทำการตรวจสอบก่อน ว่ามีข้อมูลที่ผู้ใช้ต้องการอยู่ในเครื่องอยู่แล้วหร ือไม่
ถ้ายังไม่มีก็จะไปเรียกข้อมูลมาให้ใหม่ และจัดเก็บไว้ในเครื่องเพื่อคอยให้บริการแก่ผู้ใช้คร ั้งต่อไป
ถ้าพบว่ามี จะทำการตรวจสอบว่าข้อมูลที่มีอยู่กับแหล่งข้อมูลที่ต ้องการ ว่ามีความทันสมัยตรงกันหรือไม่
ถ้าตรงกันจะทำการส่งข้อมูลที่มีอยู่ในเครื่องไปให้ผู ้ใช้ทันที
แต่ถ้าไม่ตรงกัน Proxy จะไปดึงข้อมูลจากแหล่งข้อมูลมาให้ใหม่

วิธีการติดตั้ง Web Browser เพื่อใช้ Proxy Server

 

ผู้ใช้จะต้องทำการกำหนด (set) ค่าที่ web browser โดยมีขั้นตอนดังนี้

 

Nescape 3.x
1. ให้เปิดเมนู Options/Network Preferences.../Proxies/Manual Proxy Configuration/View
2. ให้ใส่ค่าให้เป็นชื่อเครื่อง Proxy Server ของธรรมศาสตร์ คือ proxy.tu.ac.th และ ใส่ค่า port เป็น 8080 ในช่อง FTP และ HTTP Proxies

Nescape 4.x
1. เลือก Edit/Preference/Advanced/Proxy Options/Manual Proxy Configuration/View
2. จากนั้น ให้กำหนดค่าให้เหมือนกับข้อ 2 ของการใช้ Netscape 3.x

Internet Explorer 3.x
1. เลือก View/Options/Connection/Connected through Proxy/Setting
2. จากนั้น ให้กำหนดค่าให้เหมือนกับข้อ 2 ของการใช้ Netscape 3.x

SOCKS --> ถุงเท้า.. เย้ย.. ไม่ใช่

SOCKS เป็นระบบ proxy ทั่ว ๆไปที่สามารถที่เป็นแบบ client-side application เพื่อให้มันสามารถทำงานผ่านไฟร์วอลได้ ประโยชน์ของมันคือมันใช้ง่ายแต่มันไม่สนับสนุน authentication (ในรุ่นแรก ๆ) ก็คือมันทำหน้าที่ forward ไปเฉย ๆ แต่ว่าจะทำการตรวจสอบไม่ได้ (งงไหมเนี่ย)
SOCKS ถูกใช้บ่อย ๆ เพื่อเป็น firewall เพื่อทำการเปลี่ยนแปลงการเชื่อมต่อไปที่ hosts อันหนึ่งที่ต้องการ

SOCKS โดยปกติจะมีสองส่วนคือ ส่วน Server (SOCKS Host) และ Client (มักจะอยู่กะโปรแกรมที่ใช้ SOCKS ได้อยู่แล้ว) ถ้าจะว่ากันลึก ๆ ในส่วนของ Server เปรียบเทียบกะ OSI Model ก็จะอยู่ในส่วนของ App Layer แต่ว่าในส่วนของ Client จะอยู่ในส่วนของ Transportation Layer (ก็ App Layer โปรแกรมเราใช้อยู่นี่ คือมันเหมือนกะหลอกการทำงานของโปรแกรมนั่นแหละ)

ยกตัวอย่างเพื่อให้เห็นภาพนะ
คราวนี้เมื่อมีการเรียกใช้งานจากโปรแกรม Client มันก็จะวิ่งผ่านไปที่ SOCKS Server เพื่อให้ Server Request ต่อไปอีกครั้งนึง เมื่อปลายทางตอบกลับมาที่ Server มันก็จะส่งมายัง Client ไง

ตัวอย่างที่เห็น ๆ ใช้งานกัน
เช่นการเล่น RO ของประเทศที่ Block ไม่ให้ IP จากประเทศไทยเข้าไปเล่น

ทั้งนี้อาจจะใช้ในเรื่องของการเปลี่ยนพอร์ทด้วยก็ได้ ยกตัวอย่างเช่น
ในระบบเน็ตเวิรค์เราไม่ให้ใช้งานพอร์ท 21 เราสามารถใช้ SOCKS ในการ implement port 21 ให้วิ่งใต้ port 80 ได้ biggrin.gif

ในด้านลบของ SOCKS มันก็ถูกใช้เป็นเครื่องมืออย่างนึงของแฮคเกอร์เช่นกั น sleep.gif

ว่ากันมายาว คราวนี้มาดูกันว่า SOCKS มีกี่เวอร์ชั่น... ปิ๊งป่อง SOCKS จะมี 2 เวอร์ชั่นคือ 4 กะ 5 Yo!

แล้วมันต่างกันไงอะ
เอาหลัก ๆ แล้วกันนะ SOCKS เนี่ยมันทำหน้าที่การจัดการการรูปแบบ การรับส่งข้อมูลที่พูดไปเมื่อข้างบนใช่ไหม แต่เวอร์ชั่น 4 ที่เขาทำขึ้นมามาจะมีหน้าที่หลัก ๆ อยู่ 3 อย่างคือ

1. ทำหน้าที่การเชื่อมต่อ เมื่อได้รับการร้องขอ (Request อะแหละ)
2. ตั้งค่าเส้นทางและการทำงานของ proxy (ก็ตัวมันเองอะ ว่าต้นทางคืออะไร ปลายทางคืออะไร ต้องรับส่งอะไรกันบ้าง รูปแบบเป็นแบบไหน ip source, local port, ip dest, external port, header และอื่น ๆ
3. ทำการคุยแลกเปลี่ยนข้อมูลระหว่าง Client - Host - Destination

ส่วน SOCKS 5 มันก้อเหมือน SOCKS 4 แต่เขาทำอุดจุดที่ SOCKS 4 ทำไม่ได้คือเรื่องของการ Authenticate เช่น ให้ใส่ Username / Password ก่อนใช้งานอะไรทำนองนี้

นั่นก็คือ SOCKS 5 เขาใส่
1. Authentication Function เพิ่มเข้าไป
2. support UDP เพิ่มขึ้นมาด้วยนะ
3. การจัดการเกี่ยวกะเรื่อง IP Address ที่ดีขึ้น

คราวนี้ประเด็นหลักของ SOCKS 5 ที่เพิ่มเข้าไปเรื่อง Authen อะ มันก็แบ่งย่อยได้เป็น

1. Username/Password authentication --> อันนี้ก็เหมือนทั่วไปคือ ใส่ User / Pass อะแหละ
2. GSS-API (Generic Security Service Application Programming Interface) authentication --> อันนี้ถ้าจะรู้วิธีต้องอธิบายกันยาวววว แต่เอาเป็นว่าเป็นการ Authen ระหว่างโปรแกรมกันเองครับ
สรุปว่า sock ยังใช้เป็น stealth ได้


อีกประโยชน์คือใช้ไปอาศัย proxy เขาเพื่อทำให้เข้าเวบบางอย่างได้โดยไม่โดนบล็อคโดยทร ูอ่ะ ทำได้โดยไปหา proxy มาแล้วมาใส่ตรงนี้เอง แต่proxy หาเองนะครับ จาก google ได้เลยมั้งครับ
ใครพอมีความรู้ด้านนี้แนะนำด้วยนะครับ ผมไม่รู้เรื่องอะครับ

1 ความคิดเห็น: