PPTP-***第一章——部署與簡單使用

  最近前遊戲同事搞了臺的VPS,貢獻出來作×××使用。目前流行的服務器×××軟件主要有PPTP ×××和Open***。Open***雖然功能較爲強大,且安全性高,支持nat穿越等等,但服務器端和客戶端配置都比PPTP ×××麻煩許多,因此此次咱們採用PPTP ×××實現咱們的需求,主要需求功能點以下:html

一、win七、win10客戶端可使用服務器進行撥號成功。(這是最基本的需求)mysql

二、用戶帳號使用mysql數據庫進行統一管理。(這個也很常見的需求)linux

三、對用戶帳號的使用流量按月進行限制。(畢竟不是財主,仍是要限制一下的。)sql

四、不容許一個帳號多臺電腦同時登錄。(很是現實的需求)
數據庫

下面咱們就在centos linux 6.8 64位系統上一一實現這些功能,本文主要實現第一個需求功能點:centos

win七、win10客戶端可使用服務器進行撥號,併成功×××。安全

 

1、安裝ppp和pptp軟件包,這裏採用rpm方式實現服務器

# yum install  -y perl ppp 
# rpm -ivh pptpd-1.3.4-2.el6.x86_64.rpm 
下載地址:https://zhidao.baidu.com/share/8c07231b0a82281d4085fd2a779cd8f0.html

2、配置文件修改iphone

一、options.pptpd文件爲PPTP ×××配置文件ide

# cd /etc/ppp
# cp options.pptpd options.pptpd.bak
# cat options.pptpd
name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
proxyarp
lock
nobsdcomp
novj
novjccomp
nologfd
idle 2592000
ms-dns 8.8.8.8
ms-dns 8.8.4.4

二、chap-secrets爲PPTP ×××默認的用戶名和密碼文件

# cp chap-secrets chap-secrets.bak
# cat chap-secrets
# Secrets for authentication using CHAP
# client        server    secret                        IP addresses
ptest1           pptpd     ptest1                           *     
ptest2           pptpd     ptest2                           *     
ptest3           pptpd     ptest3                           *

三、pptpd.conf文件爲PPTP ×××主配置文件

# grep -v '^#' /etc/pptpd.conf  |grep -v '^$'
option /etc/ppp/options.pptpd
logwtmp
localip 192.168.222.1
remoteip 192.168.222.10-254

3、啓動×××服務,配置防火牆nat規則,並開啓主機路由功能

# service pptpd restart
# iptables -t nat -A POSTROUTING -s 192.168.222.0/24  -j MASQUERADE
# sysctl net.ipv4.ip_forward 
net.ipv4.ip_forward = 1

4、撥號測試

一、win10客戶端

wKiom1d0yhrA6uRSAABsJzB5IG4769.png-wh_50

wKioL1d0yhqgpAKtAAAbli37nLk091.png-wh_50

wKiom1d0yhrDMYvuAAAh1Nw7WYw580.png-wh_50

二、iphone6s客戶端測試

wKioL1d0yizQ-WSAAACduSoek2A156.png-wh_50

wKiom1d0yi-w-WWjAATbJ6jjm8A870.png-wh_50



5、錯誤處理

撥號成功以後,/var/log/message日誌文件記錄以下日誌信息:

kernel: ppp: compressor dropped pkt

wKiom1d0ykDhCfmZAACkxxMcvAg655.png-wh_50

排查了一下,主要是mtu(最大傳輸單元)的問題,客戶端爲1394,服務器端爲1400,經過查看/etc/ppp/if-up配置文件發現系統中只要存在/etc/ppp/ip-up.local腳本且可執行,則客戶端撥號成功後這個腳本會自動被執行。

wKiom1d0yk-CMlI-AABqsWFzYmY318.png-wh_50

# cat /etc/ppp/ip-up.local
#!/bin/sh
CURRENT_MTU="$(ifconfig $1 | grep -Po '(?<=MTU:)([0-9]+)' | tail -1)"
FIXED_MTU="$(expr $CURRENT_MTU + 4)"
for network in $(ifconfig | grep -E "ppp" |awk '{print $1}')
do
  ifconfig $network mtu $FIXED_MTU
done
# chmod +x /etc/ppp/ip-up.local

至此,傳統的經過文件名認證的pptp ***已經部署完成。後續的幾個功能點將在下文中實現,盡情期待!

相關文章
相關標籤/搜索