SSD Nodes Learn Hosting plans →
คู่มือ Matt Connorโดย Matt Connor

WireGuard vs OpenVPN: แบบไหนเหมาะกับการโฮสต์เอง

WireGuard เหมาะกับผู้โฮสต์ VPN เองเกือบทุกกรณี ทั้งความเร็ว ไฟล์ตั้งค่าราว 10 บรรทัด และโค้ดราว 4,000 บรรทัด พร้อม 4 กรณีที่ OpenVPN ยังเหนือกว่า

คำตอบสั้น ๆ

สำหรับบุคคลหนึ่งคนที่ใช้งาน VPN server บน VPS ของตนเอง การเลือกระหว่าง WireGuard กับ OpenVPN ไม่ใช่การแข่งขันที่สูสี: ให้เลือก WireGuard เพราะมีขนาดเล็กกว่า ทำงานภายใน Linux kernel เชื่อมต่อได้ภายในเสี้ยววินาที และ client config ที่ใช้งานได้มีความยาวประมาณ 10 บรรทัด OpenVPN ยังมีงานที่เหมาะสมอยู่ 4 ประการ และหากไม่มีข้อใดตรงกับความต้องการของคุณ คุณก็ไม่จำเป็นต้องใช้ OpenVPN

งานทั้ง 4 ประการนั้น ได้แก่ การเชื่อมต่อออกจาก network ที่อนุญาตเฉพาะ TCP port 443 การเชื่อมต่อเข้ากับ certificate authority ที่มีอยู่ การตรวจสอบสิทธิ์ผู้ใช้ที่ระบุชื่อด้วยรหัสผ่านหรือปัจจัยที่สอง และการ bridge ที่ Layer 2 เนื้อหาต่อไปนี้เป็นหลักฐานประกอบคำแนะนำดังกล่าว รวมถึงระบุอย่างชัดเจนว่าข้อยกเว้นแต่ละกรณีเริ่มเกี่ยวข้องกับคุณเมื่อใด

เหตุผลที่ WireGuard เป็นผู้ชนะสำหรับผู้ใช้งานแบบ self-host

ฐานโค้ดมีขนาดเล็กจนสามารถอ่านได้ โครงการ WireGuard มีการใช้งานโปรโตคอลที่ใช้โค้ดประมาณ 4,000 บรรทัด ในขณะที่ OpenVPN มีขนาดถึงหลักแสนบรรทัดเมื่อนับรวมไลบรารี OpenSSL ที่ต้องพึ่งพาสำหรับการดำเนินการทางคริปโตกราฟีทุกอย่าง ขนาดของโค้ดมีความสำคัญเพราะทุกบรรทัดคือพื้นที่ที่อาจถูกโจมตีได้ และทั้งคุณหรือผู้ตรวจสอบโค้ดก็คงไม่สามารถอ่านโค้ด 100,000 บรรทัดได้ แต่คุณสามารถอ่าน 4,000 บรรทัดได้

ทำงานในระดับ kernel WireGuard ถูกรวมอยู่ใน mainline Linux ตั้งแต่เวอร์ชัน 5.6 ดังนั้น Ubuntu 24.04 และ Debian 13 จึงมาพร้อมกับตัวโปรแกรมโดยไม่ต้องคอมไพล์เอง แพ็กเก็ตข้อมูลจะถูกเข้ารหัสในที่ที่มันอยู่แล้ว นั่นคือใน kernel space โดยไม่มีการคัดลอกข้อมูลออกไปยังกระบวนการใน userspace แล้วส่งกลับมา ตรวจสอบสถานะก่อนเริ่มดำเนินการอื่นใด:

sudo modprobe wireguard && echo ok

บน KVM VPS ระบบจะแสดงผล ok สำหรับการทำ container virtualization ที่ใช้ kernel ร่วมกับโฮสต์ เช่น OpenVZ หรือ LXC ระบบจะล้มเหลวพร้อมข้อความ Operation not supported เนื่องจากคุณไม่สามารถโหลดโมดูลเข้าไปใน kernel ที่ไม่ใช่ของคุณได้

