PPTP VPN Server





from https://codertw.com/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80/38308/




http://blog.fens.me/ubuntu-vpn-pptp/
點對點隧道協議(PPTP)是VPN服務的一種最簡單的實現協議,其它常見的VPN型別還有:使用IPsec的第2層隧道協議(L2TP/IPsec)、安全套接字隧道協議(SSL VPN)。本文主要討論PPTP VPN服務在Ubuntu上的安裝和配置。
A.使用apt源服務來安裝PPTPD服務

sudo apt-get update
sudo apt-get install pptpd
B.安裝完成之後編輯pptpd.conf配置檔案

sudo vi /etc/pptpd.conf
#確保如下選項的配置
option /etc/ppp/pptpd-option                    #指定PPP選項檔案的位置
debug                                           #啟用除錯模式
localip 192.168.0.1                             #VPN伺服器的虛擬ip
remoteip 192.168.0.200-238,192.168.0.245        #分配給VPN客戶端的虛擬ip
C.編輯PPP選項配置檔案
sudo vi /etc/ppp/pptpd-options
#確保如下選項的配置
name pptpd                      #pptpd服務的名稱
refuse-pap                      #拒絕pap身份認證模式
refuse-chap                     #拒絕chap身份認證模式
refuse-mschap                   #拒絕mschap身份認證模式
require-mschap-v2               #允許mschap-v2身份認證模式
require-mppe-128                #允許mppe 128位加密身份認證模式
ms-dns 8.8.8.8                  #使用Google DNS
ms-dns 8.8.4.4                  #使用Google DNS
proxyarp                        #arp代理
debug                           #除錯模式
dump                            #服務啟動時列印出所有配置資訊
lock                            #鎖定TTY裝置
nobsdcomp                       #禁用BSD壓縮模式
logfile /var/log/pptpd.log      #輸出日誌檔案位置

接続用の設定

/etc/ppp/chap-secretsを設定する。 このファイルではPPTPサーバに接続するための認証情報を設定する。USERNAMEPASSWORDは自分で決めた値に読み替える。[TAB]はタブである。
USERNAME[TAB]*[TAB]PASSWORD[TAB]*


IPフォワーディングの設定

/etc/sysctl.confでIPv4のIPフォワーディングを有効にする設定をする。
net.ipv4.ip_forward=1
設定を反映するにはsysctl -pを実行する。
sysctl -p



D.編輯使用者配置檔案來新增使用者
sudo vi /etc/ppp/chap-secrets
#格式:使用者名稱   服務型別   密碼   分配的ip地址
test    *    1234    *
#第一個*代表服務可以是PPTPD也可以是L2TPD,第二個*代表隨機分配ip
E.重啟PPTPD服務

sudo service pptpd restart


至此,VPN搭建成功。 下一步是做NAT轉發。
F.配置網路和路由規則 設定ipv4轉發

sudo sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf
sudo sysctl -p
或者:$ vim /etc/sysctl.conf
編輯/etc/sysctl.conf檔案,找到net.ipv4.ip_forward=1,把這行的註釋開啟並儲存。
執行:sysctl -p 讓上面的修改立即生效。
設定iptables NAT轉發
(1)安裝iptables
$ apt-get install iptables

開放47、1723埠。
設定轉發:#注意這裡eth0代表你的外網網絡卡,請用ifconfig檢視或者諮詢網路管理員
sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
#如果上面的命令報錯,那麼可以嘗試以下的命令,其中xxx.xxx.xxx.xxx代表你的VPS外網ip地址
sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SNAT --to-source xxx.xxx.xxx.xxx



     iptables -t nat -A POSTROUTING -s 192.2.0.0/24 -o eno4 -j MASQUERADE
     iptables -t nat -A POSTROUTING -o eno4 -j MASQUERADE
     iptables -A FORWARD -i eno1 -o eno4 -m state --state RELATED,ESTABLISHED -j ACCEPT


設定MTU來確保過大的包不會被丟棄(這個可以不做)

sudo iptables -I FORWARD -s 192.168.0.0/24 -p tcp --syn -i ppp  -j TCPMSS --set-mss 1300
iptables的設定重啟之後會取消,所以可以將上面的命令加入到/etc/rc.local來確保每次重啟都會執行設定。
(4)再新增一個NAT,45.62.119.172就是你的vps的公網ip
$ iptables -t nat -A POSTROUTING -s 10.100.0.0/24 -j SNAT –to-source 45.62.119.172
(5)將iptables規則儲存,令重啟後規則不丟失:
$ iptables-save > /etc/iptables-rules
(7)安裝iptables配置持久化
$ apt-get install iptables-persistent
如何設定開機自動啟動:
解決辦法:
開啟/etc/rc.local檔案,在exit 0語句前加入:
sudo iptables -t nat -A POSTROUTING -s 192.168.150.0/24 -o eth0 -j MASQUERADE
sudo service pptpd start
(8)執行儲存配置命令
$ service iptables-persistent start
G.至此設定全部完成,可以用任意一個客戶端機器如MAC、PC或者手機來新建一個VPN連線使用使用者test,密碼1234進行測試。另外網上提供一種自動安裝指令碼,可以參見如下操作:

wget -c http://small-script.googlecode.com/files/debian-pptpd.tar.gz
tar -zxf debian-pptpd.tar.gz
sudo sh pptpd.sh
最後,如果想要實現更便利的使用者管理,請參見在Ubuntu上安裝FreeRADIUS服務





from https://discourse.osmc.tv/t/auto-starting-pptpd-on-boot/2110

auto start pptpd on boot
sudo systemctl enable pptpd













from https://blog.gtwang.org/windows/windows-7-pptp-vpn-setup-tutorial/

win7 vpn setup
STEP 1
在「控制台」中選擇「網路和網際網路」。
windows-7-pptp-vpn-setup-1
STEP 2
選擇「網路和共用中心」。
windows-7-pptp-vpn-setup-2
STEP 3
選擇「設定新的連線或網路」。
windows-7-pptp-vpn-setup-3
STEP 4
選擇「連線到工作地點」。
windows-7-pptp-vpn-setup-4
STEP 5
選擇「使用我的網際網路連線」。
windows-7-pptp-vpn-setup-5
STEP 6
輸入 VPN 伺服器的網路位址,可以直接輸入 IP 位址或是網址,然後為這個 VPN 連線取一個名字,填在「目的地名稱」中。
windows-7-pptp-vpn-setup-6
如果您不是立即都需要 VPN 連線,可以將「不要立即連線」的選項打勾,等需要的時候再手動開啟。
STEP 7
輸入 VPN 伺服器的帳號與密碼(架設 VPN 伺服器時所建立的帳號與密碼)。
windows-7-pptp-vpn-setup-7
STEP 8
接著就可以點選「立即連線」進行 VPN 連線了。
windows-7-pptp-vpn-setup-8
STEP 9
如果設定正確,連線成功之後,就可以存取內部網路的資源了。
windows-7-pptp-vpn-setup-9
STEP 10
若 VPN 的連線設定沒問題,之後我們就可以在系統圖示區的網路選單中控制 VPN 的連線了。
windows-7-pptp-vpn-setup-10








留言

熱門文章