การตั้งค่า WireGuard Road Warrior VPN Client-to-Site บน OPNSense

Published on May 26, 2025
การตั้งค่า WireGuard Road Warrior VPN Client-to-Site บน OPNSense

WireGuard คือโปรโตคอล VPN แบบใหม่ที่ถูกออกแบบมาให้ เรียบง่าย รวดเร็ว ปลอดภัย และใช้งานง่าย โดยถูกพัฒนาขึ้นโดย Jason A. Donenfeld ปัจจุบันการได้รับความนิยมเพิ่มขึ้นเรื่อยๆ เนื่องจากความง่ายของการใช้งาน และ สามารถใช้งานผ่าน client แทบทุกอย่างตั้งแต่มือถือจนถึง PC และ ด้วยความง่ายและการใช้ โค้ดที่น้อยทำให้มันทำงานได้อย่างรวดเร็ว ในขณะเดียวกันความปลอดภัยก็ไม่น้อยไปกว่าคู่แข่งตัวเดิมๆ ในตลาดเช่น IPsec

ในส่วนของการเข้ารหัสนั้น WireGuard ใช้ Curve25519, ChaCha20, Poly1305 ที่เป็น algorithm รุ่นใหม่ที่เร็วกว่าที่มีใช้ใน IPsec เช่น AES, 3DES, RSA, DH สามารถทำงานได้ทั้งแบบ Site-to-Site และ Client-to-Site หรือเรียกอีกอย่างหนึ่งว่า Road Warrior

สำหรับ OPNSense หรือ Open-Source Firewall ที่ได้รับความนิยมนั้น ก็มีการติดตั้ง WireGuard มาพร้อมเลย ทำให้เราสามารถมี VPN Server ได้ทันที และ ง่ายมากในการ configure และ ใช้งาน

ว่าแล้วเราก็เริ่มกันเลย
1. ไปที่ VPN->WireGuard->Instances และคลิก + เพื่อสร้าง instance ใหม่

Listen Port ก็คือ Port ซึ่งท่านจะให้ Client เชื่อมต่อเข้ามา ท่านอาจจะเลือก port ใดก็ได้ที่ต้องการ

Tunnel Address คือ network ที่จะสร้างขึ้นสำหรับ Client ซึ่งจะต้องต่างจาก network ที่มีอยู่ และ ท่านอาจจะใช้ private address ที่ท่านต้องการ

Public Key ให้ท่านกดที่ รูปเฟือง เพื่อให้ระบบสร้าง Private Key และ Public Key ซึ่งในส่วนของ Public Key นี้เองที่ท่านจะต้องนำไปใส่ไว้ใน Client

2. ไปที่ tab : Peers และ ทำการสร้าง Peer ขึ้นมา ซึ่ง Peer ก็คือ Client นั่นเอง

Name ตั้งเป็นอะไรก็ได้ที่ท่านต้องการ

Pre-shared key ไม่จำเป็นต้องใส่

Allowed IPs คือ ip ที่ท่านจะต้องตั้งใน Wireguard Client ซึ่งจะต้องตรงกันถึงจะใช้งานได้ ที่เหลือไม่ต้องใส่

3. ไปที่ Interfaces->Assignments และ ดูว่า มี interface name ของ WireGuard ขึ้นหรือยัง ถ้ายัง ท่านจะต้องทำการเลือกตรง Assign a new interface และเลือก WireGuard เข้ามาตั้งชื่อ ตามภาพ

4. ไปที่เมนู Firewall->Rules ท่านจะเห็น interface เพิ่มขึ้นมาก็คือ WHWGSRV ก็คือชื่อของ WireGuard ที่เราได้ตั้งไปก่อนหน้านั่นเอง เราจะสังเกตุว่า OPNSense ก็จะมองเห็นว่า subnet ของ WireGuard นั้นก็จะเกาะอยู่กับ interface หนึ่งนั่นเอง

