Topik ini menjelaskan cara mengonfigurasi koneksi antara server PPTP VPN dan klien PPTP VPN pada instance Elastic Compute Service (ECS) yang menjalankan sistem operasi CentOS 7.
Informasi latar belakang
Point-to-Point Tunneling Protocol (PPTP) adalah teknologi terowongan jaringan berbasis Point-to-Point Protocol (PPP) yang digunakan dalam VPN. Untuk terhubung ke VPN melalui PPTP, lakukan langkah-langkah berikut: hubungi server PPTP untuk menetapkan koneksi PPP, lakukan negosiasi PPTP untuk membuat terowongan antara klien dan server, kemudian lakukan negosiasi Protokol Kontrol Jaringan PPP (NCP) untuk menetapkan alamat IP dari rentang alamat IP VPN ke klien. Anda dapat menggunakan alamat IP yang ditetapkan untuk berkomunikasi di dalam VPN. Dengan cara ini, Anda dapat menetapkan terowongan atau koneksi aman ke VPN melalui Internet.
Topik ini memberikan contoh dan panduan untuk prosedur di atas. Operasi mungkin bervariasi berdasarkan kondisi aktual. PPTP memiliki masalah keamanan. Kami menyarankan Anda mengevaluasi dampak dari masalah tersebut pada bisnis Anda sebelum menggunakan PPTP. Untuk informasi lebih lanjut, lihat PPTP Client.
Konfigurasikan server PPTP VPN
Hubungkan ke instance ECS CentOS yang ingin Anda gunakan sebagai server PPTP VPN dan ikuti langkah-langkah berikut untuk mengonfigurasi server PPTP VPN. Untuk informasi tentang cara menghubungkan ke instance ECS, lihat Hubungkan ke Instance.
Prasyarat
Instance ECS telah dibuat. Untuk informasi tentang cara membuat instance ECS, lihat Buat Instance pada Tab Peluncuran Kustom.
Dalam bagian berikut yang menjelaskan cara mengonfigurasi server PPTP VPN, instance ECS dengan konfigurasi berikut digunakan. Untuk mencegah kesalahan perintah akibat perbedaan versi sistem operasi, kami sarankan Anda menggunakan versi sistem operasi dalam prasyarat.
Tipe Instance: ecs.c6.large
Sistem Operasi: Citra Publik CentOS 7.2
Jenis Jaringan: Virtual Private Cloud (VPC)
Alamat IP: Alamat IP Publik
Aturan arah masuk telah ditambahkan ke grup keamanan instance ECS untuk mengizinkan lalu lintas pada port 1723 dan port Generic Routing Encapsulation (GRE). Untuk informasi lebih lanjut, lihat Kelola Aturan Grup Keamanan.
Konfigurasikan PPTP
Instal server PPTP VPN.
Jalankan perintah berikut pada instance ECS yang telah Anda persiapkan dalam prasyarat untuk menginstal server PPTP VPN:
yum install -y ppp pptpdUbah file konfigurasi daemon PPTP (pptpd).
Tentukan blok CIDR dari mana alamat IP dapat ditetapkan ke klien server PPTP VPN. Ini memastikan bahwa setiap perangkat yang terhubung ke server dapat memperoleh alamat IP unik.
Jalankan perintah
vim /etc/pptpd.confuntuk membuka file konfigurasi dan tambahkan konfigurasi berikut ke file:localip 192.168.0.1 remoteip 192.168.0.230-238CatatanUntuk parameter localip, tentukan alamat server PPTP VPN. Dalam banyak kasus, kami sarankan Anda menentukan alamat IP pribadi server. Konfigurasikan parameter localip berdasarkan skenario bisnis aktual Anda.
Untuk parameter remoteip, tentukan blok CIDR dari mana Anda ingin menetapkan alamat IP ke klien server PPTP VPN. Untuk mencegah konflik IP, pastikan alamat IP dalam blok CIDR tidak digunakan oleh perangkat lain. Konfigurasikan parameter remoteip berdasarkan skenario bisnis aktual Anda.
Periksa isi file konfigurasi. Gambar berikut menunjukkan isi file konfigurasi setelah Anda menambahkan konfigurasi di atas.