ไม่มีการเจรจาต่อรอง WireGuard มีชุด cipher suite แบบตายตัวชุดเดียว คือ ChaCha20-Poly1305 สำหรับข้อมูล และใช้คีย์แบบ Curve25519 ไม่มีเวอร์ชันให้ดาวน์เกรดและไม่มีตัวเลือกให้ตั้งค่าผิดพลาด OpenVPN จะเจรจาเรื่อง cipher และเวอร์ชันของ TLS (transport layer security) กับไคลเอนต์แต่ละราย ซึ่งแม้จะให้ความยืดหยุ่น แต่ก็เป็นจุดที่ทำให้เกิดการตั้งค่าผิดพลาดได้ เซิร์ฟเวอร์ที่ตั้งค่าทิ้งไว้ด้วย data-ciphers AES-256-GCM:AES-128-CBC จะยอมลดระดับไปใช้ cipher แบบ CBC หากไคลเอนต์ไม่มีตัวเลือกที่ดีกว่า และ log ก็ไม่ได้แจ้งเตือนว่าการใช้ cipher ที่อ่อนแอกว่านั้นเป็นปัญหา ในกรณีที่มีการทำ data channel offload ระบบ OpenVPN จะแสดงข้อความแจ้งเตือนว่ารายการ CBC ได้ปิดการทำงาน offload ไปแล้ว ซึ่งเป็นการเตือนเรื่องความเร็ว ไม่ใช่เรื่องความปลอดภัย

พอร์ตไม่ตอบสนอง แพ็กเก็ตของ WireGuard ที่ไม่ผ่านการตรวจสอบความถูกต้องของข้อความจะถูกทิ้งโดยไม่มีการตอบกลับใดๆ ดังนั้น nmap -sU -p 51820 จึงไม่สามารถแยกแยะเซิร์ฟเวอร์ WireGuard ออกจากพอร์ตที่ไฟร์วอลล์ของคุณทิ้งแพ็กเก็ตเงียบๆ ได้ ทั้งสองกรณีจะแสดงผลเป็น open|filtered มีเพียงพอร์ตที่ไม่ได้กรองและไม่มีบริการใดๆ ทำงานอยู่เท่านั้นที่จะเปิดเผยตัวเอง เพราะ kernel จะตอบกลับด้วย ICMP port unreachable และ nmap จะรายงานว่าเป็น closed เซิร์ฟเวอร์ OpenVPN ในโหมด TCP จะทำการ TCP handshake ให้เสร็จสิ้นก่อนที่จะตัดสินใจว่าคุณไม่ได้รับอนุญาต ซึ่งเพียงพอที่จะพิสูจน์ให้เครื่องมือสแกนทราบว่ามีบริการทำงานอยู่ ส่วน OpenVPN ผ่าน UDP ที่ใช้ tls-crypt นั้นเงียบเกือบเท่ากัน ดังนั้นข้อโต้แย้งนี้จึงเป็นการคัดค้านการรัน OpenVPN บน TCP มากกว่าจะเป็นการคัดค้านตัว OpenVPN เอง

การโรมมิ่งทำได้โดยอิสระ เพียร์ของ WireGuard จะถูกระบุด้วย public key ไม่ใช่ด้วยที่อยู่ IP แล็ปท็อปของคุณย้ายจากเครือข่ายที่บ้านไปยัง mobile hotspot โดยส่ง handshake เพียงครั้งเดียวจากที่อยู่ใหม่ แล้วเซิร์ฟเวอร์จะอัปเดต endpoint ที่ใช้ตอบกลับทันที ไม่มีการเชื่อมต่อใหม่เกิดขึ้นเพราะไม่มีการเชื่อมต่อค้างไว้ตั้งแต่แรก OpenVPN สามารถทำสิ่งที่คล้ายกันได้ด้วย float แต่โดยปกติไคลเอนต์จะต้องตัดการเชื่อมต่อและสร้างเซสชัน TLS ขึ้นมาใหม่ทั้งหมด ซึ่งเป็นเหตุผลว่าทำไมการเปิดฝาแล็ปท็อปแล้วรอการเชื่อมต่อจึงเห็นได้ชัดใน OpenVPN แต่ไม่เกิดขึ้นกับ WireGuard

ความเร็วในปี 2026: ช่องว่างที่แคบลง

เป็นเวลาหลายปีที่ข้อโต้แย้งเรื่องความเร็วที่ตรงไปตรงมาคือ OpenVPN คัดลอกทุกแพ็กเก็ตไปยัง userspace เพื่อเข้ารหัสแล้วคัดลอกกลับมา ในขณะที่ WireGuard ไม่เคยออกจาก kernel เลย ปัจจุบันสถานการณ์เปลี่ยนไปแล้วและการเปรียบเทียบที่ละเลยประเด็นนี้ถือว่าล้าสมัย

