思科 877 作为 VPN 服务器?

思科 877 作为 VPN 服务器?

我有一台 Cisco 877 路由器,它使用 ADSL 线路、单个公共 IP 地址和 NAT 将我的网络连接到互联网;IOS 版本是 15。

一切正常,但我想将此路由器配置为 VPN 服务器,以便能够从外部连接到网络。

我尝试寻找文档,但我能找到的所有内容都与将 877 用作 VPN 有关客户或站点到站点的 VPN;我找不到任何关于让单个远程计算机访问内部网络的信息,而使用 Windows 的 RRAS 或 ISA Server 可以轻松做到这一点。

  • Cisco 877 可以充当远程客户端计算机的 VPN 服务器吗?(看起来应该可以,但只是为了确保万无一失……)
  • 它支持哪种类型的 VPN?它们是否需要客户端计算机上安装一些特殊软件,或者它们是否可以由标准的现成 Windows 计算机使用?
  • 最后,如何设置?

编辑:

我知道 877 是 SOHO 路由器,它不是 VPN 服务器的最佳选择;但这是我的家庭网络,我只有一台电脑(目前),我是唯一的用户。我肯定不是我打算买一个企业级路由器,这样上班的时候就能访问我的电脑了 :-p


编辑2:

我真的被这个问题难住了,经过多次测试,我还是没能让它工作。我为这个问题添加了悬赏,悬赏金额将一个完全可行的解决方案(不是指向神秘的思科文档或不相关的场景的某些指针)。

为了方便大家帮忙,以下是我当前的路由器配置(删除了不相关和私人的详细信息)。希望有人最终能帮我解决这个问题。

要点:

  • 四个以太网接口均分配给 VLAN 1。
  • 内部网络为192.168.42.0/24,路由器的IP地址为192.168.42.1。
  • 外部 IP 地址由 ISP 提供;它是公共的、静态的,完全可路由。
  • NAT(当然)已启用。
  • ADSL 连接正常。
  • 路由器是内部网络的 DNS 服务器,将查询转发到 ISP 的 DNS。
  • 网络中没有 DHCP 服务器。
  • 有一个权限级别为 15 的单个用户帐户。

我想要的是:

  • 路由器充当VPN服务器,使外部客户端能够访问内部网络。
  • 最好使用 L2TP,但是 PPTP 也可以。
  • 如果可能的话,我希望它能与 Windows 的内置 VPN 客户端(支持 PPTP 和 L2TP)一起工作;我不想在外部计算机上安装 Cisco VPN 客户端或类似的东西以便它们能够连接。

配置如下:

version 15.0

service password-encryption

hostname Cisco877

aaa new-model

aaa authentication login default local
aaa authorization console
aaa authorization exec default local

aaa session-id common

ip source-route
ip cef
ip domain name <my ISP's DNS name>
ip name-server <my ISP's DNS server>
no ipv6 cef

password encryption aes

username <Router's username> privilege 15 secret 5 <The encrypted password for my user account>

ip ssh version 2

interface ATM0
 no ip address
 no atm ilmi-keepalive

interface ATM0.1 point-to-point
 pvc 8/75
  encapsulation aal5mux ppp dialer
  dialer pool-member 1

interface FastEthernet0
 spanning-tree portfast

interface FastEthernet1
 spanning-tree portfast

interface FastEthernet2
 spanning-tree portfast

interface FastEthernet3
 spanning-tree portfast

interface Vlan1
 ip address 192.168.42.1 255.255.255.0
 ip nat inside
 ip virtual-reassembly

interface Dialer0
 ip address negotiated
 ip nat outside
 ip virtual-reassembly
 encapsulation ppp
 dialer pool 1
 dialer-group 1
 ppp authentication pap callin
 ppp pap sent-username <My ISP's username> password 7 <The encrypted ISP password>

ip forward-protocol nd

ip dns server

ip nat inside source list 1 interface Dialer0 overload
ip route 0.0.0.0 0.0.0.0 Dialer0

access-list 1 permit 192.168.42.0 0.0.0.255

dialer-list 1 protocol ip permit

答案1

