RouterOS搭建一台SSTPServer用于远程办公 routeros安装教程

2020新冠疫情期间,很多单位提倡在家soho办公,这时候有一台ssl v*n服务器就显得尤为重要 。下面步骤可以搭建一台低成本的RouterOS的ssl服务器 。
【RouterOS搭建一台SSTPServer用于远程办公 routeros安装教程】一、基础知识
SSL 安全协议最初是由美国网景公司设计开发的,全称为:安全套接层协议 (Secure Sockets Layer) , 它指定了在应用程序协议 ( 如 HTTP 、 Telnet 、FTP) 和 TCP/IP 之间提供数据安全性分层的机制,它是在传输通信协议上实现的一种安全协议,采用公开密钥技术,它为TCP/IP 连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证 。
SSTP可以认为是微软版的SSL v*n协议,微软自2008服务器开始支持SSTP,不过微软系统在实现上配置相当复杂 。RouterOS上可以简单配置实现SSTP的服务器,配合微软的客户端,搭建一个较为完美的ssl系统 。
SSTP系统需要用到服务器证书,微软的客户端需要用到信任的授权单位的证书,所以一般企业就用自签名证书来实现 。
二、搭建环境
1、RouterOS V6.46 (一片网卡,内外网都在上面)
2、客户端:windows 10 专业版
3、域名:xu.com (根据单位不同可替换)
4、ca证书名称:ca.xu.com
5、服务器证书名称:server.xu.com
三、配置步骤
1、 ip pool等SSTP服务器设置
在RouterOS上,需要先设置SSTP服务器相关内容,主要步骤有设置pool池,设置profile文件,设置拨号用户名,最后设置服务器并关联相关参数 。
/ip pool addname=“sstp-v*n-pool” ranges=172.30.0.2-172.30.0.254
/ppp profile addname=“sstp-v*n-profile” use-encryption=yes local-address=172.30.0.1dns-server=8.8.8.8remote-address=sstp-v*n-pool
/ppp secret addname=sstpuser1 profile=sstp-v*n-profile password=sstpuser1 service=sstp
/interfacesstp-server server set enabled=yes default-profile=sstp-v*n-profileauthentication=mschap2
/interfacesstp-server server set enabled=yes default-profile=sstp-v*n-profile authentication=mschap2certificate=server.xu.com force-aes=yes pfs=yes
2、 配置证书系统并导出CA证书
以下步骤同样是在RouterOS上做:
第一步先建立证书模板 。
/certificate
addname=ca-template common-name=ca.xu.comdays-valid=3650 key-size=2048 key-usage=crl-sign,key-cert-sign
addname=server-template common-name=*.xu.com days-valid=3650key-size=2048 key-usage=digital-signature,key-encipherment,tls-server
第二步进行签名,ca做自己签名 。
/certificate
sign ca-templatename=ca.xu.com
sign server-templatename=server.xu.com ca=ca.xu.com
第三步导出ca证书(用export),再下载到本地,这些步骤可通过webcfg的菜单界面来做比较方便 。
第四部,在客户端计算机上导入打本地计算机中 。
步骤:是找到该证书文件、右键、导入证书 。

RouterOS搭建一台SSTPServer用于远程办公 routeros安装教程

文章插图
注意证书存储位置一定要导入到“本地计算机”的“受信任的根证书颁发机构”中 。
3、 在PC客户端导入CA证书 。
在win10的客户端上,在网络的v*n一栏中,添加v*n连接,如下图所示:
RouterOS搭建一台SSTPServer用于远程办公 routeros安装教程

文章插图
连接名称可以任意写一个容易记住的名字,但是服务器名称或地址必须要写域名,本文是server.xu.com 。因为是测试环境,我需要修改我的etc/hosts文件,正式环境可不用修改 。Hosts文件添加一行:
192.168.12.251 server.xu.com
如果是大规模部署,可手工方式建立sstp v*n的链接文件,直接在客户机器上运行以下命令:(在powershell以管理员命令方式运行)
PS> powershell.exe -c ‘Add-v*nConnection -name “SSTP-v*n连接” -ServerAddress“server.xu.com” -TunnelType Sstp -auth MSChapv2 -RememberCredential-PassThru’
4、测试 。
在windows10机器上,找到“Sstp-v*n连接”,拨号,输入用户名和密码(我用的用户名和密码都是sstpuser1),测试,正常 。
总体来说比较简单,是一台比较有用的SSL设备,适合小微企业使用 。RouterOS路由器的基础设置本文并没有写出来 。最主要有设置有内外网ip,nat转换使之能上网,如果实际使用还需要做一些安全设置,如更改admin密码,关闭不常用的端口等 。还需要申请域名和公网地址,祝顺利 。
常见错误:
SSL握手失败时,您将看到以下证书错误之一:(综合了网上的一些信息和我自己总结的一些错误)
证书尚未生效 :证书日期晚于当前时间;证书已过期 :证书的到期日期在当前时间之前;invalid证书用途 :提供的证书不能用于指定目的;self在链中签名的证书 :可以使用不受信任的证书建立证书链,但是在本地找不到根可以在本地获取颁发者证书:CA证书不在本地导入;server的IP地址与证书不匹配 :启用了服务器地址验证,但是证书中提供的地址与服务器的地址不匹配;证书的cn名与传递的值不匹配:这是在服务器上选用了CA的验证,正确的应该选用server的验证 。域名变了也是这个错误 。接收到的消息异常,或格式不准确:这是因为在服务器上未启动证书认证 。(在SSTP Server的设置上可修改 。)证书对于请求用法无效:有证书,但是在PC机器上把正确的ca证书禁用了 。证书对于请求用法无效:证书导入了,查看证书属性,发现证书目的是给客户端身份验证使用的 。改为给服务器身份验证使用 。处理证书链,但是在不受信任提供程序信任的根证书中终止:证书没有正确导入,原因是没有导入正确的证书到“本地计算机”的受信任根颁发机构的目录中 。或者原因是证书正确,导入到了“当前用户”的受信任根颁发机构目录 。服务器地址错误也是这个提示 。不能建立到远程计算机的连接,你可能需要更改此连接的网络设置:在SSTP服务器设置中,勾选了PFS 。不是有连接错误提示,但是有时也能连接上来 。MRRU设置了也会有这个提示 。由于目标服务器积极拒绝,无法连接:服务器上SSTP服务器没有起作用,需要enable 。能建立到远程计算机的连接,因此用于此连接的端口已关闭:是认证方法不对,改为machapV2 。此句柄相关联的操作锁定现在与其他句柄相关联:是SSTP服务器设置中勾选了“verify ClientCertificate” 。,