Ubuntu14.04用PPTP搭建VPN
阿新 • • 發佈:2019-01-26
採用PPTP搭建VPN,優點是配置簡單快捷。將親身過程記錄下來供親們參考,並將過程中遇到的問題也一一列舉出來解決方式。。。
準備工作
1.先看看你的主機是否支援pptp,返回結果為yes就表示通過。
modprobe ppp-compress-18 && echo yes
2 .是否開啟了TUN,有的虛擬機器主機需要開啟,返回結果為cat: /dev/net/tun: File descriptor in bad state。就表示通過cat /dev/net/tun
開始安裝
1.第一步需要安裝PPTP,以用來提供VPN服務.
sudo apt-get install pptpd
如果有問題的話比如提示找不到之類的,apt-get update 一下應該就可以了,然後再來一次就會自動完成安裝。2.裝好了之後我們需要進行配置一下以讓它可以使用.
sudo vi /etc/pptpd.conf
分別是通過VPN連線後主機和客戶端所使用的IP,可以自行修改。注意這個IP在下面還會用的到。取消掉以下 2 行的註釋: localip 192.168.0.1 remoteip 192.168.0.234-238,192.168.0.245
sudo vi /etc/ppp/options.pptpd #編輯,儲存
name pptpd #自行設定的VPN伺服器的名字,可以任意 #refuse-pap #拒絕pap身份驗證 #refuse-chap #拒絕chap身份驗證 #refuse-mschap #拒絕mschap身份驗證 require-mschap-v2 #為了最高的安全性,我們使用mschap-v2身份驗證方法 require-mppe-128 #使用128位MPPE加密 ms-dns 8.8.8.8 #設定DNS ms-dns 8.8.4.4 proxyarp #啟用ARP代理,如果分配給客戶端的IP與內網絡卡同一個子網 #debug #關閉debug lock nobsdcomp novj novjccomp #nologfd #不輸入執行資訊到stderr logfile /var/log/pptpd.log #存放pptpd服務執行的的日誌
3.然後我們需要分配賬號給自己使用.
sudo vi /etc/ppp/chap-secrets
這個是使用者列表檔案
在裡面新增賬戶按如下格式
username pptpd "password" *
username為你的使用者名稱password為你的密碼,<strong>密碼用引號引起</strong>,最後的*號表示允許在任意IP連線到服務
4.至此服務弄好了,如果你sudo service pptpd restart一下,就應該已經能連線到該VPN了,但是連線了之後會發現還訪問不了外網。然後我們需要讓他能訪問外網。首先,
sudo vi /etc/ppp/pptpd-options 找到ms-dns,取消掉註釋,改成你喜歡的DNS比如114.114.114.114, 8.8.8.8, 8.8.4.4
5.然後我們要開啟核心IP轉發
sudo vi /etc/sysctl.conf
取消掉 net.ipv4.ip_forward=1 這一行的註釋.
修改立即生效
sysctrl -p
6.然後我們需要安裝iptables,用來實現請求的NAT轉發
sudo apt-get install iptables
然後開啟NAT轉發.
sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o bond0 -j MASQUERADE
192.168.0.0/24是你在上面設定的IP段,讓這個段轉發
注意bond0是你連線外網的那塊網絡卡,不一定是0也有可能是1或者看你的機器哪塊網絡卡連的外網了。這樣就以NAT的方式請求外網的東西了。不知道你的機器哪塊網絡卡連的外網的話ifconfig一下看看哪個網絡卡是外網IP就知道了。
7.最後,我們需要重啟服務,讓配置生效 .
sudo service pptpd restart
除錯:619錯誤
1、請檢查上面的配置是否全部正常執行完畢
2、執行下面的命令嘗試修復
rm /dev/ppp
mknod /dev/ppp c 108 0
3、若還是不行,執行下面的命令編輯pptpd.conf,並找到logwtmp,前面加#註釋掉,再重啟服務
vi /etc/pptpd.conf
4、請檢查你的路由器是否支援PPTP穿透,請嘗試連線公用VPN測試,或更換路由器測試,或直接連線寬頻測試,若確實是路由器不支援PPTP穿透,可以嘗試搭建L2TP VPN
5、檢查使用者名稱密碼是否有誤
注意上面修改檔案sudo vi /etc/ppp/chap-secrets時,要給密碼加上引號,這一點很重要
6、請向服務提供商詢問是否支援搭建VPN