Konfigurasikan pengaturan Domain Name System (DNS).
Untuk memastikan bahwa klien yang terhubung ke server PPTP VPN dapat menyelesaikan nama domain, tambahkan server DNS.
Jalankan perintah
vim /etc/ppp/options.pptpduntuk membuka file /etc/ppp/options.pptpd dan tambahkan konfigurasi berikut ke file:ms-dns 223.5.5.5 ms-dns 223.6.6.6Catatan223.5.5.5 dan 223.6.6.6 adalah alamat IP server DNS publik Alibaba Cloud. Anda dapat menetapkan ms-dns ke alamat IP server DNS lain berdasarkan kebutuhan bisnis Anda.
Periksa isi file. Gambar berikut menunjukkan isi file setelah Anda menambahkan konfigurasi di atas.

Buat pengguna.
Buat pengguna untuk otentikasi identitas klien. Saat klien terhubung ke server PPTP VPN, server melakukan otentikasi identitas untuk klien untuk memastikan hanya pengguna yang berwenang yang dapat mengakses sistem melalui dial-up atau koneksi jaringan.
Jalankan perintah
vim /etc/ppp/chap-secretsuntuk mengonfigurasi nama pengguna dan kata sandi untuk proses pptpd. Tambahkan akun dalam format<Username> pptpd <Password> <IP address>ke file /etc/ppp/chap-secrets berdasarkan kebutuhan bisnis Anda. Pisahkan item dengan spasi dan tambahkan hanya satu akun di setiap baris.CatatanContoh: test pptpd 123456 *. Karakter wildcard asterisk (*) menunjukkan semua alamat IP.
test pptpd 123456 *Periksa isi file. Gambar berikut menunjukkan isi file setelah Anda menambahkan konfigurasi di atas.

Ubah unit transmisi maksimum (MTU).
MTU digunakan untuk mengoptimalkan kinerja jaringan, mengurangi segmen, dan meningkatkan efisiensi transmisi data.
Jalankan perintah
vim /etc/ppp/ip-upuntuk membuka file /etc/ppp/ip-up dan tambahkan konfigurasi berikut ke file untuk mengubah MTU:ifconfig ppp0 mtu 1472Periksa isi file. Gambar berikut menunjukkan isi file setelah Anda menambahkan konfigurasi di atas.

Mulai PPTP.
Jalankan perintah berikut untuk memulai PPTP dan mengonfigurasi PPTP untuk mulai saat startup sistem:
systemctl start pptpd systemctl enable pptpd.service
Aktifkan pengalihan IP
Untuk mengizinkan sistem melakukan pengalihan IP, lakukan langkah-langkah berikut:
Jalankan perintah berikut untuk mengaktifkan pengalihan IP:
echo "net.ipv4.ip_forward = 1" >>/etc/sysctl.confPeriksa isi file konfigurasi sysctl.conf. Gambar berikut menunjukkan isi file konfigurasi setelah Anda menambahkan konfigurasi di atas.

