如何在Linux下配置VPN?這篇文章就介紹了Linux的VPN服務器配置教程。虛擬專用網絡(Virtual Private Network ,簡稱VPN)指的是在公用網絡上建立專用網絡的技術。其之所以稱為虛擬網,主要是因為整個VPN網絡的任意兩個節點之間的連接并沒有傳統專網所需的端到端的物理鏈路,而是架構在公用網絡服務商所提供的網絡平臺,如Internet、ATM(異步傳輸模式〉、Frame Relay (幀中繼)等之上的邏輯網絡,用戶數據在邏輯鏈路中傳輸。它涵蓋了跨共享網絡或公共網絡的封裝、加密和身份驗證鏈接的專用網絡的擴展。常用的VPN協議有:L2F、L2TP、PPTP、IPsec、SSL VPN、Cisco VPN。
linux vpn軟件安裝(pptp)
[inbi@debian ~]#aptitude -y install pptp
[inbi@debian ~]#modprobe ppp_mppe
#Linux 2.6.13 以后的內核已經集成了 MPPE, 無需打補丁了,直接加載就可以了。
#MPPC 我不知道怎么安裝,也找不到相應的補丁了。
NOTE:
MPPE:Microsoft Point-to-Point Encryption,微軟的點對點加密協議,可以對在點對點鏈路上傳輸的數據包進行加密,詳細介紹請見RFC3078和RFC3079。
MPPC:Microsoft Point-to-Point Compression,微軟的點對點壓縮協議,可以對在點對點鏈路上傳輸的數據包進行壓縮,詳細介紹請見RFC21189。
linux PPTP 配置
主配置文件 /etc/pptpd.conf
[inbi@debian ~]#cp /etc/pptpd.conf /etc/pptpd.conf.default
#備份是一個好的習慣。
[inbi@debian ~]#cat /etc/pptpd.conf<<EOF
localip 202.113.96.115
remoteip 172.16.0.1-172.16.7.254
EOF
#剛學的方法。
[inbi@debian ~]#grep -v "^#" /etc/pptpd.conf | grep -v "^$"
option /etc/ppp/pptpd-options
logwtmp
localip 202.113.96.115
remoteip 172.16.0.1-172.16.7.254
#最終配置。
選項配置文件 /etc/ppp/pptpd-options
[inbi@debian ~]#vim /etc/ppp/pptpd-options
name itwhy-pptpd
domain itwhy.org
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
nodefaultroute
lock
#保存退出。
選項 作用
name pptpd服務器名稱
domain 設置域
refuse-pap 不使用pap身份認證模式
refuse-chap 不使用chap身份認證模式
refuse-mschap 不使用mschap身份認證模式
require-mschap-v2 使用微軟的 mschap-v2 身份認證模式
require-mppe-128 MPPE 模塊使用 128 位加密
ms-dns 為 Windows 客戶端提供 DNS 服務器 IP 地址
proxyarp 建立 ARP 代理
lock 創建 UUCP-style 鎖定文件,為了使每個終端獨立。
用戶配置文件 /etc/ppp/chap-secrets
chap-secrets 文件的每一行為一個用戶配置,每行分為4段:用戶名、服務器名稱、密碼、分配給客戶端的IP。服務器名可以使用 “*” 號,代表全部;分配給客戶端的 IP 使用 “*” 號表示隨機分配。
[inbi@debian ~]#cat chap-secrets<<EOF
test * test *
test1 * test1 172.16.5.10
test2 itwhy-pptpd test1 172.16.5.100
[inbi@debian ~]#/etc/init.d/pptpd restart
至此已經可以建立連接了,只不過只能連接到本機,因為還沒有打開IP轉發功能。
配置IP轉發
[inbi@debian ~]#sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf
[inbi@debian ~]#sysctl -p