แบบฝึกหัดนี้ที่ฉันเขียนจะแนะนำคุณตลอด ควรช่วยให้คุณหลีกเลี่ยงข้อผิดพลาดทั่วไปที่เกิดจากผู้ใช้ VPS
เข้าสู่ระบบครั้งแรกใน VPS แผงของคุณและเปิดใช้งานTUN / TAPและพรรคพลังประชาชน หากคุณไม่มีตัวเลือกดังกล่าวโปรดติดต่อ ISP ของคุณเพื่อเปิดใช้งานสิ่งนี้สำหรับคุณ
ก่อนติดตั้งแพ็คเกจนี้:
sudo apt-get install pptpd
เนื่องจากเราไม่ต้องการให้ VPN ของเราเป็นแบบสาธารณะเรากำลังจะสร้างผู้ใช้
ฉันใช้ VI คุณสามารถใช้ NANO หรือแก้ไขข้อความที่คุณต้องการ
vi /etc/ppp/chap-secrets
รูปแบบคือ
[username] [service] [password] [ip]
ตัวอย่าง
john pptpd johnspassword *
*
หมายถึงอนุญาตให้เข้าถึงจากที่อยู่ IP ทั้งหมดระบุ IP เฉพาะเมื่อคุณมีที่อยู่คงที่
การแก้ไขการตั้งค่า PPTPD
vi /etc/pptpd.conf
ค้นหาการตั้งค่า localip และ remoteip ลบ#
(อักขระความคิดเห็น) สำหรับทั้งคู่เพื่อให้การตั้งค่าเหล่านี้ได้รับการยอมรับจริง เปลี่ยน localip เป็น IP เซิร์ฟเวอร์ของคุณ หากคุณไม่ทราบ IP เซิร์ฟเวอร์ของคุณคุณอาจดูในแผงควบคุม VPS ของคุณ
remoteip นั้นเป็นช่วง IP ที่ไคลเอนต์ (คอมพิวเตอร์ที่เชื่อมต่อกับ VPN ของคุณ) จะถูกกำหนด ตัวอย่างเช่นหากคุณต้องการช่วง IP ต่อไปนี้: 192.168.120.231-235 เซิร์ฟเวอร์ VPN ของคุณจะสามารถกำหนด 192.168.120.232, 192.168.120.233, 192.168.120.234 และ 192.168.120.235 ให้กับลูกค้า มันขึ้นอยู่กับสิ่งที่คุณต้องการใช้สำหรับฟิลด์นี้
ส่วนตัวฉันเลือกการตั้งค่านี้:
localip 10.0.0.1
remoteip 10.0.0.100-200
ดังนั้นฉันสามารถเชื่อมต่อกับลูกค้าได้ประมาณ 200 คน
เพิ่มเซิร์ฟเวอร์ DNS ไปที่ /etc/ppp/pptpd-options
ms-dns 8.8.8.8
ms-dns 8.8.4.4
คุณสามารถเพิ่มได้ที่ส่วนท้ายของไฟล์หรือค้นหาบรรทัดเหล่านั้นยกเลิกการใส่เครื่องหมายข้อคิดเห็นและเปลี่ยน IP เป็น Public DNS ที่คุณต้องการ
ตั้งค่าการส่งต่อ
การเปิดใช้งานการส่งต่อ IP บนเซิร์ฟเวอร์ PPTP ของคุณเป็นสิ่งสำคัญ สิ่งนี้จะช่วยให้คุณสามารถส่งต่อแพ็กเก็ตระหว่าง IP สาธารณะและ IP ส่วนตัวที่คุณติดตั้งด้วย PPTP เพียงแก้ไข /etc/sysctl.conf และเพิ่มบรรทัดต่อไปนี้หากยังไม่มีอยู่:
net.ipv4.ip_forward = 1
หากต้องการให้การเปลี่ยนแปลงใช้งานได้ sysctl -p
สร้างกฎ NAT สำหรับ iptables
นี่เป็นส่วนสำคัญหากคุณใช้ VPS คุณอาจไม่ใช้ eth0 แต่ venet0 แทนคุณควรตรวจสอบว่าคุณใช้อินเตอร์เฟสใดบ้าง ifconfig
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE && iptables-save
หากคุณต้องการให้ไคลเอนต์ PPTP ของคุณคุยกันเพิ่มกฎ iptables ต่อไปนี้:
iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE
iptables -I INPUT -s 10.0.0.0/8 -i ppp0 -j ACCEPT
iptables --append FORWARD --in-interface eth0 -j ACCEPT
อีกครั้งคุณต้องแทนที่ eth0 ด้วย venet0 หากคุณใช้ VPS
ฉันอยากจะแนะนำให้ทำงาน
sudo iptables-save
ตอนนี้เซิร์ฟเวอร์ PPTP ของคุณยังทำหน้าที่เป็นเราเตอร์
คุณสามารถเรียกใช้คำสั่งนี้เพื่อให้บริการ VPN เริ่มต้นในการบู๊ต
systemctl enable pptpd
ฉันแนะนำให้ติดตั้ง iptables-persistent ดังนั้นกฎยังคงอยู่แม้หลังจากรีบูต
sudo apt-get install -y iptables-persistent