OpenVPN 2.7 เปิดตัวในเดือนกุมภาพันธ์ 2026 พร้อมรองรับโมดูล kernel ovpn ซึ่งถูกรวมเข้ากับ Linux 6.16 แล้ว นี่คือ DCO (data channel offload): control channel ยังคงอยู่ใน userspace แต่เส้นทางข้อมูลหลักย้ายไปอยู่ใน kernel ซึ่งใกล้เคียงกับสิ่งที่ WireGuard ทำมาโดยตลอด บน kernel และ OpenVPN ที่ใหม่พอจะใช้งานฟีเจอร์นี้ได้ ปริมาณงาน (throughput) จะอยู่ในระดับเดียวกัน ไม่ใช่คนละระดับอีกต่อไป ตรวจสอบสิ่งที่คุณมีอยู่จริงด้วยคำสั่งนี้:

uname -r
openvpn --version | head -n 1
modinfo ovpn 2>/dev/null | head -n 3

ณ เดือนตุลาคม 2026 Ubuntu 24.04 LTS รุ่นมาตรฐานมาพร้อมกับ OpenVPN 2.6 ไม่ใช่ 2.7 และโมดูล ovpn จำเป็นต้องใช้เวอร์ชัน 2.7 ในรุ่นดังกล่าว คุณจะทำ offload ได้ผ่านแพ็กเกจ openvpn-dco-dkms รุ่นเก่าเท่านั้น ซึ่งจะสร้างโมดูลแบบ out-of-tree เทียบกับ kernel ที่คุณใช้งานอยู่ และต้องสร้างใหม่ทุกครั้งที่มีการอัปเกรด kernel ซึ่งเป็นส่วนประกอบที่ต้องดูแลเพิ่มขึ้นในขณะที่ WireGuard ไม่มี Ubuntu 26.04 LTS มาพร้อมกับ OpenVPN 2.7.0 และ Linux 7.0 kernel ซึ่งทั้งคู่ใหม่พอสำหรับ ovpn ดังนั้นในรุ่นดังกล่าว คำสั่ง modinfo ด้านบนคือคำสั่งที่ควรใช้ตรวจสอบ

โปรดอ่านรายละเอียดเงื่อนไขของ DCO ให้ถี่ถ้วนก่อนจะใช้เป็นเหตุผลในการใช้งานต่อ DCO รองรับเฉพาะ Layer 3 tunnel เท่านั้น รองรับเฉพาะ AEAD ciphers (การเข้ารหัสแบบยืนยันตัวตนพร้อมข้อมูลกำกับ: AES-GCM หรือ ChaCha20-Poly1305) ไม่รองรับการบีบอัดข้อมูล และบนเซิร์ฟเวอร์จะทำงานร่วมกับ topology subnet เท่านั้น ข้อจำกัดเหล่านี้แต่ละข้อได้ลดทอนความยืดหยุ่นซึ่งเคยเป็นจุดแข็งของ OpenVPN ลง OpenVPN ที่เร็วคือ OpenVPN ที่ถูกตั้งค่าให้ทำงานเหมือนกับ WireGuard

อย่าเชื่อตัวเลขปริมาณงานที่เผยแพร่โดยใครก็ตาม รวมถึงหน้านี้ด้วย ขีดจำกัดบน VPS มักจะเป็นโควตา CPU หรือโควตาเครือข่ายมากกว่าตัวโปรโตคอล ให้วัดค่าด้วยตนเองโดยใช้ iperf3 รันผ่าน tunnel จากนั้นวัดอีกครั้งที่ภายนอก tunnel แล้วจึงเปรียบเทียบทั้งสองค่า

เหตุผลที่ OpenVPN ยังคงมีความจำเป็น

