2020新冠疫情期间,很多单位提倡在家soho办公,这时候有一台ssl 服务器就显得尤为重要。下面步骤可以搭建一台低成本的RouterOS的ssl服务器。
一、基础知识
SSL 安全协议最初是由美国网景公司设计开发的,全称为:安全套接层协议 (Secure Sockets Layer) , 它指定了在应用程序协议 ( 如 HTTP 、 Telnet 、FTP) 和 TCP/IP 之间提供数据安全性分层的机制,它是在传输通信协议上实现的一种安全协议,采用公开密钥技术,它为TCP/IP 连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证。
SSTP可以认为是微软版的SSL VPN协议,微软自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 add
name=“sstp--pool” ranges=172.30.0.2-172.30.0.254
/ppp profile add
name=“sstp--profile” use-encryption=yes local-address=172.30.0.1
dns-server=8.8.8.8
remote-address=sstp--pool
/ppp secret add
name=sstpuser1 profile=sstp--profile password=sstpuser1 service=sstp
/interface
sstp-server server set enabled=yes default-profile=sstp--profile
authentication=mschap2
/interface
sstp-server server set enabled=yes default-profile=sstp--profile authentication=mschap2
certificate=server.xu.com force-aes=yes pfs=yes
2、 配置证书系统并导出CA证书
以下步骤同样是在RouterOS上做:
第一步先建立证书模板。
/certificate
add
name=ca-template common-name=ca.xu.com
days-valid=3650 key-size=2048 key-usage=crl-sign,key-cert-sign
add
name=server-template common-name=*.xu.com days-valid=3650
key-size=2048 key-usage=digital-signature,key-encipherment,tls-server
第二步进行签名,ca做自己签名。
/certificate
sign ca-template
name=ca.xu.com
sign server-template
name=server.xu.com ca=ca.xu.com
第三步导出ca证书(用export),再下载到本地,这些步骤可通过webcfg的菜单界面来做比较方便。
第四部,在客户端计算机上导入打本地计算机中。
注意证书存储位置一定要导入到“本地计算机”的“受信任的根证书颁发机构”中。
3、 在PC客户端导入CA证书。
在win10的客户端上,在网络的一栏中,添加连接,如下图所示:
连接名称可以任意写一个容易记住的名字,但是服务器名称或地址必须要写域名,本文是server.xu.com
。因为是测试环境,我需要修改我的etc/hosts文件,正式环境可不用修改。Hosts文件添加一行:
192.168.12.251 server.xu.com
如果是大规模部署,可手工方式建立sstp 的链接文件,直接在客户机器上运行以下命令:(在powershell以管理员命令方式运行)
PS> powershell.exe -c ‘Add-VpnConnection -name “SSTP-VPN连接” -ServerAddress
“server.xu.com” -TunnelType Sstp -auth MSChapv2 -RememberCredential
-PassThru’
4、测试。
在windows10机器上,找到“Sstp-连接”,拨号,输入用户名和密码(我用的用户名和密码都是sstpuser1),测试,正常。
总体来说比较简单,是一台比较有用的SSL设备,适合小微企业使用。RouterOS路由器的基础设置本文并没有写出来。最主要有设置有内外网ip,nat转换使之能上网,如果实际使用还需要做一些安全设置,如更改admin密码,关闭不常用的端口等。还需要申请域名和公网地址,祝顺利。
常见错误:
SSL握手失败时,您将看到以下证书错误之一:(综合了网上的一些信息和我自己总结的一些错误)