linux ×××配置說明linux
1、PPTP環境須要軟件包:服務器
1.Dkms
2.kernel_ppp_mppe MPPE
(Microsoft Point to Point Encryption,微軟點對點加密)
3.ppp
PPP(Point-to-Point Protocol,點到點協議)
4.pptpd
2、配置步驟以下:
1.
查看還需安裝哪些軟件,因爲RHEL 5 的 2.6.18 內核已經集成了MPPE和高版本的ppp
[root@viong ~]# rpm -q ppp
ppp-2.4.4-2.el5
[root@viong ~]# strings '/usr/sbin/pppd'|grep -i mppe|wc -l
42
檢查
PPP
是否支持
MPPE,
若結果顯示「
0
」則表示不支持,而「
30
」或更大的數字就表示支持。
[root@viong ~]# modprobe ppp-compress-18 && echo ‘ok! MPPE was found !’
ok! MPPE was found !
檢查內核
MPPE
補丁是否安裝成功:若結果顯示「
ok! MPPE was found !
」則表示成功
。
[root@viong ~]# rpm -q dkms
package dkms is not installed
[root@viong ~]# rpm -q pptpd
package pptpd is not installed
2.
安裝軟件
3.
修改pptpd.conf
配置參數
[root@viong soft]#
vi /etc/pptpd.conf
95 # (Recommended)
96 #localip 192.168.100.110
97 #remoteip 192.168.100.130-150
修改成:
95 # (Recommended)
96 localip 192.168.100.110
97 remoteip 192.168.100.130-150
注: /etc/pptpd.conf
經常使用配置
option /etc/ppp/options.pptpd
PPP組件將使用的配置文件;
stimeout 120
開始PPTP控制鏈接的超時時間,以秒計;
debug
把全部debug信息記入系統日誌/var/log/messages;
localip 192.168.1.10
服務器×××虛擬接口將分配的IP地址,可設置爲與×××服務器內網地址相同網段的IP,也可設置爲另外一網段的IP;
remoteip 192.168.1.11-30
客戶端×××鏈接成功後將分配的IP地址段,一樣可設置爲與×××服務器內網地址相同網段的IP地址段,也能夠設置爲另外一網段的IP地址段;
logwtmp
該功能項的做用是「使用wtmp記錄客戶端的鏈接與斷開信息
4.
修改options.pptpd
配置參數
/etc/ppp/options.pptpd 默認配置就ok
注:/etc/ppp/options.pptpd經常使用配置
name pptpd
pptpd server 的名稱。
refuse-pap
拒絕 pap 身份驗證模式。
refuse-chap
拒絕 chap 身份驗證模式。
refuse-mschap
拒絕 mschap 身份驗證模式。
require-mschap-v2
在端點進行鏈接握手時須要使用微軟的 mschap-v2 進行自身驗證。
require-mppe-128
MPPE 模塊使用 128 位加密。
ms-dns 61.139.2.69
ms-dns 202.98.96.68
ppp 爲 Windows 客戶端提供 DNS 服務器 IP 地址,第一個 ms-dns 爲 DNS Master,第二個爲 DNS Slave。
proxyarp
創建 ARP 代理鍵值。
debug
開啓調試模式,相關信息一樣記錄在 /var/logs/message 中。
lock
鎖定客戶端 PTY 設備文件。
nobsdcomp
禁用 BSD 壓縮模式。
novj
novjccomp
禁用 Van Jacobson 壓縮模式。
nologfd
禁止將錯誤信息記錄到標準錯誤輸出設備(stderr)
5.
修改chap-secrets
配置參數
[root@viong soft]#
vi /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client
server secret IP addresse
zhongyingnan
* 123 *
注:
zhongyingnan用戶帳號
*表明自動識別當前服務器主機名,也能夠手動配置
123 用戶密碼
*表明自動分配可用的IP地址,可根據須要指定IP地址
也能夠使用***user命令來進行配置:
# ***user add viong 123 添加一個viong用戶
6.
開啓路由轉發
由於×××客戶端在撥號後實際是經過服務器外網網卡進行數據通訊的,那麼要訪問內網網段的地址就必須開啓數據包轉發,使外網網卡的數據包可以轉發到內網網卡上
[root@viong soft]#
vi /etc/sysctl.conf
6 # Controls IP packet forwarding
7 net.ipv4.ip_forward = 0
修改成:
6 # Controls IP packet forwarding
7
net.ipv4.ip_forward = 1
[root@viong soft]#
sysctl -p /etc/sysctl.conf
路由轉發當即生效
7.
防火牆配置
對於默認開啓了SELinux認證:
需執行如下命令使pppd與pptp穿透SELinux
[root@viong soft]#
setsebool pppd_disable_trans 1
[root@viong soft]#
setssebool pptp_diable_trans 1
附上關閉SELinux認證方法:
編輯vi /etc/sysconfig/selinux文件,配置如下選項
SELINUX=
disabled
若是不重啓生效就執行如下命令使修改生效
[root@viong soft]#
setenforce 0
對於開啓了iptables過濾的主機,須要開放×××服務的端口:47 1723 和gre協議
編輯 /etc/sysconfig/iptables文件,加入如下規則
-A RH-Firewall-1-INPUT -p gre -j ACCEPT (這個協議我在2.6的防火牆開不通)
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 47 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 1723 -j ACCEPT
[root@viong soft]#
service iptables restart
重啓
iptables
直接生效
用Iptables
作NAT
服務
在×××客戶端成功撥號之後,本地網絡的默認網關會變爲×××服務器的×××內網地址,這樣會致使客戶端只可以鏈接×××服務器及其所在的內網,而不能訪問互聯網;
[root@viong ~]#
iptables -t nat -A POSTROUTING -s 192.168.126.0/24 -j SNAT --to 192.168.15.50
[root@viong ~]#
echo iptables -t nat -A POSTROUTING -s 192.168.126.0/24 -j SNAT --to 192.168.15.50 >>/etc/rc.local
加入到/etc/rc.local開機自動啓動
8.
啓動pptp
[root@viong ~]#
service pptpd restart
[root@viong ~]#
netstat -ntpl |grep 1723
tcp 0 0 0.0.0.0:1723 0.0.0.0:* LISTEN 2585/pptpd
3、
測試撥號是否成功
客戶端:
Win XP
C:\Documents and Settings\Administrator>
ipconfig
Windows IP Configuration
Ethernet adapter 本地鏈接:
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 172.168.100.183
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 172.168.100.127
PPP adapter test:
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 192.168.100.100
Subnet Mask . . . . . . . . . . . : 255.255.255.255
Default Gateway . . . . . . . . . : 192.168.100.100
C:\Documents and Settings\Administrator>
ping 192.168.100.110
Pinging 192.168.126.1 with 32 bytes of data:
Reply from 192.168.126.1: bytes=32 time=144ms TTL=127
Reply from 192.168.126.1: bytes=32 time=4ms TTL=127
Pinging www.a.shifen.com [119.75.216.20] with 32 bytes of data:
Reply from 119.75.216.20: bytes=32 time=33ms TTL=52
Reply from 119.75.216.20: bytes=32 time=27ms TTL=52
經過以上測試,說明已經成功生效了
.