คุณจำเป็นต้องเชื่อมต่อผ่าน TCP port 443 WireGuard ออกแบบมาให้ใช้เฉพาะโปรโตคอล UDP เท่านั้นโดยเจตนา และจะไม่มีโหมด TCP ในอนาคต เครือข่ายโรงแรมที่คัดกรองการเชื่อมต่อด้วยหมายเลขพอร์ตมักจะยอมให้ OpenVPN ที่ตั้งค่าด้วย proto tcp-server และ port 443 ผ่านไปได้ อย่าเข้าใจผิดว่านี่คือการพรางตัว เพราะ OpenVPN ที่ทำงานผ่าน TCP จะใช้การจัดเฟรมแพ็กเก็ตของตนเองแทนที่จะเป็นเซสชัน TLS ปกติ ดังนั้นไฟร์วอลล์หรือพร็อกซีขององค์กรที่ตรวจสอบหรือทำ TLS termination อาจยังคงตรวจพบและบล็อกการเชื่อมต่อนี้ได้ WireGuard จำเป็นต้องใช้ wrapper เช่น wstunnel หรือ udp2raw เพื่อข้ามผ่านเครือข่ายลักษณะเดียวกัน ซึ่งหมายถึงต้องมีกระบวนการเพิ่มขึ้นอีกหนึ่งอย่างที่ต้องรันและคอยอัปเดตแพตช์ โปรดสังเกตความขัดแย้งนี้ หากมีเว็บเซิร์ฟเวอร์ใช้งาน TCP 443 บน IP address นั้นอยู่แล้ว บริการใดบริการหนึ่งจะต้องย้ายพอร์ต

คุณมีระบบ certificate authority ใช้งานอยู่แล้ว OpenVPN ยืนยันตัวตนด้วย X.509 certificates จึงสามารถนำไปรวมเข้ากับ PKI (public key infrastructure) ที่คุณใช้งานอยู่ได้ทันที ใบรับรองมีวันหมดอายุในตัว และคุณสามารถเพิกถอนใบรับรองได้โดยการเพิ่มลงใน certificate revocation list ซึ่งเซิร์ฟเวอร์จะอ่านผ่าน crl-verify ส่วน WireGuard ไม่มีใบรับรอง ไม่มีวันหมดอายุ และไม่มีรายการเพิกถอน การลบ peer ออกหมายถึงการแก้ไขไฟล์ config ของเซิร์ฟเวอร์แล้วโหลดใหม่ หากมี peer เพียง 10 รายก็ไม่มีปัญหา แต่หากมีถึง 400 รายและมีข้อกำหนดด้านการตรวจสอบ (audit) รูปแบบใบรับรองจะช่วยลดภาระงานให้คุณได้จริง

คุณต้องการระบุตัวตนผู้ใช้ ไม่ใช่แค่กุญแจ OpenVPN สามารถส่งต่อการยืนยันตัวตนไปยังระบบภายนอกด้วย auth-user-pass-verify หรือปลั๊กอินอย่าง openvpn-plugin-auth-pam.so ซึ่งเป็นวิธีที่ใช้เชื่อมต่อกับ LDAP หรือการยืนยันตัวตนสองชั้น (second factor) ด้วยรหัสผ่านแบบใช้ครั้งเดียว WireGuard ไม่มีแนวคิดเรื่องผู้ใช้เลย กุญแจจะอยู่ในไฟล์ config หรือไม่อยู่เท่านั้น หากความต้องการของคุณคือ "Sara ต้องกรอกรหัสจากโทรศัพท์ของเธอ" WireGuard ไม่สามารถรองรับการทำงานนี้ได้ด้วยตัวเอง

คุณต้องการ Layer 2 หรือไคลเอนต์สำหรับระบบเก่า OpenVPN ที่ใช้ dev tap สามารถทำ bridge เฟรม Ethernet ได้ ซึ่งจำเป็นสำหรับโปรโตคอลแบบ broadcast และเกม LAN รุ่นเก่า WireGuard ทำงานที่ Layer 3 เท่านั้นและจะเป็นเช่นนั้นตลอดไป นอกจากนี้ OpenVPN ยังมีไคลเอนต์บนฮาร์ดแวร์และระบบปฏิบัติการที่จะไม่มีวันรองรับแอป WireGuard เหตุผลทั้งสองประการนี้มีความสำคัญลดน้อยลงเรื่อยๆ และ dev tap ก็ไม่รองรับการทำงานร่วมกับ DCO ดังนั้นคุณจะต้องยอมรับประสิทธิภาพที่ช้าลงเมื่อเลือกใช้การทำ bridge

ต้นทุนจริงของการตั้งค่าทั้งสองแบบ

