欢迎大家来到IT世界,在知识的湖畔探索吧!
OpenVPN已经被转移到各种平台,包括 Linux和 Windows,RouterOS在 v3.x支持 OpenVPN ,你需要通过安装和启用 ppp功能包。在 RouterOS平对 OpenVPN仅支持tcp方式,udp方式不支持。 在 Windows你需要另外的 GUI,系统中允许你在 windows系统中安装客户端,你可以到OpenVPN GUI下载http://www.openvpn.se/download.html . OpenVPN要求与 SSL证书一起工作,你需要生成一个证书,一般可以通过 linux安装 OpenVPN功能包后生成,或者通过http://cacert.org 网站申请
25.1 OVPN配置
OVPN 服务器配置,首先要导入证书,否则 OVPN 与客户端是无法连接的,我们可以从网上下载已有的证书或者自己通过已经安装 OVPN的 linux系统生成新的证书,这里我们根据已有的证书进行操作,如下图:
导入完成后,在 file list可以看到证书
选择 system certificates证书,并导入 crt和 key文件
点击 import导入ca.crt文件
用同样的方式,导入 ca.key文件,在当前目录下的项目出现了 KR的前缀,表示已经导入 key并运行
剩下的步骤就是启用 OVPN服务,选择 enable启用 OVPN服务,并选择 certificate为 cer1,其他参数默认配置,当然端口你可以自己选择,这里默认是 1194
配置完成如下:
注:require-client-certificate这里如果选择上了,客户端同样也要导入相同的证书OVPN服务器配置完成后,配置相应的规则,需要配置地址池192.168.10.2-192.168.10.254,用于分配给用户的 IP地址
进入 ppp profile设置规则 local-address=192.168.10.1和 remote-address=OVPN
进入 ppp secret添加用户账号
到此 OVPN服务器配置完成
接下来我们需要在另外一台路由器配置 OVPN客户端,如下面的拓扑图,将 2台路由建立 OVPN连接:
根据以上拓扑图我们假设以下网络环境:
通过这两个 WAN地址建立 OVPN的互联,我们在 OVPN Client建立 ovpn-client拨号,打开 PPP, 在 interface里点加号,选择 ovpn-client
打开后,选择 Dial-out,设置 Connect-to=10.200.15.228,user=123,password=123,其他参数默认
确定后,连接 OVPN服务器,服务器连接状态如下,显示 DR前缀
OVPN Client显示前缀 R,表示连接成功
25.2 OVPN bridge模式
通过RouterOS提供的隧道bridge功能和OVPN的ethernet模式实现将两个远程网络建立二层的隧道透传连接,我们依然用之前的网络结构,如下图:
这里我们需要将 OVPN Server和OVPN Client的模式修改为ethernet
在 bridge中添加一个桥配置
进入 ports选择,将 ether2-lan口添加入桥里
回到 ppp profile里设置 default-encryption的 bridge选项设置为刚才我们添加的 bridge1
设置完成后,我们建立 OVPN Client与 OVPN Server的连接,在 bridge的 port里,我们可以看到123账号的连接在 port被自动添加
这样 OVPN Server的 ether2-lan内网口和 ovpn-123隧道在同一个桥里
OVPN Client设置
修改 ovpn-out1的 mode为 ethernet模式
在 OVPN Client端同样配置桥接,进入 bridge后添加一个桥取名为bridge1,并在 port里将内网网卡ether2-lan和,ovpn-out1接口手动添加到 bridge1里,如下图
这样的配置,将两个远程的网络桥接在一个广播域内,即大家都在一个局域网内,这样的方式相对于 EoIP隧道更安全,但需要考虑到数据加密会产生一定的开销
注:在做 nat伪装规则时,需要避免桥接隧道被转换,需要设置 nat规则(包括 Server和 Client路由器的nat规则)
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/22322.html