Jalankan perintah
sysctl -pagar konfigurasi diterapkan.
Konfigurasikan firewall iptables
Anda dapat menggunakan firewall iptables untuk mengonfigurasi aturan yang mengontrol lalu lintas jaringan arah masuk dan keluar. Misalnya, Anda dapat mengonfigurasi beberapa komputer untuk berbagi satu alamat IP untuk akses Internet.
Nonaktifkan firewall.
systemctl stop firewalld systemctl mask firewalldInstal layanan iptables.
yum install -y iptables-servicesMulai layanan iptables dan konfigurasikan layanan untuk mulai saat startup sistem.
systemctl start iptables systemctl enable iptablesTambahkan aturan untuk mengizinkan koneksi PPTP.
# Terima permintaan koneksi TCP baru pada port 1723. iptables -I INPUT -p tcp --dport 1723 -m state --state NEW -j ACCEPT # Izinkan protokol GRE. Nomor protokol IP GRE adalah 47. iptables -I INPUT -p gre -j ACCEPTTambahkan aturan pengalihan iptables untuk mengimplementasikan penyamaran alamat sumber. Ganti
192.168.0.0/24dengan blok CIDR dari mana alamat IP ditetapkan ke klien PPTP VPN.iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADETambahkan aturan pengalihan NAT untuk menerjemahkan alamat IP sumber paket dari blok CIDR klien ke alamat IP publik tertentu. Ganti
192.168.0.0/24dengan blok CIDR dari mana alamat IP ditetapkan ke klien PPTP VPN. GantiXXX.XXX.XXX.XXXdengan alamat IP publik instance ECS tempat server PPTP VPN berada.iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source XXX.XXX.XXX.XXXSimpan konfigurasi.
service iptables saveMulai ulang layanan iptables.
systemctl restart iptables
Konfigurasikan klien PPTP VPN
CentOS
Prasyarat
Instance ECS telah dibuat. Untuk informasi tentang cara membuat instance ECS, lihat Buat Instance pada Tab Peluncuran Kustom. Pada bagian berikut, instance ECS dengan konfigurasi berikut digunakan. Untuk mencegah kesalahan perintah akibat perbedaan versi sistem operasi, kami sarankan Anda menggunakan versi sistem operasi dalam prasyarat.
Tipe Instance: ecs.c6.large
Sistem Operasi: Citra Publik CentOS 7.2
Jenis Jaringan: VPC
Alamat IP: Alamat IP Publik
Prosedur
Hubungkan ke instance ECS. Untuk informasi lebih lanjut, lihat Hubungkan ke Instance.
Jalankan perintah berikut pada instance ECS untuk menginstal paket PPTP:
yum install -y ppp pptp pptp-setupJalankan perintah berikut untuk terhubung ke server PPTP VPN:
pptpsetup --create test --server [$IP] --username [$User] --password [$Password] --encrypt --startCatatanGanti [$IP] dengan alamat IP publik instance ECS tempat server PPTP VPN berada.
Ganti [$User] dengan nama pengguna pengguna yang Anda buat saat mengonfigurasi server PPTP VPN. Untuk informasi tentang cara mendapatkan nama pengguna, lihat langkah Buat Pengguna dalam bagian "Konfigurasikan Server PPTP VPN" topik ini.
Ganti [$Password] dengan kata sandi pengguna yang Anda buat saat mengonfigurasi server PPTP VPN. Untuk informasi tentang cara mendapatkan kata sandi pengguna, lihat langkah Buat Pengguna dalam bagian "Konfigurasikan Server PPTP VPN" topik ini.
Gambar berikut menunjukkan bahwa klien PPTP VPN terhubung ke server PPTP VPN.

Saat Anda diberi tahu bahwa
192.168.0.234ditetapkan ke klien Anda, jalankan perintah berikut. Anda dapat menemukan pengontrol antarmuka jaringan (NIC) ppp0 dalam output perintah.ifconfig | grep -A 10 pppGambar berikut menunjukkan bahwa perintah dijalankan sesuai harapan.

Windows
Prasyarat
Instance ECS telah dibuat. Untuk informasi tentang cara membuat instance ECS, lihat Buat Instance pada Tab Peluncuran Kustom. Pada bagian berikut, instance ECS dengan konfigurasi berikut digunakan. Untuk mencegah kesalahan perintah akibat perbedaan versi sistem operasi, kami sarankan Anda menggunakan versi sistem operasi dalam prasyarat.
Tipe Instance: ecs.c6.large
Sistem Operasi: Citra Publik Windows Server 2022
Jenis Jaringan: VPC
Alamat IP: Alamat IP Publik
Prosedur
Hubungkan ke instance ECS. Untuk informasi lebih lanjut, lihat Hubungkan ke Instance.
Klik ikon Start di pojok kiri bawah desktop dan pilih Settings. Di jendela Pengaturan Windows, klik Network & Internet. Di panel navigasi kiri jendela yang muncul, klik VPN. Di halaman VPN, klik Add a VPN connection.

