เว็บโฮสติ้งหรือ VPS: แพ็กเกจของคุณรันเซิร์ฟเวอร์ VPN ได้หรือไม่
โฮสติ้งแบบแชร์ แอปที่จัดการให้ และเซิร์ฟเวอร์ที่จัดการเองให้การควบคุมเครือข่ายต่างกัน เปรียบเทียบสี่ความสามารถก่อนซื้อหรือย้ายอะไรก็ตาม
เว็บไซต์ที่ใช้งานได้เป็นหลักฐานว่าผู้ให้บริการเสิร์ฟ HTTP ได้ ไม่ใช่หลักฐานว่าคุณควบคุมเครื่องได้ ระหว่างแพ็กเกจแชร์ แอปพลิเคชันที่จัดการให้ และเซิร์ฟเวอร์ที่จัดการเองมีความต่างมากในสิ่งที่บัญชีทำกับเครือข่ายได้ ตัดสินใจว่าด้านใดของช่องว่างนั้นที่การออกแบบ VPN ของคุณต้องการก่อนจ่ายอีกปี สี่ความสามารถแยกสองกรณีนี้ และไม่มีข้อใดปรากฏในรายการราคา
แต่ละแพ็กเกจให้อะไรจริง ๆ
การเปรียบเทียบที่มีประโยชน์ไม่ใช่ราคาหรือขนาดดิสก์ แต่เป็นอำนาจ ถามว่าบัญชีเริ่มอะไรได้ เข้าถึงฟีเจอร์เคอร์เนลใด พอร์ตใดรับทราฟฟิกขาเข้า และทราฟฟิกที่อนุญาตออกไปที่อื่นได้อีกหรือไม่
ผลิตภัณฑ์โฮสติ้งส่วนใหญ่อยู่ในสามรูปแบบ และมีเพียงแบบสุดท้ายที่เป็นเซิร์ฟเวอร์อเนกประสงค์:
| Capability | Website plan | Self-managed server |
|---|---|---|
| Long-running custom process | Usually not permitted | Yours to run under a service manager |
| Virtual network interface | Almost never available | Present when the kernel module and privilege allow it |
| Arbitrary inbound port | Restricted to the web stack | Provider filtering still applies |
| Forwarding for clients | Not offered | Possible once routing and policy are configured |
บัญชีเชลล์เป็นแหล่งความสับสนตามปกติ การถ่ายโอนไฟล์หรือการเข้าถึงงานที่ตั้งเวลาไว้อาจดูเหมือนการดูแลระบบ ขณะที่โปรเซสถูกจำกัดอยู่ในไดเรกทอรีและชุดการดำเนินการที่อนุญาตจำนวนน้อย
สี่ความสามารถที่ชี้ขาดคำตอบ
พิจารณาตามลำดับ เพราะความล้มเหลวในขั้นแรกทำให้ส่วนที่เหลือไม่มีความหมาย
ประการแรก ซอฟต์แวร์ต้องทำงานเป็นโปรเซสอายุยาวที่อยู่รอดหลังการบำรุงรักษา ประการที่สอง การใช้งานต้องสร้างอินเทอร์เฟซเสมือนของตนเองได้ บน Linux โดยปกติหมายถึงการเปิด /dev/net/tun ด้วยสิทธิ์ผู้ดูแลที่เกี่ยวข้อง เอกสาร TUN/TAP ของเคอร์เนล อธิบายไว้ แม้การออกแบบ VPN ไม่ได้ใช้ทุกแบบ ประการที่สาม ไคลเอนต์ต้องเข้าถึงตัวรับฟังที่อยู่สาธารณะ ผ่านการขนส่งและพอร์ตที่คุณตั้งใจ และพร็อกซีย้อนกลับเว็บที่รับ HTTPS ไม่ได้บอกอะไรเกี่ยวกับโปรโตคอลที่ไม่เกี่ยวข้องบนหมายเลขเดียวกัน ประการที่สี่ ทราฟฟิกที่อนุญาตต้องไปต่อได้ พร้อมเส้นทาง การส่งต่อ และการแปลใด ๆ ที่รองรับจริง
ข้อกำหนดการให้บริการอยู่ข้าง ๆ ทั้งสี่ข้อนั้นและไม่ใช่เรื่องเทคนิคเลย ขีดจำกัดทราฟฟิกแบบไม่จำกัดมักอธิบายคำขอเว็บ ไม่ใช่ทันเนลที่บรรทุกการดาวน์โหลดของผู้อื่น อ่านส่วนการใช้งานที่ยอมรับได้ก่อนออกแบบโดยอิงมัน และจำการเข้าถึงเพื่อกู้คืนไว้สำหรับวันที่บริการไม่เริ่มทำงาน
บัญชีเว็บไซต์สิ้นสุดตรงไหน
แพ็กเกจเว็บไซต์มักรันโค้ดของคุณในรันไทม์ที่จัดการให้ซึ่งมีจุดเข้าที่คงที่ แม้มีไบนารีทันเนล โปรเซสอาจไม่มีสิทธิ์เปิดโหนดอุปกรณ์ ผูกพอร์ตพิเศษ หรือแก้ไขตารางเส้นทาง ข้อจำกัดเหล่านั้นคือตัวผลิตภัณฑ์ ไม่ใช่ความหลงลืม
นั่นคือเหตุผลที่ปลั๊กอินที่สัญญาว่าจะให้ VPN มักกลายเป็นพร็อกซีไปที่อื่น ถ้าบัญชีปัจจุบันให้เฉพาะการควบคุมเว็บไซต์ ก้าวที่ซื่อตรงคือเซิร์ฟเวอร์แยก ไม่ใช่การค้นหาโมดูลที่ปลดล็อกอำนาจที่ขาดไป
เมื่อโฮสต์เดียวต้องรันทั้งสองอย่าง
การแบ่งปันเป็นไปได้และบางครั้งก็สมเหตุสมผล แต่จงถือเป็นการตัดสินใจด้านความปลอดภัย ไม่ใช่ความสะดวก แอปพลิเคชันเว็บที่มีฟอร์มอัปโหลดอยู่ข้างข้อมูลรับรองทันเนลและซ็อกเก็ตควบคุม และช่องโหว่ในอันหนึ่งไปถึงอีกอัน บัญชีแยก หน่วยบริการแยก และระบบไฟล์แยกช่วยลดการเปิดเผยนั้นโดยไม่ต้องซื้อเครื่องที่สอง
การแข่งขันเพื่อทรัพยากรก็สำคัญพอ ๆ กัน การสำรองข้อมูลผ่านทันเนลและโปรเซสเว็บที่ยุ่งอยู่แข่งขันกันเพื่ออัปลิงก์เดียวกันและดิสก์เดียวกัน และความล้มเหลวดูเหมือนไซต์ช้าไม่ใช่ทันเนลอิ่มตัว ตัดสินใจว่าภาระใดชนะก่อนเกิดเหตุ และจำกัดทันเนลเพื่อให้เว็บไซต์ตอบสนองต่อ
ไม่มีรูปแบบใดถือว่าแยกออกจากกันเพียงเพราะบริการทั้งสองทำงาน ความสามารถในการโฮสต์ทั้งสองร่วมกันเป็นจุดเริ่มต้นของการออกแบบ และงานแยกส่วนคือสิ่งที่ทำให้มันป้องกันได้
ตัดสินเรื่องนี้บนโฮสต์ทดลองด้วยสี่คำสั่ง
ก่อนย้าย เช่าอินสแตนซ์เล็กที่สุดของผลิตภัณฑ์เป้าหมายหนึ่งชั่วโมงและทดสอบสี่ความสามารถโดยตรง การเดาจากตารางคุณสมบัติเสียเงินน้อยกว่าหนึ่งปีกับแพ็กเกจผิด แต่เสียเวลามากกว่ามาก
รันคำสั่งเหล่านี้บนโฮสต์ทดลองและอ่านความล้มเหลวเป็นคำตอบ ไม่ใช่อุปสรรค:
ls -l /dev/net/tun
sudo ip tuntap add dev tun9 mode tun && sudo ip link del tun9
sysctl net.ipv4.ip_forward
ss -lunp | headสองบรรทัดแรกบอกว่าอุปกรณ์ทันเนลมีอยู่ได้หรือไม่ บรรทัดที่สามรายงานว่าโฮสต์ส่งต่อแพ็กเก็ตได้หรือไม่ และบรรทัดที่สี่แสดงว่าอะไรกำลังฟังอยู่แล้ว เพื่อจับความขัดแย้งของพอร์ตได้แต่เนิ่น ๆ ผู้ให้บริการที่ล้มเหลวในบรรทัดที่สองอาจยังรองรับการทำงานในพื้นที่ผู้ใช้ได้ ดังนั้นเมื่อถามฝ่ายสนับสนุนของพวกเขา จงระบุกลไกที่คุณต้องการ ไม่ใช่หมวดหมู่ผลิตภัณฑ์