คู่มือ

รัน VPN ของคุณเองบน VPS นอกชายฝั่ง

VPN เชิงพาณิชย์ให้คุณเชื่อถือนโยบายไม่เก็บบันทึกที่เขียนโดยทีมการตลาดของพวกเขา VPS ของคุณเองไม่มีอะไรให้บันทึกนอกจากสิ่งที่คุณกำหนดค่า นี่คือการตั้งค่า WireGuard ฉบับสมบูรณ์ — พร้อมรายการข้อแลกเปลี่ยนอย่างตรงไปตรงมา

ทำไม self-hosted ดีกว่า VPN เชิงพาณิชย์

"ไม่เก็บบันทึก" ของ VPN เชิงพาณิชย์คือ นโยบาย. การไม่เก็บบันทึกของ VPS คุณเองคือ สถาปัตยกรรม. ความแตกต่างนั้นสำคัญกว่าใบรับรองการตรวจสอบใดๆ:

  • ผู้ให้บริการ VPN เห็นทุกอย่างโดยการออกแบบ ทราฟฟิกของผู้ใช้หลายพันคนสิ้นสุดบนเซิร์ฟเวอร์ที่บริษัทควบคุมอย่างสมบูรณ์ คำสั่งที่ถูกปิดผนึกบวกกับการเปลี่ยนแปลงการบันทึกล็อกอย่างเงียบๆ นั้นมองไม่เห็นสำหรับคุณ — และมันเคยเกิดขึ้นมาก่อน กับผู้ให้บริการที่คุณเคยได้ยินชื่อ
  • บน VPS ของคุณเอง คุณควบคุมทั้งสแตก sshd ของคุณ, ดิสก์ของคุณ, คอนฟิก WireGuard ของคุณ เราไม่รันอะไรภายในเกสต์ของคุณและไม่เก็บบันทึกกิจกรรมหรือการเชื่อมต่อฝั่งเครือข่าย เราไม่สามารถมองเข้าไปใน VPS ของคุณได้; บริษัท VPN ถูกนิยามด้วยการมองเข้าไปในอุโมงค์ของมัน
  • เขตอำนาจศาลทำงานเพื่อคุณ ทางออกของคุณอยู่ที่ที่คุณติดตั้งมัน — นอกพันธมิตรเฝ้าระวังหากคุณเลือก ภายใต้การปกครองของศาลในเขตโฮสติ้งแทนที่จะเป็นประเทศบ้านเกิดของบริษัท VPN

และข้อแลกเปลี่ยนที่ตรงไปตรงมา: VPN แบบ self-hosted มี IP เฉพาะที่เป็นของคุณคนเดียว เว็บไซต์จะไม่ติดธงว่าเป็น VPN (การอัปเกรดคุณภาพชีวิตอย่างแท้จริง) แต่ทราฟฟิกทั้งหมดของคุณใช้ที่อยู่เดียว — คุณไม่ได้กลืนไปกับฝูงชนหลายพันคน หากความต้องการคือความไม่เปิดเผยตัวแบบฝูงชน ใช้ Tor หากความต้องการคือโครงสร้างพื้นฐานที่เชื่อถือได้ ไม่มีอะไรดีไปกว่ากล่องที่คุณควบคุม

สิ่งที่เรากำลังสร้าง

โทรศัพท์และแล็ปท็อป → อุโมงค์ WireGuard → SV-Pro ในโลเคชันที่คุณเลือก → อินเทอร์เน็ตเปิด การส่งต่อ IPv4 พร้อม NAT บนเซิร์ฟเวอร์, การรูตแบบ full-tunnel บนไคลเอนต์ (0.0.0.0/0), DNS ผ่าน 9.9.9.9. ตัวอย่าง IP เซิร์ฟเวอร์ตลอดทั้งคู่มือ: 185.220.101.14 — เปลี่ยนเป็นของคุณ ระบบปฏิบัติการพื้นฐานคือ Debian 13; หากคุณยังไม่ได้ทำให้กล่องแข็งแกร่ง ให้ทำ เช็กลิสต์ 30 นาที ก่อน แล้วกลับมาที่นี่

