วิธีตั้ง IPsec VPN บน Router D-Link ให้เชื่อมต่อเครือข่ายอย่างปลอดภัย
การตั้ง IPsec VPN บน Router D-Link เหมาะสำหรับสำนักงานหรือองค์กรที่ต้องการสร้าง Tunnel เข้ารหัสผ่าน Internet เพื่อให้ผู้ใช้งานหรือเครือข่ายอีกฝั่งสามารถเข้าถึงทรัพยากรภายใน เช่น Server, NAS, ระบบ ERP หรืออุปกรณ์ Network ได้อย่างปลอดภัย
IPsec เป็น VPN ที่ใช้แพร่หลายในระบบธุรกิจ และสามารถนำไปใช้ได้ทั้ง Client-to-Site และ Site-to-Site ขึ้นอยู่กับรุ่นของ D-Link และรูปแบบ Network
บทความนี้จาก comsiam จะอธิบายตั้งแต่ Public IP, Local/Remote Network, IKE, Phase 1, Phase 2, Encryption, Pre-shared Key, NAT-T, Firewall และวิธีแก้เมื่อ IPsec Tunnel เชื่อมต่อไม่ได้
① IPsec VPN คืออะไร
IPsec ย่อมาจาก
Internet Protocol Security
เป็นชุด Protocol สำหรับสร้างการสื่อสารที่เข้ารหัสผ่าน IP Network
ตัวอย่าง
Office A
↓
D-Link Router
↓
Internet
↓
IPsec Tunnel
↓
Remote Client / Router
ข้อมูลที่เดินทางผ่าน Tunnel จะถูกเข้ารหัสตาม Security Policy ที่กำหนด
② IPsec ใช้ทำอะไรได้บ้าง
IPsec สามารถใช้สำหรับ
Remote Access VPN
Client-to-Site
Site-to-Site VPN
เชื่อมสำนักงานหลายแห่ง
เชื่อม Data Center
เข้าถึง Server ภายใน
เชื่อมระบบระหว่างสาขา
แต่ Configuration จะแตกต่างกันตามวัตถุประสงค์
③ Client-to-Site คืออะไร
ตัวอย่าง
Notebook พนักงาน
↓
Internet
↓
IPsec VPN
↓
D-Link Router
↓
Office LAN
เหมาะสำหรับพนักงานที่ทำงานจากบ้านหรือเดินทาง
Client หนึ่งเครื่องเชื่อมเข้ามายังสำนักงาน
④ Site-to-Site คืออะไร
ตัวอย่าง
สำนักงานใหญ่
192.168.10.0/24
↓
D-Link Router
↓
IPsec Tunnel
↓
D-Link Router
↓
สาขา
192.168.20.0/24
Router ทั้งสองฝั่งสร้าง Tunnel ให้ Network ภายในติดต่อกันได้
การเชื่อมสำนักงานสองแห่งแบบละเอียดจะกล่าวต่อในหัวข้อถัดไปของชุด VPN
⑤ ตรวจว่า D-Link รองรับ IPsec VPN หรือไม่
D-Link แต่ละรุ่นรองรับ VPN ไม่เหมือนกัน
ควรตรวจ
Model
Hardware Revision
Firmware Version
และค้นหาเมนู เช่น
VPN
IPsec
IPsec VPN
VPN Policies
IPsec Policies
ความสามารถแบบเต็มรูปแบบมักพบใน Router ธุรกิจตระกูล DSR หรืออุปกรณ์ VPN Gateway
⑥ เตรียมข้อมูลก่อนตั้ง IPsec
อย่างน้อยควรทราบ
Public IP
Local Network
Remote Network
Pre-shared Key
IKE Version
Encryption
Authentication
DH Group
Lifetime
หากตั้งสองฝั่ง ค่าที่เกี่ยวข้องต้องสอดคล้องกัน
⑦ ตรวจ Public IP
สมมติสำนักงานมี Public IP
203.0.113.10
อีกฝั่งมี
198.51.100.20
Router ทั้งสองต้องสามารถเข้าถึงกันผ่าน Internet
หากอยู่หลัง CGNAT ต้องแก้ปัญหานี้ก่อน
⑧ ใช้ DDNS ได้ไหม
ถ้า Public IP เปลี่ยน สามารถใช้ DDNS ใน Router หรือ VPN Configuration ที่รองรับ Hostname
ตัวอย่าง
office-a.example-ddns.net
แทนการใช้ IP ที่เปลี่ยนตลอดเวลา
แต่ความสามารถในการใช้ FQDN/DDNS เป็น Peer Identifier ขึ้นอยู่กับรุ่นและ Firmware
⑨ ตรวจ CGNAT ก่อน
ถ้า WAN IP ของ Router อยู่ในช่วง เช่น
10.x.x.x
100.64.x.x - 100.127.x.x
172.16.x.x - 172.31.x.x
192.168.x.x
อาจมี NAT อยู่ด้านหน้า
กรณี Site-to-Site หรือรับ Incoming VPN ต้องตรวจให้แน่ใจว่า Peer สามารถเข้าถึง Router ได้
⑩ Double NAT มีผลหรือไม่
มีได้
ตัวอย่าง
Internet
↓
Router ISP
↓
D-Link
↓
LAN
D-Link อยู่หลัง NAT อีกชั้น
IPsec สามารถทำงานผ่าน NAT-T ได้ในหลายกรณี แต่การตั้งค่าและ Troubleshooting จะซับซ้อนขึ้น
หากเป็นไปได้ควรใช้
Bridge Mode
หรือ
IP Passthrough
ตามความเหมาะสม
⑪ Local Network คืออะไร
Local Network คือเครือข่ายที่อยู่หลัง D-Link ฝั่งนี้
ตัวอย่าง
192.168.10.0/24
ถ้าผู้ใช้ VPN ต้องเข้าถึง Staff LAN นี้ ให้กำหนดเป็น Local Subnet ตาม Policy
⑫ Remote Network คืออะไร
Remote Network คือ Network ที่อยู่หลัง VPN Peer อีกฝั่ง
ตัวอย่าง
192.168.20.0/24
เมื่อสร้าง Site-to-Site
192.168.10.0/24
↔
192.168.20.0/24
จะติดต่อกันผ่าน Tunnel
⑬ ห้ามใช้ Subnet ซ้ำกัน
ตัวอย่างที่ไม่เหมาะ
Office A:
192.168.1.0/24
Office B:
192.168.1.0/24
Router ไม่สามารถแยกได้ง่ายว่า 192.168.1.x อยู่ฝั่งใด
ควรใช้ Network ต่างกัน เช่น
Office A:
192.168.10.0/24
Office B:
192.168.20.0/24
⑭ เข้า Router D-Link
เชื่อมต่อกับ Router แล้วเปิด Browser
เข้า Management IP เช่น
192.168.0.1
หรือ
192.168.1.1
จากนั้น Login ด้วยบัญชี Administrator
⑮ Backup Configuration ก่อน
ก่อนแก้ VPN Policy ควร Backup Configuration
เพราะ IPsec เกี่ยวข้องกับ
VPN
Firewall
Routing
NAT
WAN
หากตั้งผิดอาจทำให้ Network เดิมได้รับผลกระทบ
⑯ เข้าเมนู IPsec VPN
ตำแหน่งแตกต่างตามรุ่น
อาจพบ
VPN
→ IPsec
หรือ
VPN
→ IPsec Policies
หรือ
VPN
→ VPN Policies
ให้ค้นหาเมนูที่เกี่ยวข้องกับ IPsec/IKE
⑰ สร้าง VPN Policy ใหม่
เลือก
Add
หรือ
Add New VPN Policy
ตั้งชื่อ เช่น
Office-A-to-Office-B
ควรใช้ชื่อที่บอกปลายทางชัดเจนเพื่อให้ดูแลหลาย Tunnel ได้ง่าย
⑱ IKE คืออะไร
IKE ย่อมาจาก
Internet Key Exchange
ใช้เจรจา Security Association และ Key สำหรับ IPsec
รุ่นที่พบบ่อยคือ
IKEv1
IKEv2
ถ้าทั้งสองฝั่งรองรับ IKEv2 มักเป็นตัวเลือกที่เหมาะกับระบบสมัยใหม่มากกว่า
⑲ IKEv1 กับ IKEv2 ต้องตรงกัน
ถ้าฝั่งหนึ่งตั้ง
IKEv1
แต่อีกฝั่งตั้ง
IKEv2
Tunnel จะไม่สามารถเจรจาตาม Policy เดียวกันได้
ดังนั้นต้องตรวจ IKE Version ทั้งสองฝั่ง
⑳ Phase 1 คืออะไร
Phase 1 ใช้สร้าง Secure Channel สำหรับการเจรจา IPsec
ค่าที่มักพบ เช่น
IKE Version
Encryption
Authentication
DH Group
Lifetime
Pre-shared Key
ทั้งสองฝั่งต้องใช้ค่าที่เข้ากันได้
㉑ Encryption ควรเลือกอะไร
หากอุปกรณ์รองรับ ควรเลือก Encryption ที่ยังเหมาะกับงานปัจจุบัน เช่น
AES-128
AES-256
หลีกเลี่ยง Algorithm รุ่นเก่า เช่น
DES
และควรพิจารณาเลิกใช้ 3DES เมื่อมี AES ให้เลือก
㉒ Authentication Algorithm
อาจพบตัวเลือก เช่น
SHA-256
SHA-384
SHA-512
SHA-1
หากทั้งสองฝั่งรองรับ ควรใช้ SHA-2 Family เช่น SHA-256 แทน Algorithm เก่า
ค่าต้องตรงกันหรือมี Proposal ที่เข้ากันได้
㉓ DH Group คืออะไร
DH หรือ Diffie-Hellman Group ใช้ในกระบวนการแลกเปลี่ยน Key
Router อาจให้เลือกหลาย Group
ควรเลือก Group ที่ทั้งสอง VPN Peer รองรับและเหมาะกับ Security Policy
ไม่ควรเลือกต่างกันคนละฝั่ง
㉔ Pre-shared Key คืออะไร
Pre-shared Key หรือ PSK เป็น Secret ที่ Router ทั้งสองฝั่งรู้ร่วมกัน
ตัวอย่างแนวคิด
Office A
PSK:
StrongRandomSecret
และ
Office B
PSK:
StrongRandomSecret
ต้องตรงกันทุกตัวอักษร
㉕ อย่าใช้ PSK ง่าย
ไม่ควรใช้
12345678
dlinkvpn
office
company
password
ควรใช้ Key ที่ยาวและสุ่ม
หากรองรับ Certificate Authentication และองค์กรมีระบบ PKI สามารถพิจารณาใช้ Certificate แทน PSK ได้
㉖ Phase 2 คืออะไร
Phase 2 ใช้สร้าง IPsec Security Association สำหรับ Traffic จริง
ค่าที่พบ เช่น
ESP Encryption
Authentication
PFS
Lifetime
Local Subnet
Remote Subnet
Phase 1 ผ่านไม่ได้ Phase 2 ก็จะไม่เริ่มทำงาน
㉗ ESP คืออะไร
ESP ย่อมาจาก
Encapsulating Security Payload
เป็นส่วนสำคัญของ IPsec ที่ใช้ปกป้องข้อมูลภายใน Tunnel
ในระบบที่มี NAT มักพบการใช้ NAT-T เพื่อห่อ Traffic ผ่าน UDP 4500
㉘ PFS คืออะไร
PFS ย่อมาจาก
Perfect Forward Secrecy
ช่วยให้ Phase 2 มี Key Exchange เพิ่มเติมตาม Policy
หากเปิด PFS ฝั่งหนึ่ง อีกฝั่งต้องกำหนดให้เข้ากันด้วย
ไม่เช่นนั้น Phase 2 อาจ Fail
㉙ Lifetime ต้องตรงกันไหม
Router สองฝั่งควรใช้ Lifetime ที่เข้ากันได้
ตัวอย่าง
Phase 1:
28800 seconds
Phase 2:
3600 seconds
เป็นเพียงตัวอย่าง
ค่าจริงควรตั้งตาม Policy ขององค์กรและความสามารถของอุปกรณ์ทั้งสองฝั่ง
㉚ IPsec ใช้ UDP 500
การเจรจา IKE โดยทั่วไปเกี่ยวข้องกับ
UDP 500
หาก Firewall ด้านหน้า Block Traffic นี้ Tunnel อาจไม่สามารถเริ่ม Negotiation ได้
㉛ NAT-T ใช้ UDP 4500
หากมี NAT อยู่ระหว่าง VPN Peer อาจใช้
UDP 4500
สำหรับ NAT Traversal
ดังนั้น Firewall หรือ Router ชั้นหน้าต้องไม่ Block Traffic ที่จำเป็น
㉜ NAT-T ควรเปิดไหม
ในหลายระบบแนะนำให้เปิดหรือใช้ Auto เมื่อมีโอกาสที่ Peer อยู่หลัง NAT
ตัวอย่าง
Remote User
↓
Home Router NAT
↓
Internet
↓
D-Link
NAT-T ช่วยให้ IPsec ผ่าน NAT ได้ดีขึ้น
㉝ ตั้ง Local Subnet
ตัวอย่าง
Local Network:
192.168.10.0
Subnet Mask:
255.255.255.0
หรือแสดงเป็น
192.168.10.0/24
หมายถึง Network ที่อนุญาตเข้าสู่ Tunnel ฝั่ง D-Link
㉞ ตั้ง Remote Subnet
ตัวอย่าง
Remote Network:
192.168.20.0/24
เมื่อรวมกันจะได้ Policy
192.168.10.0/24
↔
192.168.20.0/24
ผ่าน IPsec
㉟ ระวัง Local/Remote สลับกัน
ฝั่ง Office A
Local:
192.168.10.0/24
Remote:
192.168.20.0/24
ฝั่ง Office B ต้องเป็น
Local:
192.168.20.0/24
Remote:
192.168.10.0/24
หากใส่เหมือนกันทั้งสองฝั่ง Tunnel หรือ Traffic Selector อาจไม่ตรง
㊱ NAT Exemption คืออะไร
Traffic ที่ต้องเข้า IPsec Tunnel ไม่ควรถูก NAT เป็น Public IP แบบ Traffic Internet ปกติในหลาย Architecture
ตัวอย่าง
192.168.10.0/24
→ 192.168.20.0/24
ควรเข้าผ่าน VPN Policy
ไม่ควรถูก
LAN → WAN NAT
ก่อนเข้ Tunnel
Router บางรุ่นจัดการให้อัตโนมัติ แต่บางระบบต้องสร้าง NAT Exemption หรือ No-NAT Policy
㊲ Firewall ต้อง Allow Traffic ผ่าน VPN
เมื่อ Tunnel Up แล้ว Firewall ยังสามารถ Block Traffic ระหว่าง Network ได้
ตัวอย่างต้องการให้ Staff เข้า File Server
192.168.10.0/24
→
192.168.20.10
Allow
ไม่จำเป็นต้องเปิด
Any
→
Any
Allow
ทั้งหมด
㊳ ใช้ Least Privilege
หากสาขาต้องเข้าถึงเพียง
ERP Server
192.168.20.10
ควรอนุญาตเฉพาะ Service ที่จำเป็น
ไม่จำเป็นต้องเปิด
CCTV
Management
Guest Network
ทุก Server
ผ่าน Tunnel
㊴ VPN Connected แต่ Ping ไม่ได้
ตรวจ
Local Subnet
Remote Subnet
Firewall
Return Route
Host Firewall
ก่อน
Tunnel Up ไม่ได้หมายความว่า Application Traffic ทุกชนิดได้รับอนุญาต
㊵ Phase 1 Failed
หาก Log แสดง Phase 1 ไม่สำเร็จ ให้ตรวจ
Peer Address
IKE Version
Pre-shared Key
Encryption
Authentication
DH Group
UDP 500/4500
นี่เป็นค่าที่ควรตรวจเป็นชุดแรก
㊶ Phase 1 ผ่านแต่ Phase 2 ไม่ผ่าน
ให้ตรวจ
Local Subnet
Remote Subnet
Phase 2 Encryption
Authentication
PFS
Lifetime
Traffic Selector
มักเป็นปัญหาค่า Proposal หรือ Network ไม่ตรงกัน
㊷ Tunnel Up แต่ไม่มี Traffic
ตรวจ
Firewall
Routing
NAT
Local/Remote Network
Host Gateway
รวมถึงดูว่า Traffic ที่ทดสอบตรงกับ VPN Selector จริงหรือไม่
㊸ Ping ได้ทางเดียว
ตัวอย่าง
Office A
→ Office B
Ping ได้
แต่
Office B
→ Office A
ไม่ได้
ควรตรวจ
Firewall ฝั่งปลายทาง
Return Route
VPN Policy
Host Firewall
อย่าแก้ Phase 1 หาก Tunnel ยัง Up ปกติ
㊹ VPN หลุดเป็นระยะ
สาเหตุอาจมาจาก
Internet ไม่เสถียร
Rekey
Lifetime ไม่เข้ากัน
ISP เปลี่ยน IP
NAT Timeout
Router CPU สูง
DPD
Firmware
ควรตรวจ VPN Log เวลาที่ Tunnel Down
㊺ DPD คืออะไร
DPD ย่อมาจาก
Dead Peer Detection
ช่วยตรวจว่า VPN Peer อีกฝั่งยังตอบสนองหรือไม่
หาก Peer หาย Router สามารถล้าง Session และสร้าง Tunnel ใหม่ตาม Policy
ค่าที่เหมาะสมขึ้นอยู่กับระบบ
㊻ Keep Alive มีประโยชน์อย่างไร
Router บางรุ่นมีตัวเลือก
Keep Alive
หรือ
Auto Initiate
เพื่อให้ Tunnel ถูกสร้างใหม่โดยอัตโนมัติหากหลุด
เหมาะกับ Site-to-Site ที่ต้องออนไลน์ตลอดเวลา
㊼ ตรวจ VPN Status
หลัง Save/Apply ให้ดูหน้า
VPN Status
IPsec SA
Active Tunnels
ควรเห็นสถานะ เช่น
Connected
Established
Tunnel Up
ตาม Interface ของรุ่นนั้น
㊽ ตรวจ VPN Log
Log สามารถช่วยแยกปัญหา เช่น
No Proposal Chosen
Authentication Failed
IKE Timeout
Peer Not Responding
Phase 2 Failed
ข้อความเหล่านี้มีประโยชน์มากกว่าการเปลี่ยนค่าทุกช่องแบบสุ่ม
㊾ ทดสอบด้วย Ping
เมื่อ Tunnel Up แล้ว
จาก Office A
ping 192.168.20.10
จาก Office B
ping 192.168.10.10
หาก Ping ไม่ได้ แต่ Tunnel Up ให้ตรวจ Firewall และ Routing ต่อ
㊿ ทดสอบ Application จริง
อย่าทดสอบเฉพาะ Ping
ควรทดสอบ Service ที่ต้องใช้จริง เช่น
File Server
Remote Desktop
ERP
NAS
Database
NVR
เพราะบาง Server ปิด ICMP แต่ Service จริงยังทำงานได้
51. IPsec VPN กับ VLAN
สามารถกำหนดให้ VPN เข้าถึงเฉพาะ VLAN บางตัว
ตัวอย่าง
VLAN 10 → Staff
VLAN 20 → Guest
VLAN 30 → CCTV
VLAN 40 → Server
กำหนด
Remote VPN
→ VLAN 40
Allow
แต่
Remote VPN
→ VLAN 20
Deny
ตามความจำเป็น
52. IPsec VPN กับ Static Route
Router บาง Architecture อาจสร้าง Route จาก VPN Policy ให้อัตโนมัติ
บางระบบอาจต้องมี Static Route หรือ Policy Route เพิ่ม
หาก Tunnel Up แต่ Traffic ไม่วิ่ง ให้ตรวจ Routing Table ด้วย
53. VPN Throughput ต่ำกว่าความเร็ว Internet
เป็นเรื่องปกติที่ VPN Throughput จะต่ำกว่า WAN Speed
ตัวอย่าง
Internet:
1000 Mbps
ไม่ได้หมายความว่า
IPsec:
1000 Mbps
เพราะ Router ต้องเข้ารหัสและถอดรหัส Traffic
54. เลือก Router ตาม IPsec Throughput
ถ้ามีการโอนไฟล์หรือ Backup ผ่าน VPN จำนวนมาก ต้องดู
IPsec Throughput
Concurrent Tunnels
CPU
WAN Capacity
ไม่ควรดูเพียงความเร็ว WAN Port
55. อัปเดต Firmware
VPN Gateway เป็นอุปกรณ์ที่เกี่ยวข้องกับ Security โดยตรง
ควรใช้ Firmware ที่เหมาะกับ
Model
Hardware Revision
Region
และ Backup Configuration ก่อนอัปเดต
56. ปิด Algorithm เก่าที่ไม่ใช้
หากทั้งสองฝั่งรองรับ AES และ SHA-2 ควรพิจารณาเลิกใช้
DES
3DES
SHA-1
เมื่อไม่จำเป็น
ลด Proposal เก่าที่ไม่ได้ใช้งานจะช่วยให้ Configuration ชัดเจนขึ้นด้วย
57. Checklist ตั้ง IPsec VPN
✓ Router รองรับ IPsec
✓ Public IP/DDNS พร้อม
✓ ไม่มี CGNAT ที่ขวาง Connection
✓ Local/Remote Subnet ไม่ซ้ำ
✓ IKE Version ตรงกัน
✓ Encryption ตรงกัน
✓ Authentication ตรงกัน
✓ DH Group ตรงกัน
✓ Pre-shared Key ตรงกัน
✓ Phase 2 Proposal ตรงกัน
✓ PFS ตรงกัน
✓ NAT-T ตามความจำเป็น
✓ Firewall Allow ตาม Policy
✓ NAT Exemption ถูกต้อง
✓ Save/Apply
✓ Tunnel Up
✓ ทดสอบ Ping
✓ ทดสอบ Application จริง
58. ตัวอย่าง Configuration
สมมติ
Office A
Public IP:
203.0.113.10
LAN:
192.168.10.0/24
อีกฝั่ง
Office B
Public IP:
198.51.100.20
LAN:
192.168.20.0/24
ฝั่ง Office A
Remote Gateway:
198.51.100.20
Local Network:
192.168.10.0/24
Remote Network:
192.168.20.0/24
IKE:
IKEv2
Encryption:
AES-256
Authentication:
SHA-256
Pre-shared Key:
StrongRandomSecret
ฝั่ง Office B ต้องกลับด้าน Local/Remote
Remote Gateway:
203.0.113.10
Local Network:
192.168.20.0/24
Remote Network:
192.168.10.0/24
และใช้ค่าความปลอดภัยที่เข้ากันกับ Office A
ตัวเลข Public IP ในตัวอย่างมีไว้เพื่ออธิบายเท่านั้น
ข้อผิดพลาดที่พบบ่อย
ปัญหาที่พบได้บ่อย ได้แก่
IKE Version ไม่ตรงกัน
PSK ผิด
AES/SHA Proposal ไม่ตรง
DH Group ไม่ตรง
PFS ไม่ตรง
Local/Remote Subnet สลับผิด
Network สองฝั่งซ้ำกัน
WAN อยู่หลัง CGNAT
Double NAT
UDP 500/4500 ถูก Block
Firewall ไม่ Allow Traffic ผ่าน Tunnel
NAT Traffic VPN โดยไม่ตั้งใจ
Tunnel Up แต่ไม่มี Return Route
Router Performance ไม่พอ
สรุป
การตั้ง IPsec VPN บน Router D-Link ต้องให้ Configuration ของ VPN Peer ทั้งสองฝั่งสอดคล้องกัน ตั้งแต่ IKE Version, Encryption, Authentication, DH Group, Pre-shared Key ไปจนถึง Local และ Remote Network
หลักการ Troubleshoot ที่สำคัญคือแยกปัญหาเป็น
Phase 1
→ การสร้าง IKE Session
Phase 2
→ การสร้าง IPsec SA
Traffic
→ Routing / Firewall / NAT
หาก Phase 1 ไม่ผ่านให้ตรวจ Peer, PSK และ IKE Proposal หาก Phase 1 ผ่านแต่ Phase 2 ล้มเหลวให้ตรวจ Subnet และ Phase 2 Proposal ส่วนถ้า Tunnel Up แล้วแต่ใช้งานไม่ได้ให้ตรวจ Routing, NAT และ Firewall ต่อ
แนวทางของ comsiam คือใช้ Algorithm ที่ยังเหมาะกับระบบปัจจุบัน เช่น AES และ SHA-2 เมื่ออุปกรณ์ทั้งสองฝั่งรองรับ พร้อมเปิดเฉพาะ Network และ Service ที่จำเป็นผ่าน VPN จะได้ทั้งความปลอดภัยและ Configuration ที่ดูแลง่ายในระยะยาว