ตัวตนของ WireGuard ใช้คำสั่งเดียว วงเล็บมีความสำคัญ เพราะวงเล็บกำหนด file mode ก่อนที่จะสร้าง key:

(umask 077; wg genkey > private.key)
wg pubkey < private.key > public.key

ส่วนเทียบเท่าของ OpenVPN คือ certificate authority ที่คุณต้องดูแลเองตลอดระยะเวลาที่ VPN ยังใช้งานอยู่:

sudo apt install -y easy-rsa
make-cadir ~/openvpn-ca
cd ~/openvpn-ca
./easyrsa init-pki
./easyrsa build-ca
./easyrsa gen-req server nopass
./easyrsa sign-req server server

รายการทั้งสองแบบไม่ได้กล่าวเกินจริง CA ช่วยให้กำหนดวันหมดอายุและเพิกถอน certificate ได้ แต่คุณต้องปกป้อง private key เป็นเวลาหลายปี ต้องจำกำหนดการต่ออายุ และต้องสร้างระบบใหม่หากทำ key สูญหาย หากคุณไม่ได้ใช้ประโยชน์จากความสามารถเหล่านี้ เท่ากับต้องรับภาระโดยไม่ได้ประโยชน์ ขั้นตอน WireGuard ฉบับเต็ม ซึ่งรวมการทำ forwarding, NAT (network address translation) และการแก้ handshake failures ที่อาจทำให้เสียเวลาทั้งบ่าย อยู่ใน คู่มือการโฮสต์ WireGuard VPN บน VPS ของคุณเอง

แต่ละรายการต้องตั้งค่าใดในไฟร์วอลล์ของคุณ

WireGuard ต้องใช้กฎขาเข้าเพียง 1 รายการสำหรับ UDP ที่พอร์ตใน ListenPort:

sudo ufw allow 51820/udp
sudo ufw status verbose

โดยค่าเริ่มต้น OpenVPN ต้องใช้ UDP 1194 หรือใช้ TCP 443 หากคุณเลือกเส้นทางนั้น จากนั้นทั้งสองโปรโตคอลต้องเปิดใช้การส่งต่อ IP และต้องมีกฎ source NAT เนื่องจากระบบ Linux จะทิ้งแพ็กเก็ตที่ไม่ได้ส่งมายังระบบนั้น ส่วนนี้เหมือนกันสำหรับทั้งสองโปรโตคอล และเป็นสาเหตุของรายงานส่วนใหญ่ที่ระบุว่า “อุโมงค์เชื่อมต่อแล้ว แต่ไม่มีอินเทอร์เน็ต” หากคุณยังไม่คุ้นเคยกับ ufw ให้เริ่มจาก พื้นฐานของไฟร์วอลล์ ufw บน VPS และโปรดทราบว่าผู้ให้บริการส่วนใหญ่มีไฟร์วอลล์เครือข่ายอีกชั้นหนึ่งในแผงควบคุม: กฎที่คุณเพิ่มบนเซิร์ฟเวอร์จะไม่มีผล หากแพ็กเก็ตไม่เคยมาถึงเซิร์ฟเวอร์ การทำความเข้าใจ พอร์ตคืออะไรและ Linux รับฟังพอร์ตอย่างไร จะช่วยให้ตรวจสอบทั้งสองส่วนได้รวดเร็วยิ่งขึ้น

วิธีเลือกในย่อหน้าเดียว

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

การย้ายจาก OpenVPN โดยไม่ให้บริการหยุดชะงัก

ไม่มีการแปลงโดยตรง PKI ของ OpenVPN ไม่สามารถเปลี่ยนเป็นคีย์ของ WireGuard ได้ เนื่องจาก WireGuard ไม่มีใบรับรองให้แปลง ลูกค้าแต่ละรายต้องสร้างคู่คีย์ใหม่ด้วยวิธีเดียวกับที่ใช้สร้างคู่คีย์ของเซิร์ฟเวอร์

ให้ย้ายระบบแบบขนานแทนการสลับระบบ WireGuard ที่ใช้ UDP 51820 และ OpenVPN ที่ใช้ 1194 สามารถทำงานบนเครื่องเดียวกันพร้อมกันได้ ดังนั้นให้เริ่มการทำงานของ wg0 ยืนยันการทำงานด้วย sudo wg show โดยตรวจสอบรายการ latest handshake ล่าสุด จากนั้นย้ายลูกค้าทีละราย เมื่อรายการเพียร์ของ OpenVPN ไม่มีการเปลี่ยนแปลงแล้ว ให้หยุดบริการด้วย sudo systemctl disable --now openvpn-server@server เก็บไฟล์ CA ไว้จนกว่าจะมั่นใจ เนื่องจากไม่สามารถสร้างลูกค้าที่ถูกเพิกถอนขึ้นใหม่โดยใช้ CA ที่ลบไปแล้วได้

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

