情景分析
很多人都想搭建一个属于自己WIFI_WEB认证网络,其主要用到的技术是Portal(传送门),它可以通过WEB页面认证合法用户。通过这个技术做认证的第三方解决方案有WIFIAP、WIWIZ,这两个公司都是比较有代表性的。据我调查,华三也有Portal解决方案,唯独思科我还没发现有相关的解决方案(在RS这领域吧,我没有学过思科的无线)。所以我想使用其他技术以达到我的目的。现在安卓手机已经相当普及,安卓手机和电脑都具备VPN拨入功能,所以我想通过VPN拨入来作为我的解决方案。
预期结果
拨入VPN的用户可以访问互联网或者我指定的网络,未拨入VPN的用户只能访问特定的网络。
1、预先配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
配置外网端口fa1/0的IP地址 R1(config)#interface FastEthernet1/0 R1(config-if)#ip address 1.1.1.2 255.255.255.0 ---- 配置内网端口fa0/1的IP地址 R1(config)#interface FastEthernet0/1 R1(config-if)#ip address 10.1.1.1 255.255.255.0 ---- 设置DNS域名解析服务器 R1(config)#ip name-server 8.8.8.8 ---- 开启域名解析功能*必须开启* R1(config)#ip domain-lookup ---- 写一条通往外网的默认路由 R1(config)#ip route 0.0.0.0 0.0.0.0 FastEthernet1/0 ---- 创建一个用来测试的账户 用户名:pptp 密码:pptp R1(config)#username pptp password pptp |
2、VPN PPTP
创建一个虚拟模版 也可以理解为VPN的网关
R1(config)#interface Virtual-Template 1
给这个虚拟接口配置一个IP地址
R1(config-if)#ip address 172.16.1.1 255.255.255.0
设置这条虚拟链路的验证方式
R1(config-if)#ppp authentication chap ms-chap ms-chap-v2
设置拨入用户获得IP地址的地址池 名为vpn
R1(config-if)#peer default ip address dhcp-pool vpn
在地址池里排除虚拟接口的IP地址
R1(config)#ip dhcp excluded-address 172.16.1.1
创建一个自动分配地址的池 名为vpn
R1(config)#ip dhcp pool vpn
设置给用户分配的地址段 最好与Virtual-Template 1的IP地址在同一个网段
R1(dhcp-config)#network 172.16.1.0 255.255.255.0
设置分配给用户的DNS域名解析服务器
R1(dhcp-config)#dns-server 8.8.8.8
开启虚拟链路拨入功能
R1(config)#vpdn enable
创建一个拨入组 名为vpn
R1(config)#vpdn-group vpn
设置允许用户拨入
R1(config-vpdn)#accept-dialin
设置拨入的协议为PPTP
R1(config-vpdn-acc-in)#protocol pptp
调用上面的虚拟模版
R1(config-vpdn-acc-in)#virtual-template 1
4、NAT
创建一个列表转换列表 名为vpnnat
R1(config)#ip access-list extended vpnnat
抓取用户的拨入获得IP地址段
R1(config-ext-nacl)#permit ip 172.16.1.0 0.0.0.255 any
创建一个地址转换协议 以便用户通过外网端口访问互联网
R1(config)#ip nat inside source list vpnnat interface FastEthernet1/0 overload
将外网口设置为外部端口
R1(config)#interface FastEthernet1/0
R1(config)#ip nat outside
将外网口设置为内部端口
R1(config)#interface Virtual-Template1
R1(config-if)#ip nat inside
5、ACL
创建一个列表 阻止未拨入VPN的用户访问互联网
R1(config)#ip access-list extended novpn
抓取禁止访问互联网的内部端口的网段
R1(config-ext-nacl)#deny ip 10.1.1.0 0.0.0.255 any
放过其他流量
R1(config-ext-nacl)#permit ip any any
将限制列表调用在外网口的出方向
R1(config)#interface FastEthernet1/0
R1(config-if)#ip access-group novpn out
PS
我还想调用Radius服务器作为PPTP VPN的用户数据库,但是普通的路由器没有这个功能,需要使用思科的防火墙产品才能实现调用Radius服务器数据库。
本文由 落格博客 原创撰写:落格博客 » 通过PPTP VPN认证上网
转载请保留出处和原文链接:https://www.logcg.com/archives/428.html