【一步一步学】ROS 的SSTP 介绍与应用

 

申明:本文仅针对国内SSTP,适用于国内的游戏加速,禁止一切利用该技术的行为。

相信大家对SSTP的使用并不陌生,但是其原理或许还很多不清楚,今天给大家分享SSTP的概念和使用。

介绍

SSTP(Secure Socket Tunneling Protocol)是一种基于SSL(Secure Socket Layer)的VPN协议,它可以提供安全的远程访问方式。RouterOS支持SSTP协议,允许用户通过加密隧道连接远程网络或资源。

SSTP的优势之一是其在防火墙和代理服务器背后的穿透能力。它可以轻松地穿越各种网络限制和阻碍,使得用户能够安全地访问远程资源。

【一步一步学】ROS 的SSTP 介绍与应用_第1张图片

SSTP与L2TP的区别

SSTP

1. 安全性:

  • SSTP基于SSL/TLS协议,通过SSL加密进行数据传输,提供了高度的安全性,能够抵抗各种类型的攻击。
  • 通常使用TCP端口(默认端口443),因此可以更容易地穿透各种网络限制,适用于网络环境受限制的场景。

2.支持平台:

  • SSTP最初由微软开发,并且在Windows平台上得到了广泛支持。除了Windows外,也有一些其他平台和设备支持SSTP。

3.部署和配置:

配置和部署SSTP通常相对简单,特别是对于Windows环境,因为它已经内置于操作系统中。

L2TP

1.隧道技术:

  • L2TP本身不提供加密功能,通常与IPsec(IP Security Protocol)协议结合使用,创建一个IPsec加密的隧道,提供更高级的安全性。

2.端口和穿透:

  • L2TP本身运行在UDP端口500上,它可能会受到某些网络环境的限制,不如SSTP那样易于穿透防火墙或其他网络设备。

3.支持性:

  • L2TP与IPsec组合通常在许多操作系统和设备上得到支持,例如Windows、macOS、iOS和Android等。

ROS服务端SSTP配置

证书生成与启用

开启SSTP之前,我们需要先用生成相关证书,可直接使用以下脚本生成:

/certificate add name=ca.yourdomain.com      common-name=ca.yourdomain.com days-valid=3650 key-size=2048 key-usage=crl-sign,key-cert-sign
/certificate add name=server.yourdomain.com  common-name=*.yourdomain.com days-valid=3650 key-size=2048 key-usage=digital-signature,key-encipherment,tls-server
/certificate add name=client.yourdomain.com  common-name=client.yourdomain.com days-valid=3650 key-size=2048 key-usage=tls-client
/certificate sign ca.yourdomain.com   name=ca.yourdomain.com
delay delay-time=3
/certificate sign server.yourdomain.com name=server.yourdomain.com ca=ca.yourdomain.com
delay delay-time=3
/certificate sign client.yourdomain.com name=client.yourdomain.com ca=ca.yourdomain.com

之后启用SSTP Server(命令行方式,但用图形界面操作也是可以的) :

/interface sstp-server server set enabled=yes authentication=chap,mschap1,mschap2,pap certificate=server.yourdomain.com force-aes=yes pfs=yes port=443

如果是用图形界面操作,首先点击 PPP --> Interface --> SSTP Server:

配置后的效果如下:

【一步一步学】ROS 的SSTP 介绍与应用_第2张图片

参数介绍

操作路径:   /interface sstp-server server

  • authentication (pap | chap | mschap1 | mschap2; 默认: pap,chap,mschap1,mschap2) 服务器将使用的验证模式
  • certificate (名称; 默认: none)SSTP 将使用的证书的名称。必须使用证书,否则 SSTP 服务器将不能运行
  • default-profile (名称; 默认: default) 选择 Profile 规则
  • enabled (yes | no; 默认: no) 定义是否启用 SSTP 服务
  • keepalive-timeout (整型 | disabled; 默认: 60)定义路由发送 Keepalive 数据包时钟周期(以秒为单位),如果没有数据,并且没有在指定的时钟周期回应,这些没有回应的用户将会被注销
  • Max-MRU (整型; 默认: 1500)最大接收单位,
  • Max-MTU (整型; 默认: 1500)最大传输单位
  • MRRU(禁用 | 整型; 默认: disabled)在连接被认可的最大数据包长度。如果一个数据大于隧道的 MTU 值,将会被拆分多个数据包,允许最大长度的 IP 或者以太网数据包发送到隧道
  • require-client-certificate (yes | no; 默认: no) 如果设置为 yes,这时服务器将检查客户端的证书是否属于与服务器的证书同一证书链

客户端连接

【一步一步学】ROS 的SSTP 介绍与应用_第3张图片

SSTP客户端有很多的工具,例如Windows 自带客户端、SSTP客户端,ROS客户端等,这里以SSTP客户端工具为例,请参考这篇文章《安卓Android手机如何使用SSTP》

【一步一步学】ROS 的SSTP 介绍与应用_第4张图片

参考文章:

《SSTP》

你可能感兴趣的:(RouterOS杂货铺,网络协议,网络安全,智能路由器,运维,devops,golang)