說明:之前在windows下搭建***服務器時,只需要在網絡上找相應的資料,就可以實現,不用管什麼原理;今天實現在linux下搭建***服務器,以實現對內網的集羣進行訪問,發現用原來windows的老方法不行,還需要了解其中×××的原理才行;
概念:×××: virtual Private Network,又叫虛擬專用網絡,***的功能是將因特網虛擬成企業網絡來使用;×××網關採用雙網卡結構,外網卡使用公網IP接入internet,內網卡使用保留地址作爲內部IP地址
pptp:點到點隧道協議,是一種用於讓遠程用戶撥號連接到本地的ISP,通過因特網安全遠程訪問公司資源的一種技術,它將ppp(點到點協議)幀封裝成ip數據包,通過三次握手和四次揮手可以實現與×××功能,pptp使用tcp連接的創建,維護,與終止隧道,並使用gre(通用路由封裝)將ppp幀封裝成隧道數據
原理:外部的網絡電腦(大部分爲window客戶機)使用系統自建的***撥號軟件或×××設備來訪問×××服務器,並進行三次握手和四次揮手,並比對×××帳號的正確性,進行確認,進而實現連接。
linux下×××配置過程:
1、先檢查環境:
a.查看系統是否支持pptp:#modprobe ppp-compress-18 && echo success #如果輸出爲success則表示支持,如果顯示其他的,請進行#yum install –y kernel-devel的安裝
b.檢查是否開戶tun/tap : #正確的應該輸出爲:cat: /dev/net/tun: File descriptor in bad state
c.檢查是否開啓ppp: #正確地應該輸出爲:cat : /dev/ppp: no such device or address;最重要是這一步;
注:如果檢查環境不能滿足a,b,c三個條件,表示系統暫時不支持pptp;默認情況下,服務器都開啓了ppp;
2、安裝所需必要包
a.先安裝epel源
#yum install –y epel-release #默認情況下會安裝在/etc/yum.repos.d目錄下,安裝成功會產生文件epel-repo
b.再安裝ppp pptpd軟件
#yum install –y ppp pptpd net-tools #其中ppp,pptpd爲關鍵軟件,net-tools爲所需要的補丁包;
3.配置
a.主配置文件
其基本配置文件/etc/pptpd.conf,要進行如下操作:
#cp /etc/pptpd.conf{,.default} #對配置文件進行備份,生成pptpd.conf.default
#sed –i ‘s#$#localip 10.0.0.27\nremoteip 172.16.1.40#g’ /etc/pptpd.conf #向配置文件pptpd.conf的文件末尾添加二行,就可以了;
#vim /etc/pptpd.conf
option /etc/ppp/options.pptpd #指定pptdp擴展屬性配置文件options.pptpd
debug #開啓調試模式,有關pptp的信息和錯誤會記錄在/var/logs/message中,方便排錯和調試;
stimeout 30 #設置客戶端連接pptpd server時最長連接等待時間(連接超時時間):30秒
localip 10.0.0.27 #pptp服務器端ip,可以是內網,也可以是外網,我這裏設置的是外網IP;
remoteip 172.16.1.40-50 #客戶端成功連接×××獲取的IP地址範圍(最好在一個網段)
b.pptpd配置文件/etc/ppp/options.pptpd
#cp /etc/ppp/options.pptpd{,.default}
#sed –i ‘s#$#ms-dns 8.8.8.8\nms-dns 202.96.128.86#g’ /etc/ppp/options.pptpd //給×××客戶端增加DNS配置;
c.設置pptpd ***服務器訪問的用戶名和密碼
#cp /etc/ppp/chap-secrets{,.default}
#sed –i ‘s#$#ppp * 123456 *#g’ /etc/ppp/chap-secrets //其中ppp * 123456 * 表示用戶名 服務器名 密碼 分配的IP地址,如果爲*,表示隨機分配
d.設置服務器允許IP轉發內核
#sed –i ‘s#net.ipv4.ip_forward = 0#net.ipv4.ip_forward = 1#g’ /etc/sysctl.conf
#sysctl –p
4.啓動服務
#/etc/init.d/pptpd start
#chkconfig pptpd on
5.建立×××
6.配置iptables
#iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -j SNAT --to-source 10.0.027 #確保客戶機連上×××後能正常上網
#iptables –t filter –A INPUT –p tcp –m state –state NEW –m tcp –dport 1723 –j ACCEPT #開放1723端口,允許轉發
#iptables –P FORWARD ACCEPT
#service iptables save //保存iptables規則
7.訪問其他服務器