Di kotak dialog Add a VPN connection, konfigurasikan dan simpan parameter berikut:
VPN provider: Pilih Windows (built-in).
Connection name: Tentukan nama koneksi VPN. Contoh: pptp.
Server name or address: Masukkan alamat IP publik atau nama domain server PPTP VPN.
VPN type: Pilih Point to Point Tunneling Protocol (PPTP).
Type of sign-in info: Pilih Nama pengguna dan kata sandi.
User name (optional): Masukkan nama pengguna pengguna yang Anda buat di server PPTP VPN.
Password: Masukkan kata sandi pengguna yang Anda buat di server PPTP VPN.

Di Panel Kontrol, pilih . Di jendela yang muncul, temukan koneksi VPN yang Anda buat.

Klik kanan koneksi VPN dan pilih . Di tab Networking di kotak dialog yang muncul, pilih Internet Protocol Version 4 (TCP/IPv4) dan klik Properties.

Di kotak dialog yang muncul, klik Advanced. Di tab IP Settings, hapus centang Use default gateway on remote network dan klik OK untuk menyimpan pengaturan.
PentingJika Anda tidak menghapus centang Gunakan gateway default pada jaringan remote, pengaturan gateway default lokal berubah setelah koneksi dial-up dibuat. Akibatnya, Anda tidak dapat mengakses Internet melalui koneksi tersebut.

Klik ikon Start dan pilih Settings. Di jendela Pengaturan Windows, klik Network & Internet. Di panel navigasi kiri jendela yang muncul, klik VPN. Di halaman VPN, klik Hubungkan untuk menetapkan koneksi VPN. Jika koneksi VPN ditetapkan, konfigurasi sudah benar.

FAQ
Apa yang harus saya lakukan jika saya tidak dapat membuka situs web di browser?
Jika Anda tidak dapat membuka situs web di browser Anda setelah menyiapkan PPTP VPN, menetapkan koneksi, dan berhasil ping nama domain situs web, pengaturan MTU Anda mungkin tidak valid. Anda dapat menggunakan salah satu metode berikut untuk menyelesaikan masalah:
Metode 1
Hubungkan ke server CentOS tempat VPN dikonfigurasi.
Jalankan perintah
ifconfig ppp0 mtu 1472.Periksa apakah situs web dapat dibuka di browser Anda. Jika situs web dibuka, masalah terselesaikan.
CatatanMetode 1 adalah solusi sementara untuk masalah tersebut. Untuk menyelesaikan masalah secara permanen, gunakan Metode 2.
Metode 2
Hubungkan ke server CentOS tempat VPN dikonfigurasi.
Jalankan perintah
vim /etc/ppp/ip-upuntuk membuka file/etc/ppp/ip-up.Tambahkan perintah
ifconfig ppp0 mtu 1472ke file/etc/ppp/ip-up.Output perintah berikut menunjukkan bahwa perintah telah ditambahkan.

Periksa apakah situs web dapat dibuka di browser Anda.
Jika situs web dibuka, masalah terselesaikan.
Apa yang harus saya lakukan jika saya mendapatkan alamat IP yang salah?
Setelah Anda terhubung ke VPN dari klien, Anda mendapatkan alamat IP NIC internal instance Anda alih-alih alamat IP yang ditetapkan oleh server VPN. Misalnya, klien VPN Anda bernama testvpn. Lakukan operasi berikut untuk menyelesaikan masalah.
Prosedur
Hubungkan ke server CentOS tempat VPN dikonfigurasi.
Jalankan perintah
vim /etc/ppp/peers/testvpnuntuk membuka file konfigurasi/etc/ppp/peers/testvpnklien PPP. Tambahkan parameternoipdefault, seperti yang ditunjukkan pada gambar berikut.
Jalankan perintah berikut untuk memulai ulang klien. Setelah Anda terhubung kembali ke VPN, Anda dapat memperoleh alamat IP yang benar.
poff testvpn pon testvpnCatatanSaat Anda memulai ulang klien, parameter
noipdefaultmungkin ditimpa oleh parameter yang diteruskan dari server. Jika parameternoipdefaultditimpa, periksa konfigurasi server.