การตั้งค่าเซิร์ฟเวอร์บน Debian 13

ติดตั้งและสร้างคีย์

apt update && apt install -y wireguard qrencode

cd /etc/wireguard
umask 077

# server keypair
wg genkey | tee server.key | wg pubkey > server.pub

# one keypair per client device (laptop shown; repeat for phone)
wg genkey | tee laptop.key | wg pubkey > laptop.pub

การสร้างคีย์ไคลเอนต์บนเซิร์ฟเวอร์เป็นที่ยอมรับสำหรับการตั้งค่าครั้งแรก เพราะคุณโอนย้ายคอนฟิกผ่าน SSH อยู่แล้ว สำหรับสุขอนามัยที่เข้มงวดกว่า สร้างคีย์บนแต่ละอุปกรณ์และวางเฉพาะคีย์สาธารณะลงในคอนฟิกเซิร์ฟเวอร์

เขียน wg0.conf

# /etc/wireguard/wg0.conf
[Interface]
Address    = 10.10.0.1/24
ListenPort = 51820
PrivateKey = <contents of server.key>
PostUp     = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown   = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

# laptop
[Peer]
PublicKey  = <contents of laptop.pub>
AllowedIPs = 10.10.0.2/32

# phone — repeat the block with 10.10.0.3/32

ตรวจสอบชื่ออินเทอร์เฟซ uplink ของคุณด้วย ip route | grep default — บนอิมเมจ VPSRento คือ eth0, แต่หากของคุณต่างไป ปรับบรรทัด MASQUERADE

เปิดใช้งานการส่งต่อและเริ่ม

# turn on IPv4 forwarding, persist across reboots
echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/99-wireguard.conf
sysctl -p /etc/sysctl.d/99-wireguard.conf

# firewall: one UDP port, nothing else
ufw allow 51820/udp comment 'WireGuard'

# bring it up, now and on boot
systemctl enable --now wg-quick@wg0
wg show

wg show ควรพิมพ์อินเทอร์เฟซ, พอร์ตที่ฟัง และ peers ของคุณ ยังไม่มีบรรทัด handshake — จะปรากฏเมื่อไคลเอนต์เชื่อมต่อ

การกำหนดค่าไคลเอนต์

บนแล็ปท็อป, laptop.conf:

[Interface]
PrivateKey = <contents of laptop.key>
Address    = 10.10.0.2/32
DNS        = 9.9.9.9

[Peer]
PublicKey           = <contents of server.pub>
AllowedIPs          = 0.0.0.0/0, ::/0
Endpoint            = 185.220.101.14:51820
PersistentKeepalive = 25

AllowedIPs = 0.0.0.0/0, ::/0 ทุกอย่างถูกส่งผ่านอุโมงค์ — เปลี่ยนเป็น split tunnel ทีหลังได้ถ้าต้องการ PersistentKeepalive ทำให้เส้นทางยังทำงานผ่าน NAT ที่บ้าน สำหรับโทรศัพท์ ไม่ต้องพิมพ์อะไรเลย: สร้างไฟล์คอนฟิกของโทรศัพท์บนเซิร์ฟเวอร์แล้วแสดงเป็น QR โค้ดในเทอร์มินัลของคุณ:

# prints a scannable QR in the terminal — scan it with the WireGuard app
qrencode -t ansiutf8 < phone.conf

เปิดใช้งาน แล้วตรวจสอบจากไคลเอนต์ใดก็ได้: curl ifconfig.me ควรตอบกลับด้วย IP ของ VPS คุณ และการทดสอบ DNS leak ควรแสดงผู้ให้บริการของ 9.9.9.9 — ไม่ใช่ ISP ของคุณ

หมายเหตุประสิทธิภาพ

