วันอาทิตย์ที่ 24 มกราคม พ.ศ. 2553

ตัวอย่างการใช้งาน VPN โดยใช้ Windows Server

แนะนำ VPN
Virtual Private Network หมายถึงการนำเอาทราฟฟิกข้อมูลของเครือข่ายที่เป็น Private ไปขนส่งบนเครือข่ายสาธารณะ (Public Network) ในลักษณะที่มีระบบป้องกันความปลอดภัยมากขึ้นด้วยการเข้ารหัสข้อมูลก่อนที่จะส่งไปเน็ตเวิร์กทุกครั้ง และที่ปลายทางก็จะถอดรหัสก่อนนำข้อมูลไปใช้งาน เนื่อง จากข้อมูลที่ส่งผ่านไปในเครือข่ายสาธารณะเป็นข้อมูลที่ถูกห่อหุ้มด้วยการ เข้ารหัสอีกชั้นหนึ่งเพราะฉะนั้นเรามักเรียกการเชื่อมต่อผ่าน VPN ว่าการสร้าง Tunneling

ตัวอย่างรูปแบบการใช้งาน
รูปแบบที่ 1 การใช้งานแบบ
Private-Public-Private
มีหลายองค์กรที่ได้ใช้งานเครือข่ายอินเตอร์เน็ตมากกว่าหนึ่ง Site (สาขา) นั่นก็หมายถึงว่าแต่ละสาขาสามารถใช้งานหรือออกไปสู่เครือข่ายอินเตอร์เน็ต และแต่ละสาขาก็สามารถติดต่อสื่อสารระหว่างสาขาถึงกันได้ แต่ข้อมูลที่รับส่งกันได้ระหว่างสาขานั้นไม่มีความปลอดภัยเพราะเครือข่าย อินเตอร์เน็ตไม่ได้เป็นเส้นทางขนส่งข้อมูลเฉพาะส่วนตัวหรือเฉพาะส่วนหน่วย งานของเราเอง (Private Network) ฉะนั้นจึงได้มีการทำระบบ VPN ขึ้นเพื่อปกป้องข้อมูลให้มีความปลอดภัยมากขึ้นดังตัวอย่างรูปที่ 1


รูปที่ 1

จากรูปที่ 1 เป็นตัวอย่างของการใช้งานเครือข่ายอินเตอร์เน็ตจำนวน 2 สาขา โดยสองสาขานี้ต้องการที่จะรับส่งข้อมูลถึงกันให้มีความปลอดภัย ด้วยการสร้างท่อข้อมูลพิเศษ (Tunnel) ไปบนเครือข่ายอินเตอร์เน็ต เพื่อไม่ให้ผู้อื่นที่ไม่เกี่ยวข้องมาล่วงรู้ข้อมูลที่รับส่งกันได้

ต้องทำ VPN ที่อุปกรณ์ตัวไหน
จากรูปที่ 1 สามารถจะพิจารณาได้ว่าการทำ VPN จะต้องทำที่ตัว Router นั่นคือเราเตอร์ทั้งสองจะต้องสร้าง tunnel ถึงกัน แต่ถ้าเราเตอร์ที่ใช้งานไม่สามารถทำ VPN ได้ก็อาจจะต้องซื้ออุปกรณ์ VPN มาเพิ่มดังรูปที่ 2



รูปที่ 2

ที่เครื่อง Client ต้องติดตั้งโปรแกรมเพิ่มเติมหรือไม่
การใช้งาน VPN ของเครื่อง Client มี 2 รูปแบบคือ
1. การใช้งานผ่านโปรแกรม
VPN Client ซึ่งต้องมีการติดตั้งโปรแกรม VPN Client เพิ่มเติมที่เครื่อง Client ด้วย ซึ่งปกติโปรแกรม VPN Client จะมีมาแล้วกับ Windows OS แต่ต้องมีการเซ็ตเพิ่มเติม ซึ่งโปรแกรม VPN Client ที่นิยมกันจะมี 2 แบบ คือแบบ PPTP กับ IPSec

ถ้าผมเข้าใจไม่ผิดรู้สึกว่า VPN Client ที่มากับ Windows OS จะเป็นแบบ PPTP นะครับ ซึ่งเขาว่ากันว่าแบบ PPTP จะปลอดภัยกน้อยกว่าแบบ IPSec ครับ จะเลือกใช้แบบไหนก็ต้องให้สัมพันธ์กับเครื่อง VPN Server ด้วยนะครับ การใช้งานแบบนี้มีข้อดีคือ Tunnel จะถูกสร้างตั้งแต่เครื่อง Client เลย (มีความปลอดภัยกว่า) แต่ก็มีข้อเสียคือต้องมีขั้นตอนในการสร้างการเชื่อมต่อก่อนจะใช้งานทุกครั้ง

2. การใช้งานโดยไม่ต้องมีการติดตั้งโปรแกรม VPN Client อาจจะเรียกว่าแบบ Transparent แบบนี้จะมีข้อดีคือไม่ต้องมีความยุ่งยากในการสร้างการเชื่อมต่อตั้งแต่เครื่อง Client นั่นคือ Tunnel จะถูกสร้างตั้งตำแหน่งของ VPN Device เป็นต้นไป

