类别:ROS / 日期:2021-03-26 / 浏览:1080 / 评论:0
今天有点晚,就不分享什么基础设置了,来个案例吧。
今天说下曾经做过的一个通过VPN隧道进行多地协同办公的案例吧,这个案例看懂的朋友可以做其他一些比较有意思的应用。
案例:多地通过VPN隧道组网协同办公
某企业在全国各地都有分公司,每个公司都有电脑十多台,整个公司用的都是同一家网络运行商的宽带。总部内部架设有一个协同办公服务器,服务器已经针对员工分配权限。为防止员工私自在非办公电脑和非工作时间访问,以及账号密码外泄的可能,所以不考虑给每个员工分发VPN账号。要求各分公司以VPN隧道连接方式到总部,且连接时候不影响各地分公司正常使用互联网,可不需要其他任何操作访问总部协同办公服务器和打印设备等。
基于这个要求,需要实现以下基本功能:
1、总部网关上面有VPN服务端
2、协同办公服务器连接至VPN服务端,但是禁止连接互联网
3、各地分公司VPN终端拨号到总部时候根据账号分配指定IP地址,并且绑定访问MAC
4、各地分公司通过VPN连接到总部以后可以正常访问到协同办公室服务器和共享打印机
5、总部对于所有访问以白名单方式开放协同办公服务器的可访问端口。
6、各地分公司电脑可同时正常访问互联网和访问公司协同办公服务器
当时该公司最初统一采购路由的时候,全部都用了ROS 的硬件路由,不贵,各地分公司买了普通的,也就是三百多元一台,而正是这,发挥了几千元设备的作用。下面来说说当时的组网配置。(时间有点长了,可能会有些出入,但是为了很好的还原,已经在模拟环境里面将大致的配置重新做了一遍,如果各位有什么疑问或者建议可以在评论区里面留言。)
VPN服务端配置
协同办公服务器和共享打印机的IP地址和网关都已经配置好了的,这些大家可以参考之前的两篇中的配置方法。
VPN服务端,我们采用PPTP
首先,我们建立一个给PPTP客户端使用的IP 地址池
地址池我们用172.168.0.100-172.168.0.200
# ip pool add name=pptp-pool ranges=172.168.0.100-172.168.0.200
winbox 工具配置如图:
开始配置PPTP 服务端
启用 PPTP 服务端,如图:
PPTP 服务端启用配置
添加一条PPTP 策略
#ppp profile add name=pptp-s local-address=pptp-pool remote-address=pptp-pool change-tcp-mss=default only-one=yes
winbox工具配置如图:
这里要注意两点,根据要求,每个账号只对应一台设备,所以在设置的时候,"only-one" 这项一点要选"yes",策略的名字就自己决定了。
策略配置完成以后,开始添加用户名账号,因为需求要求账号和用户名和拨入MAC必须绑定,且分配固定IP地址,所以配置方式如下:
假设分配IP地址为172.168.0.120
# ppp secret add name=ppp1 password=a123456 service=pptp profile=pptp-s remote-address=172.168.0.120 caller-id=”输入拨入设备的MAC地址”
注:“caller-id”这里的拨入设备的MAC地址就是各个分公司的ROS设备的外网口的MAC地址。策略模板名称记住要选择刚才设置的模板。
其他的账号密码依次类推
winbox 工具配置如图:
注:ROS 中PPTP服务端,如果终端是Windows系统的拨号上去以后,网关地址和获取到的地址是一样的,但是在ROS的PPTP客户端中拨号上去以后网关地址和获取到的地址是不同的,所以记住在添加路由之前一定要查看下拨号获取到的地址和网关情况。
ROS 上PPTP客户端拨号设置
PPTP拨号时候需要保证网络已经正常连接。
PPTP的客户端设置还是很简单的
配置方式如下:
# interface pptp-client set connect-to=66.90.158.22 user=ppp1 password=a123456 allow=mschap1,mschap2,chap
,pap disabled=no
winbox 工具配置如图:
注:这里切勿选择自动添加默认路由,pptp拨号以后的路由我们要选择手工添加,并且要做路由标记。
另外要注意的是,这一次是因为明确知道了每次IP地址和网关都是固定的,所以在 router 中可以手工直接添加一条路由记录,如果是随机的网关和IP地址就需要写脚本,从拨号获取的地址中提取,然后再添加到 router 中。
添加路由
# ip route add dst-address=0.0.0.0/0 gateway=172.168.0.100 check-gateway=ping distance=1 routing-mark=x
winbox 工具配置如图:
将往总部协同办公服务器所在网段的数据包做标记,让这些被打上标签的网络数据包从 名称为 X的那条路由通过。
配置方式如下:
先将目标地址,也就是协同办公服务器所在网段的需要连接的IP地址添加到地址列表
# ip firewall address-list add list=pp address=100.100.100.99
winbox 工具配置如图:
地址列表的分类名称可以自己设置,IP地址可以是单个也可以是一个地址段
考虑到每个分公司不一定所有电脑都要连接,所以在地址列表里面可以再添加需要连接的电脑的IP,具体参考上面,但是类别名称要修改掉。
给这些访问请求进行标记,ROS在收到这些数据包转发请求的时候会根据目标地址和源地址匹配进行标记。
ROS 只对已有规则进行匹配,没有的全部按默认继续。
配置如下:
# ip firewall mangle add chain=prerouting src-address=192.168.1.0/24 dst-address-list=pp action=mark-routing new-routing-mark=x disabled=no passthrough=yes
注:有些地方会说passthrough=yes 要选no ,但是我在实际的操作中发现yes的时候才可以使用。
winbox 工具配置如图:
添加路由表
#ip route rule add dst-address=100.100.100.99 action=lookup table=x
将需要访问的目标IP地址全部加入到这里。
Winbox 配置如图
配置到这里,网络基本完成。剩下的很多都是防火墙上面的策略了,这里就先不发了。
注:一般情况配置完成以后就即时生效了,但是在策略路由时候,可能会出现配置完成,但是还是无法连通,这个时候请检查下路由里面的是否有原来的连接请求在,具体可查看ip firewall connection ,如果发现有,可以先踢出,然后检查是否全部正常。
写在最后,其实这个办法再配合上其他一些策略,还能玩出其他花样。还是那句话,喜欢的朋友请关注和推荐,你们的关注和推荐,还有各种意见是我继续分享的动力。
如有错字,请指出,谢谢,我将不断完善。