How to install PPTP VPN Server in Open Suse Leap ? [Connect DINSTART UC2000-VG GSM GATWAY to PPTP VPN on VICIBOX]

 I never thought I need to use PPTP VPN server ever again as more advanced and more secure VPN technologies such as OpenVPN are up in the market and can be used. But recently one of my friends wanted to connect his DINSTAR UC2000-VG GSM Gateway to VICIbox 9 Dialer that is using OpenSUSE Leap 15. Dinstar UC2000-VG GSM Gateway just supports PPTP VPN connection so I needed to run PPTP on OpenSUSE Leap. I had some challenges with the setting of the firewall as I just thought I need to open the PPTPD port but actually, I needed to allow GRE as well. So here is how to set up and configure PPTP VPN in Suse Leap. I hope someone finds it useful. 

 Step1: Install PPTPD VPN Server package in SUSE Linux:

zypper install pptpd

Step2: Edit pptpd options for local IP and remote IP address range. 

vim /etc/pptpd.conf

ms-dns will be the server IP address in the VPN connection and we have assigned 21 IPs for our VPN clients. You can assign a DNS that here we have assigned public and IP addresses.

Step 3 - Edit options and allow mppe-128 protocol 

vim /etc/ppp/options.ppp0

(This file does not exist so you need to create it) 

name pptpd

Step4: Start and enable the PPTPD service.

systemctl start pptpd
systemctl enable pptpd

Step 5: Now it's time to allow PPTP Port. PPTPD service is using port 1723 UDP and TCP. so we allow the port permanently in the firewall. 

firewall-cmd --add-port 1723/tcp
firewall-cmd --add-port 1723/udp
firewall-cmd --permanent --add-port 1723/tcp
firewall-cmd --permanent --add-port 1723/udp

Step6: And tricky last part... You have to allow GRE in the firewall. 
I used yast firewall to allow GRE Service in VICIBOX 9 ( Open SUSE Leap 15 ) 

run following command and select and gre in the public zone 

yast firewall 

Thank you. I will put the video training on my youtube channel as well. if you are interested in such types of videos check them out.