FAQ

WireGuard เร็วกว่า OpenVPN หรือไม่?

บนเซิร์ฟเวอร์ Ubuntu 24.04 มาตรฐาน คำตอบคือใช่และเร็วกว่ามาก เนื่องจาก WireGuard ทำการเข้ารหัสในระดับ kernel ในขณะที่ OpenVPN 2.6 ต้องส่งผ่านทุกแพ็กเก็ตผ่านกระบวนการใน userspace สำหรับ OpenVPN 2.7 และโมดูล kernel ovpn จาก Linux 6.16 นั้น เส้นทางการรับส่งข้อมูลจะอยู่ในระดับ kernel เช่นกัน ทำให้ทั้งสองมีประสิทธิภาพอยู่ในระดับเดียวกัน คุณควรวัดผลด้วยตนเองโดยใช้ iperf3 ผ่านอุโมงค์เชื่อมต่อแทนการเชื่อตัวเลขจากบล็อก เนื่องจากบน VPS ข้อจำกัดมักอยู่ที่ CPU หรือปริมาณแบนด์วิดท์ที่คุณได้รับ

WireGuard สามารถทำงานผ่าน TCP port 443 ได้หรือไม่?

ไม่ได้ด้วยตัวมันเอง WireGuard ถูกออกแบบมาให้ใช้ UDP เท่านั้นและไม่มีแผนที่จะรองรับโหมด TCP หากต้องการใช้งานผ่านเครือข่ายที่อนุญาตเฉพาะ TCP 443 คุณต้องห่อหุ้มด้วยอุโมงค์อย่างเช่น wstunnel หรือ udp2raw ซึ่งจะเพิ่มภาระในการดูแลและแพตช์ซอฟต์แวร์ทั้งสองฝั่ง หากข้อจำกัดดังกล่าวเป็นสภาพแวดล้อมการทำงานปกติของคุณ การใช้ OpenVPN ร่วมกับ proto tcp-server และ port 443 จะเป็นทางเลือกที่ง่ายกว่าบนเครือข่ายที่คัดกรองเฉพาะพอร์ต อย่างไรก็ตาม พร็อกซีที่ตรวจสอบ HTTPS ก็ยังสามารถตรวจพบและบล็อกการเชื่อมต่อได้อยู่ดี

ปัจจุบัน OpenVPN ไม่ปลอดภัยแล้วใช่หรือไม่?

ไม่จริง OpenVPN เวอร์ชันปัจจุบันที่ใช้ AEAD cipher เช่น AES-256-GCM และเปิดใช้งาน tls-crypt ถือเป็น VPN ที่มีความมั่นคงปลอดภัย เหตุผลที่ควรเลือก WireGuard มาจากปัจจัยอื่น: OpenVPN มีโค้ดและตัวเลือกการตั้งค่าจำนวนมากเกินไป ทำให้ผู้ดูแลระบบที่เหนื่อยล้ามีโอกาสตั้งค่าผิดพลาดได้ง่ายกว่า ตัวเลือกที่น้อยกว่าหมายถึงโอกาสในการตั้งค่าผิดพลาดที่น้อยลง

ควรเลือกอะไรสำหรับ VPN ส่วนตัวบน VPS?

ควรเลือก WireGuard เพราะใช้เพียงหนึ่งคู่กุญแจต่ออุปกรณ์, ไฟล์คอนฟิกขนาดประมาณสิบบรรทัด, เปิดพอร์ต UDP เพียงพอร์ตเดียว และการทำ handshake ที่เสร็จสิ้นก่อนที่คุณจะทันสังเกตเห็น ให้เลือก OpenVPN เฉพาะในกรณีที่คุณต้องเชื่อมต่อจากเครือข่ายที่บล็อก UDP เป็นประจำ หรือหากคุณจำเป็นต้องใช้งานร่วมกับ certificate authority หรือ user directory ที่มีอยู่เดิมเท่านั้น