Giao thức Tunneling Point-to-Point (PPTP) là giao thức của mạng ảo riêng và truyền dữ liệu trên cổng TCP 1723. Trong bài viết này mình sẽ hướng dẫn các bạn cách cài VPN Server PPTP trên Centos 6.
1. Yêu cầu tối thiểu
a. Công nghệ ảo hóa
Để cài theo hướng dẫn này, VPS của bạn phải ảo hóa theo công nghệ KVM hoặc OpenVZ. Nếu là công nghệ ảo hóa khác mình không chắc chắc, tuy nhiên bạn có thể thử cài đặt
b. Kiểm tra yêu cầu cài đặt
Nếu bạn sử dụng OpenVZ
Bạn phải bật TUN/TAP và PPP của VPS
Kiểm tra TUN/TAP
Bạn sử dụng lệnh sau
cat /dev/net/tun
Nếu bạn nhận được phản hồi cat: /dev/net/tun: File descriptor in bad state Có nghĩa là bạn đã bật thành công TUN/TAP.
Kiểm tra PPP
Bạn sử dụng lệnh sau
cat /dev/ppp
Nếu bạn nhận được phản hồi cat: /dev/ppp: No such device or address Có nghĩa là bạn đã bật thành công PPP.
2. VPN Server PPTP trên Centos 6
Sau khi đáp ứng các yêu cầu bên trên các bạn chạy các lệnh dưới đây để tiến hành cài đặt
yum install -y git cd /opt && git clone git://github.com/drewsymo/VPN.git cd VPN && bash vpn-setup-vanilla.sh reboot
Nếu bạn sử dụng OpenVZ vui lòng sử dụng thêm lệnh sau để VPN hoạt động
iptables -t nat -A POSTROUTING -j SNAT --to-source xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx là IP của VPS
Sau khi hoàn tất các lệnh trên bạn có thể truy cập vào VPN của mình bằng IP server với account
username: myuser password: mypass
Nếu không thể vào được hoặc sự cố nào bạn vui lòng xem cách hướng dẫn khắc phục ở mục 4
3. Thiết lập Account VPN Server PPTP
Pass mặc định sẽ như mục 2, tuy nhiên nếu bạn muốn đổi hãy edit file /etc/ppp/chap-secrets bạn cũng có thể thêm nhiều tài khoản tại đó.
4. Khắc phục lỗi không có mạng khi kết nối PPTP
Sử dụng lệnh
ifconfig eth0
Nó sẽ trả về eth0: error fetching interface information: Device not found
Nó chính là vấn đề, bởi vì trong script tự cài tôi sử dụng lệnh
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Nhưng mà nó không tìm thấy thiết bị eth0, nên không vào được mạng. Lúc này bạn thử
ifconfig -s
Lúc này mình nhìn thấy venet0 mình đoán nó có vai trò như eth0 đã nhắc bên trên.
Lúc này mình chạy lại lệnh để set lại
iptables -t nat -A POSTROUTING -o venet0 -j MASQUERADE service iptables save service iptables restart
Như vậy là đã khắc phục được tình trạng không vào mạng được khi kết nối vpn
5. Kết nối VPN PPTP trên máy tính và di động
a. Kết nối VPN PPTP trên Windows 10
Bạn vào Start -> Gõ VPN và chọn Change virtual private networks (VPN)
Chọn Add a VPN Connect và thiết lập các thông số như bạn đã khai báo
Sau đó bạn bấm connect là có thể kết nối.
b. Kết nối VPN PPTP trên Android
Trên điện thoại bạn tìm đến mục VPN và cấu hình tương tự như sau
Chúc các bạn thành công.