我之前写过文章《RouterOS建立SSTP服务器》将如何通过SSL证书搭建SSTP服务器,但是由于SSL证书时间有效期比较短,每年需要更新证书(RouterOS和客户端都要更新证书)比较麻烦,所以这次我通过RouterOS的自签名证书搭建SSTP VPN服务,自签名证书可以达到10年不需要更新证书。

一、创建自签名证书

1、生成根证书。

System –> Certificates –> + 

158-1.png

General选项卡,Name输入名称,如ca-77bx;Common Name输入RouterOS的公网IP者域名,如ca.77bx.com; Days Valid输入有效期,建议输入3650。

158-2.png

Key Usage选项卡,勾选crl sign和key cert. sign,点击ok完成根证书创建。

158-3.png

2、生成中间证书

System –> Certificates –> + ,General选项卡,Name输入名称,如server-77bx;Common Name输入*.77bx.com; Days Valid输入有效期,建议输入3650。

158-4.png

Key Usage选项卡,勾选digital signature、key encipherment和tls server,点击ok完成中间证书创建。

158-5.png

3、生成客户端证书(私钥)

System –> Certificates –> + ,General选项卡,Name输入名称,如client-77bx;Common Name输入ros.77bx.com; Days Valid输入有效期,建议输入3650。

158-6.png

Key Usage选项卡,勾选tls client,点击ok完成客户端证书创建。

158-7.png

4、证书签名

根证书签名,ca-77bx右键 –> Sign,Certificate选择ca-77bx, CA CRL. HOST填入RouterOS的公网IP或者域名(我这里ca.77bx.com已经解析到RouterOS),点击Start。

158-8.png

客户端证书签名,client-77bx右键 –> Sign,Certificate选择client-77bx, CA选择ca-77bx,点击Start。

158-9.png

中间证书签名,server-77bx右键 –> Sign,Certificate选择server-77bx, CA选择ca-77bx,点击Start。

158-10.png

以下是创建证书命令:

/certificate add name=ca-77bx common-name=ca.77bx.com days-valid=3650 key-size=2048 key-usage=crl-sign,key-cert-sign
/certificate add name=server-77bx common-name=*.77bx.com days-valid=3650 key-size=2048 key-usage=digital-signature,key-encipherment,tls-server
/certificate add name=client-77bx common-name=ros.77bx.com days-valid=3650 key-size=2048 key-usage=tls-client
/certificate sign ca-77bx name=ca-77bx ca-crl-host=ca.77bx.com
/certificate sign server-77bx name=server-77bx ca=ca-77bx
/certificate sign client-77bx name=client-77bx ca=ca-77bx

二、SSTP服务器配置

1、启用SSTP服务,PPP –> Interface选项卡,点击SSTP Server,打开设置框,勾上Enabled,Port修改默认的443端口(443端口大部分地区已封),Certificate选择证书,如server-77bx,点击OK

158-11.png

2、配置地址池,ip –> Pool –> +,Name输入VPN-Remote,Address输入100.64.1.2-100.64.2.254,点击OK创建完成

158-12.png

3、创建SSTP配置,PPP –> Profiles选项卡 –> +,Name输入VPN,Local Address输入ros网关地址即可,Romte Address输入VPN-Remote(上面创建的VPN地址池),DNS服务器配置下即可。

158-13.png

4、创建SSTP账号,PPP –> Secrets选项卡 –> +,Name表示VPN的用户名,Password表示VPN的密码,Service选择sstp,Profile选择刚才创建的VPN,点击OK即可。

158-14.png

以下是SSTP服务器配置命令:

/ip pool add name="VPN-Remote" ranges=100.64.1.2-100.64.2.254
/ppp profile add name="VPN" use-encryption=yes local-address=10.0.0.1 dns-server=10.0.0.1 remote-address=VPN-Remote
/ppp secret add name=vpn profile=VPN password=77bx service=sstp
/interface sstp-server server set enabled=yes default-profile=VPN certificate=server-77bx port=444

三、客户端证书导入

1、RouterOS导出ca证书

System –> Certificates,ca-77bx根证书右击,Export导出。

158-15.png

Files –> cert_export_ca-77bx.crt右击,点击Download下载到客户端。

158-16.png

2、安装ca根证书

证书右键,点击“安装证书”

158-17.png

选择“本地计算机”,点击“下一步”

158-18.png

选择“将所有的证书都放入下列存储”,点击“浏览”,选择“受信任的根证书颁发机构”,点击“确定”,点击“下一步”

158-19.png

点击“完成”

158-20.png

安全警告,点击“是”即可,提示导入成功。

158-21.png

四、创建客户端SSTP拨号

1、配置VPN,设置 –> 网络和Internet –> VPN,添加VPN连接,如下图配置

158-22.png

2、连接测试,已能正常上网

158-23.png

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。