หมายเหตุ สำหรับในตัวอย่างของบทความนี้ เครื่อง Client จะใช้เป็นแบบที่มีการติดตั้งโปรแกรม VPN Client เพราะการใช้งานกับ Windows VPN Server ต้องใช้ผ่าน VPN Client (ผมไม่ทราบนะครับว่าจะใช้เป็นแบบไม่มี VPN Client ได้หรือเปล่า)

การทำ
VPN โดยใช้ Windows Server
เราสามารถใช้ Windows Server มาประยุกต์ใช้งานทำเป็น VPN Sever ได้ นั่นคือจากรูปที่ 2 เราสามารถจะแทน VPN Device ด้วย Windows Server ซึ่งจากที่ผมประสบมาพบว่า Windows 2000 Server และ Windows 2003 Server สามารถทำเป็น VPN Server ได้ ฉะนั้นก็จะได้เป็นอีกรูปแบบดังรูปที่ 3


รูปที่ 3

วิธีการทำ VPN จากรูปที่ 3
จากรูปที่ 3 กำหนดให้ IP ของ LAN A และ LAN B เป็น Private IP ฉะนั้นการที่จะให้เครือข่ายทั้งสองสาขานี้ใช้งานอินเตอร์เน็ตได้ก็ต้องมีการทำ NAT ซึ่งสามารถทำได้ที่ VPN Server (Windows 2000 Server และ Windows 2003 Server สามารถทำ NAT ได้)

ส่วนการใช้งานในรูปแบบของ VPN นั่นคือถ้า LAN A ต้องการติดต่อไปยัง LAN B เครื่อง Client ที่ LAN A จะต้องสร้างการเชื่อมต่อ (Connection) ไปยัง VPN Server B ซึ่งขั้นตอนการสร้างการเชื่อมต่อจะมีการถามยูสเซอร์เนมและพาสเวอร์ด ซึ่งถ้าถูกต้อง ตัว VPN Server B ก็จะจ่าย IP (IP ที่อยู่ในกลุ่มของ LAN B) มาให้ พร้อมกับการสร้าง Tunnel ระหว่าง LAN A กับ VPN Server B ทำให้เครื่องในกลุ่มของ LAN A มี IP Address อยู่ในกลุ่มเดียวกันกับ LAN B จึงสามารถติดต่อรับส่งข้อมูลกับ LAN B ได้

ส่วนการใช้งานจาก LAN B มายัง LAN A ก็เป็นแบบเดียวกันกับที่กล่าวมา

มีข้อแม้อยู่ว่า LAN A จะสามารถสร้างการเชื่อมต่อ (VPN Connection) ไปยัง VPN Server B ได้ก็ต่อเมื่อเครื่องใน LAN A สามารถ ping (ในกรณีที่ไม่มีการบล็อคการ ping) ไปหา Public port ของ VPN Server B ได้ ซึ่งจากรูปที่ 3 จะเห็นว่า ทั้ง LAN A และ LAN B สามารถจะ ping ไปยัง Public ของ VPN Server ฝั่งตรงข้ามได้เพราะได้มีการทำ NAT เอาไว้

สำหรับการทำ VPN บน VPN Server นั้น ตัว VPN Server จะต้องมีการ์ดแลน 2 การ์ด คือเป็น Public และ Private ซึ่งตัวอย่างการทำ VPN บน Windows 2003 Server สามารถดูได้จาก http://www.itwizard.info/technology/windows/vpn_on_win_2003_server.html (อาจจะไม่ตรงประเด็นเสียทีเดียวแต่ก็ใคร่เคียงครับ)

การจ่ายค่า IP Address ให้กับ VPN Client ของ VPN Server
ในขั้นตอนของการทำ VPN บน Windows Server จะมีอยู่ขั้นตอนหนึ่งที่มีการถามถึงช่วง IP ที่จะจ่ายให้เครื่อง Client สำหรับ VPN Server B จะต้องจ่าย IP Address ที่อยู่ในกลุ่มของ LAN B ให้กับ VPN Clinet ที่มาจาก LAN A และ VPN Server A ก็ต้องจ่าย IP Adress ที่อยู่ในกลุ่มของ LAN A ให้กับ VPN Client ที่มาจาก LAN B

รูปแบบที่ 2 การใช้งานแบบ Public-to-Private
จากรูปแบบที่ 1 จะเห็นว่า ในกรณีที่เครื่อง VPN Client อยู่ในตำแหน่งของเครือข่าย Internet และต้องการจะเข้าไปติดต่อกับเครือข่าย Private ดังรูปที่ 4 ก็แน่นอนอยู่แล้วว่าสามารถทำได้ด้วยวิธีการของ VPN ซึ่งลักษณะการใช้งานแบบนี้จะเหมาะสำหรับ Cient ที่มีการเดินทางไปไหนบ่อย ๆ ซึ่งเมื่อสามารถเชื่อมต่อกับเครือข่าย Internet ได้แล้ว ก็สามารถที่จะเชื่อมเข้าสู่เครือข่ายที่เป็นหน่วยงานของตัวเองได้ (Private) โดยผ่าน VPN ซึ่งอาจจะเรียกการใช้งานแบบนี้ว่าเป็นแบบ Remote User




ที่มา http://www.itmanage.info/technology/windows/vpn_apply.html