5. อนุญาตให้ client เชื่อมต่อเข้ามาทาง WAN เช่น WAN1 ที่ port 51820

6. แน่นอนเราต้องการใช้ subnet ที่เราตั้งไว้ เข้าถึง LAN ของเรา เพราะฉะนั้น เราต้องอนุญาตเช่นกันจาก interface WHWGSRV ตามภาพ

เพียงเท่านี้ก็เป็นอันเสร็จสิ้น ท่านติดตั้ง WireGuard Client และ ไปสร้าง Configure ได้เลย ซึ่งสำหรับการตั้งค่าใน Client เราเคยอธิบายไว้แล้วที่ https://www.avesta.co.th/article/how-to-install-wireguard-vpn-client-for-windows/

แน่นอนว่า ไม่เพียงแต่ OpenSource Firewall เท่านั้น ที่เราให้บริการ AVESTA ให้บริการครบวงจร ทั้งการพัฒนาแอป Network Security และ ระบบสำรองข้อมูล ติดต่อเราวันนี้ ที่ Line OA : @avesta.co.th หรืออีเมล์ [email protected]

SAN is out SDS is in

วันนี้เราจะไปพาไปพบกับ คำถามที่ช่วงนี้ต้องบอกว่า พบเจอบ่อยมากๆ นั่นคือ การที่หลายๆ คนใช้งาน Storage Area Network หรือที่เรียกสั้นๆ...

Read more »

ข้อดีของการมีระบบจองที่พักหรือโรงแรมเป็นของตัวเอง

ประเทศไทยนั้นถือว่าจุดหมายปลายทางระดับโลกของนักท่องเที่ยว ที่มีแต่จะมากขึ้นทุกๆ ปีด้วยความโดดเด่นของไทยเองที่มีอยู่หลายด้าน เช่น อาหาร แหล่งท่องเที่ยว และ ความเป็นมิตรของผู้คน นั่นคือหนึ่งในสาเหตุของ การเพิ่มขึ้นของสถานประกอบการประเภทที่พัก...

Read more »

ระบบฐานข้อมูล และ การใช้งานประจำปี 2025

เราอาจจะพูดได้ว่า ระบบฐานข้อมูลนั้นได้กลายเป็นกระดูกสันหลังขององค์กรและแอปพลิเคชันยุคใหม่ไปแล้ว การเข้าใจว่า ฐานข้อมูลแต่ละชนิดและการนำไปใช้งานนั้นก็กลายเป็นเรื่องจำเป็นที่นักพัฒนา รวมถึงผู้ที่อยู่ในสายงานไอที ต้องเรียนรู้ ไม่ว่าคุณกำลังจะสร้างแอปสำหรับใช้งานส่วนตัวหรือสำหรับองค์กรขนาดใหญ่ การเข้าในฐานข้อมูลและเลือกใช้งานให้ถูกต้อง ถือเป็นส่วนที่จะต้องทำ อะไรคือฐานข้อมูล...

Read more »

Virtual Tape Library คืออะไรและมีประโยชน์อย่างไร

สำหรับ Tape Backup นั้นหลายๆ คนคงจะรู้จัก และใช้งานกันมานานพอสมควร แม้กระทั่งทุกวันนี้หลายๆ องค์กรก็ยังใช้งาน Tape อยู่...

Read more »

ทดสอบ IOPS ด้วย KDiskMark

หากพูดถึง CrystalDiskMark ก็ต้องบอกว่าเป็นที่รู้จักกันในโลกของ Windows กันมา พอสมควรแล้ว เพราะถูกใช้กันอย่างกว้างขวางในการทดสอบ IOPS บน Disk/SSD...

Read more »

GraphQL คืออะไร และ มันอาจจะเป็นสิ่งที่มาเปลี่ยน REST API

GraphQL คืออะไร ก่อนอื่นต้องบอกก่อน วิธีการสื่อสารระหว่าง client & server นั้นเราใช้วิธีการที่เรียกว่า REST API...

Read more »