OpenVPN on Teltonika
Product | Teltonika |
Brand | Teltonika |
Highlight Information | OpenVPN ที่ Teltonika รองรับ |
Author | @Lakkhanaphon Saengchinda |
Importance | hight |
Publish Doc | Yes |
Years | 2021 |
รู้จัก OpenVPN
OpenVPN เป็น Open-source software application ที่ใช้สร้างเครือข่ายส่วนตัวเสมือน หรือ Virtual Private Network (VPN) ซึ่งสามารถสร้างการเชื่อมต่อ แบบ routed หรือ bridged ได้ทั้งแบบ point-to-point หรือ site-to-site อย่างปลอดภัย
3 สิ่งที่ต้องรู้จักก่อนตั้งค่า VPN เพื่อสร้างการเชื่อมต่อที่เหมาะสมกับความต้องการในการใช้งานมากที่สุด ก่อนอื่นต้องขออธิบายก่อนว่า OpenVPN มีการเชื่อมต่อ 2 รูปแบบคือ TUN (tunnel) และ TAP (bridged) สามารถส่ง Data ได้ทั้งแบบ UDP และ TCP และมีการ Authentication 2 แบบ ด้วยกันคือ TLS และ Static key
เรามารู้จักความแตกต่างของแต่ละเรื่องกัน
ชนิดการเชื่อมต่อ
TUN (tunnel) หรือ Routing mode ทำงานบน network layer หรือ IP packets ใช้เพื่อการ Routing และเชื่อมต่อ multiple clients เข้ากับ single server
TAP (bridged) ทำงานบน data link layer หรือ Ethernet frames ใช้เพื่อสร้างการเชื่อมต่อ 2 Ethernet segments จากต่างสถานที่เข้าด้วยกัน
สำหรับใครที่อ่านแล้วยังงงอยู่ขอสรุปว่า
โดยปกติให้เลือกใช้เป็น Routing mode หรือ TUN ก่อน เพราะมีประสิทธิภาพ และมีความสามารถมากกว่าในการควบคุมสิทธิ์การเข้าถึง Client ได้ แต่ถ้าการใช้งานของคุณมีลักษณะการเชื่อมต่อดังนี้ ให้ใช้ Bridged หรือ TAB
ต้องการโครงข่าย VPN ที่รองรับ Non-IP Protocol
Application ที่ใช้งานบน VPN tunnel ต้องใช้การ Broadcast Network
ต้องการเข้าถึง Windows File Share ผ่าน VPN โดยไม่ต้องตั้งค่า Samba หรือ Wins Server
Authentication
TLS - ใช้ SSL/TLS + สำหรับการ authentication และการแลกเปลี่ยน Key
Static key - ใช้ pre-shared Static key สามารถใช้ได้แค่ระหว่าง 2 peers เท่านั้น
การสร้าง OpenVPN TLS certificates/keys
การเชื่อมต่อที่ใช้ TLS ต้องใช้ certificates และ keys สำหรับ authentication หลายรายการสำหรับการตรวจสอบสิทธิ์ ดังนี้
OpenVPN server
The root certificate file (Certificate Authority)
Server certificate
Server key
Diffie Hellman Parameters
OpenVPN client ( ตามจำนวน Client ที่ต้องการเชื่อมต่อ)
The root certificate file (Certificate Authority)
Client certificate
Client key
ในการสร้าง certificates และ keys หากคุณมี third-party OpenVPN service พวกเขาจะสามมารถให้ certificates และ keys ไฟล์ที่ต้องใช้ทั้งหมดกับคุณได้
แต่ถ้าหากคุณสร้าง server ของคุณเอง คุณจะต้องสร้างไฟล์เหล่านี้ด้วยตัวเอง ซึ่งสามารถศึกษาวิธีการสร้าง TLS certificates and keys ได้ด้วยตนเองได้จาก xxx
การสร้าง การสร้าง OpenVPN Static key
Static key ใช้ pre-shared ในการ authentication ระหว่าง Server ต่อ หนึ่ง Client โดยคุณสามารถสร้าง Static key เองได้จากภายในเราเตอร์ หรือกับพีซีที่ใช้ระบบปฏิบัติการ Linux
สำหรับการสร้าง Static Key จาก router สามารถทำได้ดังนี้ Creating a Static key