WireGuard ทำงานในเคอร์เนลและใช้ ChaCha20 — บนโหนด AMD EPYC อุโมงค์เดียวทำความเร็วจริงได้ 600–900 Mbps ผ่าน NAT ซึ่งหมายความว่ามันทำให้พอร์ตอิ่มตัวนานก่อนที่ CPU จะทำงานหนัก ข้อจำกัดที่แท้จริงไม่ใช่การเข้ารหัสเลย แต่คือเงื่อนไขแบนด์วิดท์ของแพลน VPN เป็นเรื่องของแบนด์วิดท์ล้วน: ทุกกิกะไบต์ที่คุณดาวน์โหลดถูกนับหนึ่งครั้งขาเข้าและหนึ่งครั้งขาออก บนแพลนที่คิดตามปริมาณการใช้ การคำนวณแบบนั้นสำคัญ บน SV-Pro — $19.99/เดือน ไม่จำกัดที่ 1 Gbps — ไม่สำคัญ นี่คือเหตุผลที่ SV-Pro เป็นแพ็กเกจที่เราแนะนำสำหรับผู้สร้าง VPN ลูกค้ารายหนึ่งใช้ครอบครัวทั้งหมดบน SV-Pro ตัวเดียวในอัมสเตอร์ดัมและยังไม่เจอขีดจำกัด

Multi-hop: เข้าที่อัมสเตอร์ดัม ออกที่เรคยาวิก

สำหรับเลเยอร์ที่สอง เชื่อม VPS สองเครื่องข้ามเขตอำนาจศาล โหนดเข้าที่ เนเธอร์แลนด์ ( latency ต่ำถึงคุณ) อุโมงค์ WireGuard ระหว่างเซิร์ฟเวอร์สองเครื่อง โหนดออกที่ ไอซ์แลนด์ (เขตอำนาจที่คุณต้องการให้ทราฟฟิกออกจาก) อุปกรณ์ของคุณเห็น endpoint เดียวในอัมสเตอร์ดัม อินเทอร์เน็ตเห็น IP ในเรคยาวิก โหนดเข้าเห็นเพียง ciphertext ที่ผ่านไป กลไกคือคอนฟิกเดียวกับที่คุณเพิ่งเขียน ซ้ำสองครั้ง — อินเทอร์เฟซ wg ที่สองบนโหนดเข้าซึ่ง default route ชี้ไปที่อุโมงค์ออก ต้นทุนคือ 40–60ms ของ latency ที่เพิ่มขึ้นและ VPS อีก $5.99–6.89 หนึ่งเครื่อง คุ้มเมื่อโมเดลภัยคุกคามมีงบประมาณ เป็นเพียงการตกแต่งเมื่อไม่มี

ข้อจำกัดที่ตรงไปตรงมา

  • ตอนนี้คุณคือผู้ดูแลระบบ การอัปเดต การหมุนคีย์ และ uptime เป็นหน้าที่ของคุณ unattended-upgrades และ รายการตรวจสอบการแข็งเกราะ ครอบคลุมส่วนใหญ่ ที่เหลือคือ apt upgrade เป็นครั้งคราวในวันอาทิตย์
  • IP เดียวคือตัวตนเดียว ผู้สังเกตการณ์สามารถเชื่อมโยงทุกอย่างที่ออกจากที่อยู่ของคุณ เมื่อสำคัญ ให้ redeploy ในตำแหน่งอื่น — 55 วินาทีต่อมาคุณมีทางออกใหม่และ IP ใหม่ที่ตรวจสอบกับ blacklist 40+ รายการแล้ว
  • VPS ไม่ใช่ Tor การตั้งค่านี้ปกป้องคุณจาก ISP จาก Wi-Fi ที่ไม่เป็นมิตร และจากบริษัท VPN ต่อศัตรูระดับรัฐที่เฝ้าทั้งสองปลายของอุโมงค์ การเชื่อมโยงเวลามีอยู่จริง รู้ว่าคุณกำลังสู้กับอะไร

อุโมงค์ของคุณ ไม่มีบันทึกของคุณ: ไม่มี

SV-Pro — 4 vCPU, 8 GB RAM, 1 Gbps ไม่จำกัด — ตัวเลือกของคนสร้าง VPN ที่ $19.99/เดือน รูทภายใน 55 วินาที

ไทย