L2tp ipsec VP搭建
L2TP是一種工業標準的Internet隧道協議,功能大致和PPTP協議類似,比如同樣可以對網絡數據流進行加密。不過也有不同之處,比如PPTP要求網絡爲IP網絡,L2TP要求面向數據包的點對點連接;PPTP使用單一隧道,L2TP使用多隧道;L2TP提供包頭壓縮、隧道驗證,而PPTP不支持。
基本信息
中文名稱 L2TP 英文原義 Layer 2 Tunneling Protocol
中文釋義 第二層隧道協議 L2TP命令頭 12 16 32 bit
主要應用:
在連接中要設置L2TP連接,方法同PPTP設置,同樣是在連接屬性窗口的"網絡"選項卡中,將類型設置爲"L2TP IPSec **"即可。
第二層隧道協議(L2TP)是用來整合多協議撥號服務至現有的因特網服務提供商點。PPP 定義了多協議跨越第二層點對點鏈接的一個封裝機制。特別地,用戶通過使用衆多技術之一(如:撥號 POTS、ISDN、ADSL 等)獲得第二層連接到網絡訪問服務器(NAS),然後在此連接上運行 PPP。在這樣的配置中,第二層終端點和 PPP 會話終點處於相同的物理設備中(如:NAS)。
L2TP 擴展了 PPP 模型,允許第二層和 PPP 終點處於不同的由包交換網絡相互連接的設備來。通過 L2TP,用戶在第二層連接到一個訪問集中器(如:調制解調器池、ADSL DSLAM 等),然後這個集中器將單獨得的 PPP 幀隧道到 NAS。這樣,可以把 PPP 包的實際處理過程與 L2 連接的終點分離開來。
對於這樣的分離,其明顯的一個好處是,L2 連接可以在一個(本地)電路集中器上終止,然後通過共享網絡如幀中繼電路或英特網擴展邏輯 PPP 會話,而不用在 NAS 上終止。從用戶角度看,直接在 NAS 上終止 L2 連接與使用 L2TP 沒有什麼功能上的區別。L2TP 協議也用來解決"多連接聯選組分離"問題。多鏈接 PPP,一般用來集中 ISDN B 通道,需要構成多鏈接捆綁的所有通道在一個單網絡訪問服務器(NAS)上組合。因爲 L2TP 使得 PPP 會話可以出現在接收會話的物理點之外的位置,它用來使所有的通道出現在單個的 NAS 上,並允許多鏈接操作,即使是在物理呼叫分散在不同物理位置的 NAS 上的情況下。
LNS表示L2TP網絡服務器(L2TP Network Server),是PPP端系統上用於處理L2TP協議服務器端部分的設備。它作爲L2TP隧道的另一側端點,是LAC的對端設備,是被LAC進行隧道傳輸的PPP會話的邏輯終止端點。
與PPTP不同:
PPTP和L2TP都使用PPP協議對數據進行封裝,然後添加附加包頭用於數據在互聯網絡上的傳輸。盡 管兩個協議非常相似,但是仍存在以下幾方面的不同:
1.PPTP要求互聯網絡爲IP網絡。L2TP只要求隧道媒介提供面向數據包的點對點的連接。L2TP可以在IP(使用UDP),幀中繼永久虛擬電路(PVCs),X.25虛擬電路(VCs)或ATM VCs網絡上使用。
2.PPTP只能在兩端點間建立單一隧道。L2TP支持在兩端點間使用多隧道。使用L2TP,用戶可以針對不同的服務質量創建不同的隧道。
3.L2TP可以提供包頭壓縮。當壓縮包頭時,系統開銷(overhead)佔用4個字節,而PPTP協議下要佔用6個字節。
4.L2TP可以提供隧道驗證,而PPTP則不支持隧道驗證。但是當L2TP或PPTP與IPSEC共同使用時,可以由IPSEC提供隧道驗證,不需要在第2層協議上驗證隧道
5.L2TP訪問集中器(L2TP Access Concentrator,LAC)是一種附屬在網絡上的具有PPP端系統和L2Tpv2協議處理能力的設備,它一般就是一個網絡接入服務器軟件,在遠程客戶端完成網絡接入服務的功能。
6.L2TP網絡服務器(L2TP Network Server,LNS)是用於處理L2TP協議服務器端的軟件。
L2TP支持的協議
IP協議、IPX協議和NetBEUI協議
一、L2tp **環境搭建
1)外網一臺:IP地址是192.168.152.121 **地址是10.0.0.0網段
2)路由器:外網IP是192.168.152.91 內網IP是192.168.1.10
3)內網兩臺:IP地址是192.168.1.11(windows) 192.168.1.12(xp)
1、安裝EPEL源(CentOS7官方源中已經去掉了xl2tpd,或者官網手動下載)
在centos7 版本後, 提供ipsec 服務包由libreswan替代了openswan
首先安裝 yum install xl2tpd yum install libreswan
2、修改ipsec的配置文件(在配置文件里加入這一行,充許傳透nat建立l2tp連接)
vim /etc/ipsec.conf(只添加一行nat_traversal=ye即可)
3、建立ipsec 與 l2tp 服務關聯的配置文件 vim /etc/ipsec.d/l2tp_psk.conf
(因爲這個文件沒有所以需要手動創建)
4、當建立l2tp連接時,需要輸入預共享密匙,以下爲預共享密匙的配置文件。
(如果這個文件也沒有也需要手動創建,訪問的IP地址和密碼)
5、修改內核支持,可以對照以下配置修改,修改完後運行sysctl -p 使配置生效
6、檢驗ipsec服務配置
//重啓ipsec systemctl restart ipsec
//檢驗ipsec服務配置 ipsec verify
7、啓動服務
//啓動ipsec systemctl start ipsec
//設置爲開機自啓 systemctl enable ipsec
8、修改L2tp的配置文件 vim /etc/xl2tpd/xl2tpd.conf
9、修改xl2tpd屬性配置文件 vim /etc/ppp/options.xl2tpd
10、添加用戶名和密碼(**登錄的用戶名和密碼)
vim /etc/ppp/chap-secrets
11、iptables安裝配置
CentOS7默認的防火牆不是iptables,而是firewalle.
1)安裝iptable iptable-service
//安裝iptables yum install -y iptables
//安裝iptables-services yum install iptables-services
2)禁用/停止自帶的firewalld服務
#停止firewalld服務
systemctl stop firewalld
#禁用firewalld服務
systemctl mask firewalld
3)設置現有規則
#查看iptables現有規則
iptables -L -n
#先允許所有,不然有可能會杯具
iptables -P INPUT ACCEPT
#清空所有默認規則
iptables -F
#清空所有自定義規則
iptables -X
#所有計數器歸0
iptables -Z
4)開啓地址轉換(當前IP段是虛擬網段)
5)查看iptables配置文件
6)保存規則設定
12、完成服務配置
//啓動xl2tp服務 systemctl start xl2tpd
//設置開機自啓 systemctl enable xl2tpd
//查看狀態 systemctl status xl2tpd
13、客戶端連接(windows)
windows+R
輸入 regedit 找到此路徑
1
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\
14、重啓電腦
15、測試訪問
外地出差client訪問公司內網或者ping公司內網ip