除了 VPN,还有什么安全方式在外网访问公司资源?

2023-12-27 10:47:25 +08:00
 cndenis

公司内有个内容管理平台,有些编辑同事想在公司外使用,目前的方式是先连 OpenVPN 。

但是多数的编辑同事都不是技术,使用 OpenVPN 对于他们来说有点麻烦,有什么办法可以提供类似于 OpenVPN 的安全性但又更简单使用方法吗?

内容管理平台本身有登录,也已经放在 WAF 后面了,期望的效果是类似于 VPN 一样,未连 VPN 的用户连内容管理平台登录页都发现不了。

20332 次点击
所在节点    信息安全
104 条回复
jeremyl313
2023-12-27 13:10:29 +08:00
自己在家 ssh 公司电脑用的是自己服务器的 frp
shangyu7
2023-12-27 13:17:28 +08:00
不会用的开掉就是了,这么简单还不会,不长脑子吗
yufeng0681
2023-12-27 13:18:12 +08:00
1 、买一台有公网 IP 的云主机, 把前端搭建在上面,和后台服务对接上 [仅仅能通过这个通道访问后台系统,其他业务系统无法访问]

2 、让同事们在外网访问这个前端,进行业务操作。
wheat0r
2023-12-27 13:34:33 +08:00
@DIO #2 分发配置文件是一个问题
taro0822
2023-12-27 13:48:53 +08:00
zerotier 开启后使用内网 ip 访问内网资源 免费的套餐有 100 个名额应该足够用了
配好网设置开机自启后 可能是最无感的方式之一了
cheng6563
2023-12-27 13:52:20 +08:00
我司用的敲门砖,调用一个接口填入秘钥就将调用者的外网 IP 加入安全组白名单。秘钥由钉钉机器人申请。这样能保证基本的安全并且不用装那些奇奇怪怪的 VPN 客户端。
dode
2023-12-27 14:16:57 +08:00
IP 白名单
clino
2023-12-27 14:21:12 +08:00
citrix 也是一种可能的选择,不过客户端只支持 windows
cshlxm
2023-12-27 14:22:18 +08:00
说个运行商级的方案,5G 随行专网,sim 卡开专门流量包套餐,公司拉条专线,即可享受,不拨 vpn 直接访问公司内网。
ihipop
2023-12-27 14:28:56 +08:00
@cheng6563 手机数据网络和很多地方的家庭宽带是走 Nat 的,一个 IP 下面好多人,而且有可能出口还会来回跳
ryan4290
2023-12-27 14:29:52 +08:00
不要自己做决定,要和上面沟通好。

我这边有一个开发,自己搞了一个 frp 穿透,在家里用。差点被开掉。
adoal
2023-12-27 14:31:41 +08:00
最大的问题不是用什么技术方案,而是让管理层认可安全的重要性。
crac
2023-12-27 14:37:01 +08:00
参考阿里云 防火墙白名单
wowpaladin
2023-12-27 14:59:44 +08:00
ZTNA + SAML 单点登录
8355
2023-12-27 15:08:24 +08:00
低权限普通人员短信验证码 扫码登陆 这样可以防止他们乱存乱发密码
业务系统危险权限需要 vpn 核心业务开关或设置
服务器 ssh 需要配置证书
3 个层级
simplove
2023-12-27 15:26:21 +08:00
jumpserver 有个 web 的功能,就是在内网装一台 windows server2016 以上的机器,所有人通过 jumpserver 连接上来,它会创建 100 个随机账户,每人通过 jumpserver 连接上来会占用一个账户。断开后释放。
然后通过这个来连接内网资源,带监控的。很安全
yumusb
2023-12-27 15:27:45 +08:00
开发一个浏览器插件,然后插件里面访问这个域名的时候做鉴权。需要访问的人就安装插件。服务端判断如果是内网 IP 或者通过鉴权的才允许访问。
yjd
2023-12-27 15:27:59 +08:00
你这种需求确实 OpenVPN 不是很合适,整个网络走 vpn ,不走还得加静态路由表。
之前也有类似这种需求,写个批处理执行 ssh 客户端自动连接加端口转发,再打开网址。key 下发认证没做。
要更安全,需要套一层认证,微信扫码等等+公网 ip 限制通过后下发 key
cndenis
2023-12-27 15:57:14 +08:00
@clino 只支持 Windows 可不行,桌面端有人喜欢用 Mac ,后续有可能还要求手机端访问
doveyoung
2023-12-27 16:14:35 +08:00
专门登录上来回复一下。

看到楼上都在为 VPN 打抱不平,其实 OP 的问题我也遇到过……
你说安装个 VPN 真的很难吗?不难,拿到配置后下一步下一步就好了;
你说安装个 VPN 很容易吗?不容易,“那你能帮帮我吗”。

根本问题不在 VPN ,而是客户端需要额外配置这一个动作,即使客户端是技术人员,也有那种不会不学不想的人。
如果换掉 VPN 用另外一个产品也需要客户端做配置的话,没什么意义,他们仍然不愿意。

幸好 OP 遇到了我,不然你就遇不到我了。

假设你的业务是 BS 架构
关键字:nginx + auth + vouch + OIDC
nginx auth 模块先验证浏览器的 IP ,如果在白名单,直接请求到你的 web
如果不在白名单,auth 模块请求 vouch ,转给 OIDC 协议的产品;
OIDC 可以用 okta ,auth0 ,站内有个老哥做了 logto 也很不错,认证方式支持邮箱验证码、用户名密码、短信验证码等等。建议用邮箱验证码,心智负担小;
OIDC 认证完之后给浏览器发 token ,浏览器再到 nginx 验证 token 后放行,到业务界面,原来怎么登录还怎么登录;
如果你的 nginx 是付费版本的,可以不用 vouch ,免费版本的 nginx 无法对接 OIDC 所以才需要 vouch

客户端访问就变成了:
浏览器访问业务网站 --> 业务最外层的 nginx --> nginx auth --> vouch --> OIDC 登录验证 --> 验证通过 --> 业务登录页面
整个过程客户端只会看到浏览器多跳了几个网站,多输入一次验证码,我觉得推动起来没啥难度。


如果实际的业务也是你负责的,你可以做点改动,OIDC 验证完之后到业务那里就不用登录了,不过这是后话,不想改可以不改

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1003747

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX