
ที่มาภาพ: Unknown Source
วิธีตั้งค่า OpenVPN Server บน Raspberry Pi เพื่อสร้างเครือข่ายส่วนตัวปลอดภัย
⚡ สรุป 30 วิ
บทความนี้จะพาคุณตั้งค่า **OpenVPN Server** บน **Raspberry Pi** เพื่อสร้างเครือข่ายส่วนตัว (VPN) ที่ปลอดภัยและใช้ได้ทุกที่จากอินเทอร์เน็ต
Overview
บทความนี้จะพาคุณตั้งค่า OpenVPN Server บน Raspberry Pi เพื่อสร้างเครือข่ายส่วนตัว (VPN) ที่ปลอดภัยและใช้ได้ทุกที่จากอินเทอร์เน็ต คุณจะได้เรียนรู้ขั้นตอนตั้งแต่การติดตั้งระบบปฏิบัติการ ไปจนถึงการสร้างไฟล์รับรองและเชื่อมต่อจากอุปกรณ์คลไคลเอนต์
Prerequisites
ก่อนเริ่มคุณต้องเตรียมอุปกรณ์และซอฟต์แวร์พื้นฐานให้พร้อม
- Raspberry Pi 3/4 (หรือรุ่นที่รองรับ 64‑bit)
- การ์ด microSD อย่างน้อย 16 GB และ Power Supply ที่เหมาะสม
- การเชื่อมต่อ Internet สำหรับอัปเดตแพคเกจ
- คอมพิวเตอร์สำหรับ SSH หรือ Monitor + Keyboard เพื่อทำการตั้งค่าเบื้องต้น
- บัญชีผู้ใช้ sudo บน Pi
Install OS
เลือกระบบปฏิบัติการที่เหมาะกับการทำ VPN แล้วทำการติดตั้ง
- ดาวน์โหลด Raspberry Pi OS Lite (ไม่มี GUI) เพื่อลดภาระระบบ
- ใช้ Raspberry Pi Imager หรือ Balena Etcher เขียนไฟล์อิมเมจลงการ์ด microSD
- ตั้งค่า Wi‑Fi หรือ Ethernet ให้เชื่อมต่อได้ทันทีหลังบูต
- เปิด SSH โดยสร้างไฟล์ `ssh` ไว้ในโฟลเดอร์ `boot`
**Tip: หากต้องการทำงานแบบ headless ควรกำหนด static IP ให้ Pi เพื่อความสะดวกในการเข้าถึง
Update & Upgrade
อัปเดตระบบเป็นขั้นตอนสำคัญก่อนติดตั้งแพคเกจใด ๆ
- **ขั้นที่ 1: `sudo apt update`
- **ขั้นที่ 2: `sudo apt full-upgrade -y`
- **ขั้นที่ 3: `sudo reboot`
Install OpenVPN & Easy‑RSA
ใช้ `apt` ติดตั้ง OpenVPN พร้อมเครื่องมือสร้างคีย์
- `sudo apt install openvpn easy-rsa -y`
- สร้างโฟลเดอร์ทำงาน: `make-cadir ~/openvpn-ca`
- คัดลอกสคริปต์ Easy‑RSA ไปยังโฟลเดอร์ที่สร้าง
Configure PKI (Public Key Infrastructure)
การสร้างคีย์และใบรับรองเป็นหัวใจของ VPN
- **ขั้นที่ 1: `cd ~/openvpn-ca`
- **ขั้นที่ 2: แก้ไขไฟล์ `vars` เพื่อกำหนดค่า Country, Province, Org เป็นต้น
- **ขั้นที่ 3: รัน `./easyrsa init-pki` เริ่มต้นโฟลเดอร์ PKI
- **ขั้นที่ 4: `./easyrsa build-ca nopass` สร้าง Certificate Authority (CA)
- **ขั้นที่ 5: `./easyrsa gen-req server nopass && ./easyrsa sign-req server server` สร้างคีย์เซิร์ฟเวอร์และเซ็น
Server Configuration
ปรับไฟล์คอนฟิกเพื่อให้ OpenVPN ทำงานเป็นเซิร์ฟเวอร์
- คัดลอกไฟล์ตัวอย่าง: `gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf`
- แก้ไข `/etc/openvpn/server.conf` ให้ใช้ TLS‑auth, cipher AES‑256‑CBC, auth SHA256
- ระบุตำแหน่งไฟล์ CA, cert, key, dh (`dh.pem` หรือ `dh2048.pem`)
Enable IP Forwarding & Firewall
เพื่อให้แพ็กเกจจากคลไคลเอนต์ผ่านไปยังอินเทอร์เน็ตได้
- เปิด IP forwarding: `sudo sysctl -w net.ipv4.ip_forward=1`
- เพิ่มบรรทัด `net.ipv4.ip_forward=1` ไปที่ `/etc/sysctl.conf` เพื่อให้คงค่าถาวร
- ตั้งค่า iptables เพื่อทำ NAT:
``` sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE sudo iptables-save | sudo tee /etc/iptables/rules.v4 ```
Generate Client Certificates
สร้างคีย์และใบรับรองสำหรับอุปกรณ์ที่ต้องการเชื่อมต่อ
- `./easyrsa gen-req client1 nopass && ./easyrsa sign-req client client1`
- คัดลอกไฟล์ `ca.crt`, `client1.crt`, `client1.key`, `ta.key` ไปยังโฟลเดอร์ `~/client-configs/files`
Build Client Configuration File
รวมไฟล์คีย์และเซิร์ฟเวอร์ไว้ในไฟล์ `.ovpn` เดียวเพื่อความสะดวก
- สร้างไฟล์ `client.ovpn` โดยรวมส่วน `client`, `remote`, `proto udp`, `dev tun`
- ใส่บรรทัด `<ca> ... </ca>`, `<cert> ... </cert>`, `<key> ... </key>`, `<tls-auth> ... </tls-auth>`
Start OpenVPN Service
ทำให้ OpenVPN ทำงานอัตโนมัติเมื่อบูต
- `sudo systemctl start openvpn@server`
- `sudo systemctl enable openvpn@server`
- ตรวจสอบสถานะ: `sudo systemctl status openvpn@server`
Connect from Client
นำไฟล์ `client.ovpn` ไปวางในอุปกรณ์ที่ต้องการ (Windows, macOS, Android, iOS)
- ดาวน์โหลด OpenVPN Connect หรือ Tunnelblick ตามระบบปฏิบัติการ
- นำเข้าไฟล์ `client.ovpn` แล้วกด Connect
- หากเชื่อมต่อสำเร็จ คุณจะเห็น IP ภายใน `10.8.0.x`
Caution: ตรวจสอบให้แน่ใจว่า Port 1194/UDP** เปิดบนเราเตอร์และไม่ถูกบล็อกโดย ISP
Comparison of OS Choices
| ระบบปฏิบัติการ | ขนาด (GB) | GUI | ประสิทธิภาพ VPN | การอัปเดต |
|---|---|---|---|---|
| Raspberry Pi OS Lite | 1.5 | ไม่มี | สูง | apt |
| Ubuntu Server 22.04 | 2.0 | ไม่มี | สูง | apt |
| DietPi | 0.6 | ไม่มี | สูง | apt |
| OpenWrt (Pi) | 0.7 | มี (Web UI) | ปานกลาง | opkg |
ข้อสรุป: หากต้องการความเบาและอัพเดตง่าย Raspberry Pi OS Lite** เป็นตัวเลือกที่ดีที่สุด
Tips & Common Issues
- Port Forwarding: ตรวจสอบให้แน่ใจว่าเราเตอร์ได้ทำการ forward UDP 1194** ไปยัง IP ของ Pi
- **DNS Leak: เพิ่มบรรทัด `push "dhcp-option DNS 8.8.8.8"` ใน `server.conf` เพื่อบังคับ DNS ผ่าน VPN
- **Client Connection Fails: ดูไฟล์ล็อก `/var/log/syslog` หรือ `journalctl -u openvpn@server` เพื่อหาข้อผิดพลาด
- Performance: ใช้ Raspberry Pi 4** พร้อม USB‑3 SSD เพื่อเพิ่มความเร็วการเข้ารหัส
Summary
การตั้งค่า OpenVPN Server บน Raspberry Pi ไม่ซับซ้อนหากทำตามขั้นตอนต่อไปนี้
- เตรียมอุปกรณ์และติดตั้ง Raspberry Pi OS Lite
- อัปเดตระบบและติดตั้ง OpenVPN + Easy‑RSA
- สร้าง PKI (CA, server, client) และกำหนดค่า `server.conf`
- เปิด IP forwarding, ตั้ง iptables NAT, แล้วเริ่มบริการ
- สร้างไฟล์ client `.ovpn` พร้อมคีย์และเชื่อมต่อจากอุปกรณ์ใดก็ได้
ด้วยวิธีนี้คุณจะมี VPN ส่วนตัวที่ ปลอดภัย, เสถียร, และ ใช้งานได้หลายอุปกรณ์ บนเครือข่ายของคุณเอง.
แชร์บทความนี้:
ชอบบทความแบบนี้?
สมัคร AI Automate Weekly Newsletter — รับเคล็ดลับ AI + how-to ใหม่
ทุกสัปดาห์ตรงถึง inbox ฟรี ไม่มีสแปม
แหล่งข่าวต้นฉบับ
- ชื่อต้นฉบับ
- วิธีตั้งค่า OpenVPN Server บน Raspberry Pi เพื่อสร้างเครือข่ายส่วนตัวปลอดภัย
- ผู้เขียน
- กองบรรณาธิการ Thai Tech News
- แหล่ง
- บทความต้นฉบับ Thai Tech News · ช่วยร่างด้วย AI, เรียบเรียง/ตรวจสอบโดยกองบรรณาธิการ
- วันที่เผยแพร่
- 29 มิถุนายน 2569 เวลา 10:51
- URL ต้นฉบับ
- https://thaitech.news/articles/growth-685375



