สำหรับบทความนี้เราจะไปติดตั้งระบบ Private VPN ด้วยซอฟต์แวร์ OpenVPN กันครับ โดยจะเป็นการ deploy ด้วย Docker container บน Multi-Cloud Platform-as-a-Service ครับ ซึ่งการติดตั้งก็ง่ายสุดๆ เพราะเลือกติดตั้งแบบ 1-Click install ได้เลยจาก Marketplace โดยที่เราสามารถเลือกโหมดติดตั้ง OpenVPN ได้ 2 รูปแบบคือ
คำเตือน: ไม่ขออธิบายว่า OpenVPN คืออะไรนะครับ อันนี้สามารถเปิดกูเกิลค้นหาอ่านเพิ่มเติมได้!
- Secure Internet Access (โหมดท่องอินเทอร์เน็ตอย่างปลอดภัย)
– ซูโลชั่นสำหรับให้การเข้าถึงอินเทอร์เน็ตที่ปลอดภัยและป้องกันภัยคุกคามจาก Wi-Fi สาธารณะ
– เป็นนโยบายการใช้อินเทอร์เน็ตขององค์กรที่ต้องการรับส่งข้อมูลอย่างปลอดภัย
– โหมดนี้จะใช้ DNS คิวรีของ Google (Google Public DNS) - Secure Remote Access (เข้าถึงทรัพยากรขององค์กรภายใน Environment group)
– ซูโลชั่นนี้สำหรับให้บริการพนักงาน ใช้เข้าถึงทรัพยากรขององค์กรและเซิร์ฟเวอร์ในคลาวด์ที่ปลอดภัย
และ Container, Cloud LAN environment.
– เพิ่มระดับความปลอดภัยอีกชั้นให้กับโปรโตคอล เช่น RDP, VNC ที่เป็นการรีโมทเดสก์ท็อปหน้าจอจากระยะไกล
– โหดมนี้จะใช้ DNS คิวรี resolved โดยผ่าน DNS server ภายในของแพลตฟอร์ม (Internal platform DNS server)
– สามารถกำหนด VPN Environment group ได้ เช่น ในกรณีที่เซิร์ฟเวอร์ VPN ทำงานภายใน Environment group (Web server) ไคลเอนต์ VPN จะเข้าถึงได้เฉพาะ Container ภายในกลุ่ม Web server นี้เท่านั้น!
ไปเริ่มติดตั้งกันเลย…
1. เข้าสู่ระบบแพลตฟอร์ม Ruk-com Cloud, เปิด Marketplace จากนั้นค้นหา OpenVPN Access Server จะอยู่ที่เซตชั่นเมนู Dev & AdminTools.
2. หลังจาก deploy เสร็จจะขึ้นหน้าต่างแสดงรายละเอียดเข้าสู่ระบบ (Username, Password และ URL) พร้อมทั้งส่งรายละเอียดนี้ให้ทางเมลครับ
3. ถัดไปให้กำหนด Domain Binding เช่น vpn.yourdomain.com
อย่าลืม! ไปอัพเดต DNS record ชี้ A record มายัง IP Address เซิร์ฟเวอร์ OpenVPN ด้วยนะครับ
หลังอัพเดต DNS record เสร็จแล้วก็ให้คอนฟิกเพิ่มโฮสต์ “vpn.yourdomain.com” ใน Add-on Let’s Encrypt Free SSL -> คลิกที่ปุ่ม Configure
4. Login เข้าสู่ระบบหน้า Admin UI จากนั้นใส่ User/Pass (ที่ได้รับทางเมล)
Admin UI: https://vpn.yourdomin.com:943/admin
จากนั้นกดยอมรับ “OpenVPN Access Server End User License”
ใช้งานฟรี! 2 VPN connections allowed มากกว่านี้ต้องซื้อ license ที่นี้
OpenVPN Client Software and Profiles
สำหรับ Client ให้ Login เข้าสู่ระบบเพื่อดาวน์โหลด Connection profiles ได้ที่ Client UI
Client UI: https://vpn.yourdomain.com:943/
กดดาวน์โหลด Connection profiles สำหรับเครื่อง Client หรืออุปกรณ์เราได้เลย
(เช่น ในที่นี้ผู้เขียนใช้ Mac Pro แล้วติดตั้งเพียงเท่านี้ Connection ก็จะถูกเพิ่มไปยัง OpenVPN Clent พร้อมคลิก Connect เพื่อใช้งาน VPN)
VPN Tunnel Verification
เมื่อพิมพ์คำสั่ง ifconfig ก็จะเจอะ vpn interface ดังตัวอย่าง
โดย IP Address : 172.27.232.3 เป็น Private IP Address ของ Client เครื่องนี้ครับ
utun3: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 172.27.232.3 --> 172.27.232.1 netmask 0xfffff800
ถัดไปให้ทดสอบ ping ไปยังเครื่อง OpenVPN เซิร์ฟเวอร์ (จะเห็นว่าสามารถติดต่อได้ ดังรูป)
Internal IP Address ของเครื่อง OpenVPN เซิร์ฟเวอร์คือ 10.102.9.33
สำหรับ Client สามารถดาวน์โหลด OpenVPN client ได้จากลิงก์ข้างล่างนี้ (หลังติดตั้งเสร็จก็เพียง Import client.ovpn ไฟล์เข้าไปเป็นอันเสร็จ)
- OpenVPN Connect for Windows 7,8,10
- OpenVPN Connect for Mac OS X
- OpenVPN Connect for Android
- OpenVPN Connect for iOS
- OpenVPN for Linux
เนื่องจากเป็นการติดตั้งบน Multi-Cloud Platform-as-a-Service เราสามารถที่จะ Migrate ระบบไปยัง Datacenter อื่นๆ ที่รองรับได้เลยทันทีครับ (ดังรูป)
เพียงเท่านี้เราก็ได้ VPN server ใช้งานสำหรับองค์กร/หรือเปิดเป็น VPN เซิร์ฟเวอร์ส่วนตัวได้แล้วครับ ^^
sourece: https://jelastic.com/blog/private-openvpn-access-server/