分类目录归档:Networking

配置RouterOS兼容的OpenVPN服务端

RouterOS上就没有什么非常安全的配置,所以本文主要的目标是可用,增强安全性相关的操作都会被标为可选。

RouterOS 6.x的OpenVPN有很多限制:

  • 支持的传输层:TCP
  • 支持的Cipher: none BF-CBC AES-128-CBC AES-192-CBC AES-256-CBC
  • 支持的Digest算法: none MD5 SHA1
  • 支持的验证模式:必选用户名密码认证,可选客户端证书认证
  • 即使在TAP模式下也不支持MPLS

继续阅读

在Linux上实现对GRE keepalive包的回复

最近我把一些跑在公有云上的RouterOS替换成了正常的Linux发行版。大多数RouterOS原有的路由功能都可以通过Linux标准的工具加以实现(虽然Linux当路由器总有一个令人诟病的问题就是不支持配置自动保存和开机自动恢复,需要自己写一大堆脚本和配置),但是有一件事情让我头疼了一会儿:Linux的GRE隧道原生不支持keepalive。

继续阅读

RouterOS自动隧道IPSec的对端配置——以StrongSwan为例

众所周知,RouterOS的IP隧道(GRE、IPIP、EoIP以及它们的IPv6版本)里面都有一个IPSec Secret选项,两台RouterOS设备之间只要填写了相同的密钥,IPSec就会自动建立起来。姑且不说RouterOS默认的IPSec配置有多么的不安全,对于某些场景(比如运营商拦截了GRE但是你恰好又想要一个GRE),这个配置还是简单方便的。那么,如果隧道的对端不是RouterOS设备,这个快速设置还能不能用呢?答案当然是可以的。下面我们以Linux上的StrongSwan为例,实现一个GRE/IPSec隧道的配置。

继续阅读

把ASA配置为单臂VPN接入点

目标

把ASA设置为一个VPN接入点,挂在现有的网关路由器下面,让AnyConnect连入的客户端能够正常访问本地内网和公网。防火墙设为全部放通。

示例中使用以下配置:

  • 现有的内网:10.0.0.0/24
  • 网关:10.0.0.1
  • ASA:10.0.0.2
  • AnyConnect客户端地址池:10.0.253.0/24, fd00::/64

继续阅读

RouterOS在多个上游情况下正确设置返回包的默认路由

应用场景:

一:RouterOS接了多个上游,都是静态IP并且有NAT(masquerade)配置。默认情况下,如果在非默认路由的上游IP上开了端口转发到内网,内网设备返回包的时候会直接从默认路由出去,从而要么被路由器的reverse path filter丢掉,要么在出口处被masquerade从而导致对面收到的包源IP错误而丢包。下面简述一个方法,让返回包从正确的出口返回。

二:用VRF接了管理网,想从VRF访问本机的WinBox或者SSH。数据包是能从VRF网络正确到达本机的;但是从本机返回包时,默认只会查main路由表。你当然可以简单地把VRF网的路由或静态或动态leak进main,但是这样就失去了隔离管理网的功能。因此,我们可以用类似的方法来实现通过VRF访问本机。 继续阅读