因此,根据思科网站的说法,您可以将 877 用作服务器。但我强烈建议不要这样做。我设置了一个 VPN 解决方案,将 871 路由器连接到头端 2800 路由器,但遇到了各种问题。低端设备无法处理大量同时进行的 VPN 连接。我的建议是购买带有 VPN 模块的 2800 或 3800 系列路由器。硬件模块将允许更多连接,但也会更好地处理连接。

如何设置以及将头端放在哪里都取决于您,但我认为让头端位于网络外部(就像您今天的 877 一样)可能是最简单的方法。在下面的链接中,您将找到很多方法来实现这一点,但最简单的方法是使用像您现在拥有的头端,但硬件更强大。

删除这些链接的空格,然后在第二个链接中搜索“Easy VPN”。

http://www.cisco.com/en/US/products/sw/secursw/ps5299/

http://www.cisco.com/en/US/docs/routers/access/800/850/software/configuration/guide/857sg_bk.pdf

http://www.cisco.com/en/US/prod/collat​​eral/iosswrel/ps6537/ps6586/ps6635/prod_white_paper0900aecd803645b5.html

http://www.cisco.com/en/US/docs/ios/sec_secure_connectivity/configuration/guide/sec_easy_vpn_rem.html

http://www.cisco.com/en/US/docs/ios/sec_secure_connectivity/configuration/guide/sec_easy_vpn_srvr.html

答案2

这是我在没有像这样的路由器的情况下进行实际测试的尝试。将以下内容添加到您的配置中:

vpdn enable
vpdn-group 1
accept-dialin
protocol pptp
virtual-template 1
exit
ip local pool clients 192.168.200.1 192.168.200.127
interface virtual-template 1
encap ppp
peer default ip address pool clients
ip unnumbered vlan1
no keepalive
ppp encrypt mppe auto required
ppp authentication ms-chap
aaa authentication ppp default local

这应该可以启用 VPN 拨号 (VPDN),创建一个 VPDN 组来接受传入的 PPTP,创建一个 IP 池来分配给客户端,创建一个虚拟模板接口来分配给客户端,并为 PPP 用户打开本地身份验证。将需要 MS-CHAP 和 MPPE 加密(我相信 Windows 中是默认的)。

我很想看看自己是否能第一次就成功……或者,是否能成功。

答案3

在 Evan 的大力支持下,我终于能够让它发挥作用,这一页

我在这里发布完整的配置,并接受这个答案以将其作为参考,但赏金当然会给埃文:-)

为了启用 PPTP 和 L2TP 拨入 VPN 访问,需要在路由器的配置中添加以下内容:

aaa authentication ppp default local

vpdn enable
vpdn-group VPN_Clients
 accept-dialin
  protocol any
  virtual-template 1
 no l2tp tunnel authentication

crypto isakmp policy 1
 encr 3des
 authentication pre-share
 group 2
crypto isakmp key <IPSEC PRE-SHARED-KEY> address 0.0.0.0 0.0.0.0
crypto ipsec transform-set VPN_TS esp-3des esp-sha-hmac
 mode transport
crypto dynamic-map VPN_DYN_MAP 1
 set nat demux
 set transform-set VPN_TS
crypto map VPN_MAP 1 ipsec-isakmp dynamic VPN_DYN_MAP

interface Dialer0
 crypto map VPN_MAP

ip local pool VPN_POOL 192.168.42.240 192.168.42.249

interface Virtual-Template1
 ip unnumbered Vlan1
 ip nat inside
 peer default ip address pool VPN_POOL
 no keepalive
 ppp encrypt mppe auto required
 ppp authentication ms-chap-v2 ms-chap chap

注 1:为了验证 VPN 用户的身份,您需要使用命令username <user> password <password>而不是更安全的命令来设置他们的密码username <user> secret <password>,否则身份验证将失败,因为 MD5 加密密码与 CHAP 不兼容;这已记录在案这里

笔记2:此配置将内部网络的 IP 地址分配给 VPN 客户端;这是最简单的方法,因为使用不同的子网需要为客户端提供到 LAN 的静态路由。这确实更安全,但对于简单的家庭网络访问来说,这根本不值得这么麻烦。

相关内容