内网搭建

公司目前有全国5个点,相关的oa系统全裸在公网上,建议boss做安全防护以及打通内部相关系统,考虑成本问题,选择方案为vm+RouterOS+radius认证

openVPN其实能更好的下发路由规则,但client在我国实在是。。。有人懂的

对于RouterOS配置不算复杂,百度+请教+手册,主要是在开启l2tp后的认证兼容性问题绕了很大圈子
比较有参考价值的:https://github.com/hulupiao/docker-ipsec-vpn-server
没有现成的对接radius,也没RouterOS强大,但对于client的配置部分说的很详细

对于认证的方案:
第一个方案为radius调用shell,shell调用php,php做smtp协议走邮箱的认证,但CHAP类协议在radius端没有存留密码是走不通的,所以放弃

第二个方案改为radius调用本地库mysql,要写UI管理系统,github拿来主义, 顺便修复了拿来系统的两个bug:
https://github.com/arch-lamp/freeradius-web-ui
然后把添加用户密码部分的md5和sha1方式去掉,在iOS, 安卓, windows上测试顺利通过

附ppp认证算法,主要有以下:

1、PAP:密码认证协议

客户端直接发送包含用户名/口令的认证请求,服务器端处理并作回应。

优点:简单。
缺点:明文传送,极容易被窃听。

2、SPAP:Shiva密码验证协议

Shiva公司开发,是一种受Shiva远程访问服务器支持的简单加密密码的身份验证协议。

优点:安全性较PAP好。
缺点:单向加密、单向认证,虽然是对密码进行加密,但还是会被破解,安全性差,通过认证后不支持Microsoft点对点加密(MPPE)。

3、CHAP:挑战握手协议

先由服务器端给客户端发送一个随机码challenge,客户端根据challenge,对自己掌握的口令、challenge、会话ID进行单向散例,即md5(password1,challenge,ppp_id),然后把这个结果发送给服务器端。服务器端从数据库中取出库存口令password2,进行同样的算法,即md5(password2,challenge,ppp_id),最后,比较加密的结果是否相同。如相同,则认证通过。

优点:安全性较SPAP有了很大改进,不用将密码发送到网络上。
缺点:安全性还不够强健,但也不错、单向加密、单向认证、通过认证后不支持Microsoft点对点加密(MPPE)。

4、MS-CHAP

微软版本的CHAP,和CHAP基本上一样,区别我也不太清楚。认证后支持MPPE,安全性要较CHAP好一点。

5、MS-CHAP V2

微软版本的CHAP第二版,它提供了双向身份验证和更强大的初始数据密钥,而且发送和接收分别使用不同的密钥。如果将VPN连接配置为用 MS-CHAP v2作为唯一的身份验证方法,那么客户端和服务器端都要证明其身份,如果所连接的服务器不提供对自己身份的验证,则连接将被断开。

优点:双向加密、双向认证、安全性相当高。
缺点:不太清楚。

6、EAP:可扩展的认证协议

EAP可以增加对许多身份验证方案的支持,其中包括令牌卡、一次性密码、使用智能卡的公钥身份验证、证书及其他身份验证。最安全的认证方法就是和智能卡一起使用的“可扩展身份验证协议—传输层安全协议”,即EAP-TLS认证。

优点:安全性最好。
缺点:需要PKI(公钥基础设施)支持。

发表评论

电子邮件地址不会被公开。 必填项已用*标注