在家里不能通过 DDNS 的域名来访问 bitwarden ,因为没有 IP loopback 导致连不上。但当我使用 192 这个路由器的内网 IP 时,由于不是 https 链接,bitwarden 客户端拒绝链接。
请问有没有办法给内网的 bitwarden 单独设置一个 ssl 证书,内网通过 IP 访问的时候走这个证书,外网通过域名访问的时候走 DDNS 域名自带的证书?
我也尝试过在群晖上面设置一个 DNS 服务器,在家里的时候,内网优先使用这个 DNS 服务器,直接把域名解析到内网 IP 。在外面的时候,走正常的公共 DNS 服务器,于是就能连我的群晖外网 IP 。但不知道是不是设置有问题。电脑设置了群晖的 DNS 服务器以后,解析域名出来还是外网 IP 。
1
yujiang 162 天前
我也有类似问题,解决方法是套一个 Nginx 反代
|
2
itskingname OP @yujiang 那你的方案是外网的时候直连 Bitwarden ,内网的时候通过 nginx 连 Bitwarden ,在 nginx 设置 ssl 证书。这样就分开了?
|
3
ysc3839 162 天前 via Android
路由器上 DNS 设置把那个域名的解析改成内网 IP ,如果不支持的话那就在群晖上自建 DNS 服务器吧,不用路由器的 DNS
|
4
itskingname OP @ysc3839 你看我上面写的。设置以后有问题。
|
5
ysc3839 162 天前 via Android
@itskingname 说明设置错了,你是怎么设置的
|
6
Puteulanus 162 天前
——因为没有 IP loopback 导致连不上
你在路由器上直接把 DDNS 的域名给解析到 192 那个 IP 去,不会有 IP loopback 的问题呀 |
7
Puteulanus 162 天前
你最后一段就是正确的解决方案,只是得看一下它为什么没有正常工作(依然解析出外网 IP )。你用的 DNS 服务器是 adguard home 吗?它还挺好用的
|
8
coolloves 162 天前
外网 -> yourdomain -> nginx -> bitwarden
内网 -> yourdomain -> nginx -> bitwarden 同一套配置,唯一不同的就是你需要在内网中配置 host 也好,配置 dns 也好,让 yourdomain -> 192.168.x.x |
9
coolloves 162 天前
@coolloves 或者你就用不同的域名,就是两套 ssl 了
外网 -> yourpubdomain -> nginx -> bitwarden 内网 -> yourpridomain -> nginx -> bitwarden |
10
suifengdang666 162 天前
#3 正解,也是我目前的方案,实在不行在设备上加 hosts 指向内网 ip
|
11
royking930911 162 天前
插嘴问一句 密码管理 和网页收藏夹同步 有没有一套的自部署的解决方案 没有的话 有哪些比较好用的推荐?
|
12
happyxhw101 162 天前
很简单啊,hosts 就行,或者改局域网 dns
|
13
itskingname OP @Puteulanus #7 是群晖自带了一个 DNS 服务器。
|
14
itskingname OP @happyxhw101 改 hosts 麻烦的地方在于,离开家以后还要改回来。
|
15
Puteulanus 162 天前
@itskingname 那我觉得你还是排查一下为什么在内网还会解析出公网 IP ,几个猜测:
1. 群辉的 DNS 没有正常工作(比如记录设置错误等),可以用 nslookup 确认 2. 电脑这边有 DNS 缓存(可以尝试清理缓存或者等一段时间) 3. 电脑 DNS 设置或者 DHCP 下发有误(基本上可以在网卡状态页面确认) 4. 电脑上有其他拦截了 DNS 的东西(梯子,浏览器的安全 DNS 等) 如果是 1 的问题的话谨慎建议你换 adguard home 试试,如果你没有什么服务依赖群晖自己的 DNS 的话,adguard home 可能比群晖官方 DNS 套件好用,还有乐观缓存可以加速访问 |
16
TsubasaHanekaw 162 天前
内网直接改 host 就行.不要搞其他的
|
17
itskingname OP @Puteulanus 我准备试一试 adguard home
|
18
royking930911 162 天前
看了这个帖子 尝试部署了一下 发现了一个非常想吐槽的点
阿里云的免费 ssl 证书现在只有三个月有效期了 且一年最多 20 个证书额度 然后去腾讯云看 今年 4 月下旬开始 免费的 ssl 证书也变成 3 个月有效期了 但是额度变成 50 个 哎 太难了 这不得每三个月就得换一下证书 有没有啥自动化脚本可以自动续期或者更换的? |
19
diedat17 162 天前
我没有公网 ip ,我的解决方案是用 cloudflare tunnel
|
20
wanqingfengtao 162 天前
|
21
feaul 162 天前
我用的是 frp,内外网都没有问题
|
22
huang86041 162 天前
我是在路由器里面加入 host 解决了。网址指向内网 IP 地址
|
23
sekisui 162 天前 via iPhone
路由器直接挟持域名 包括 hosts 等等
|
24
FrankAdler 162 天前 via Android
应该是你设置错了,dns 直接解析到群晖上是绝对可以的,那么多人这么用呢
|
25
r6cb 162 天前
路由器装个 AdGuard Home ,把 ddns 的域名解析成内网 ip ,ddns 用外网 ip 。这样在家里连上路由器就是用内网 ip ,到外面用公共的 dns 解析出来就是外网 ip
|
26
charley008 161 天前
没有公网 ip ,用的是 ipv6.然后通过控制面板-登录门户-反向代理服务器解决
|
27
povsister 161 天前 via iPhone
路由器不支持 hairpin ?
|
28
benjaminliangcom 161 天前
我用的 vaultwarden + traefik + let's encrypt 自动配置证书。
我家里面有一个 DNS 服务器( Adguard home ),在家里面会解析为 traefik 内网 IP ,在外面用外网 IP ( FRP 的 IP )。 VaultWarden 本身就需要依靠反代实现 https ,所以不算增加了复杂度。 |
29
alfawei 161 天前 via iPhone
@royking930911 nginx
|
30
ltkun 161 天前 via Android
路由器 dns 劫持肯定是 OK 的
可以考虑换个路由器 |
31
Autonomous 161 天前
本地 DNS 重写可解
|
32
wheat0r 161 天前
优先用 DNS 解决问题
备选 NAT Hairpin |
33
lm930129 161 天前
@royking930911 acme 可以申请泛域名证书,自动续期
|
34
cnhongwei 161 天前
群晖自己本来就使用的是 nginx ,你 ssh 上去,把你的 nginx 配置文件放到 /etc/nginx/sites-enabled 这个目录中就行了,你自己想怎么发挥都可以,我就是 docker 启动很多服务,使用 nginx 反代出去 10 几个服务。证书你可以使用 let's encrypt ,自动更新方法也很多,我因为是 vps 上有自动更新,所以是使用定时任务同步回来的,定时任务我是直接编辑 /etc/crontab 来实现的。
|
35
cnhongwei 161 天前
没有必要设置 dns ,因为有些浏览器不使用设置的 dns ,而使用自己设置中的 dns ,所以最好就是内、外网使用不同的域名,通过 nginx 反代。
|
36
z5238384 160 天前
之前我也是直接在路由器上设置静态 dns 记录,后面因为 clash 用起来及其麻烦,经常出现莫名其妙的问题,最后还是路由器上设置一条 loopback ,建议能直接 loopback 别折腾了,明明就加一条 NAT 记录的事情, 你搞来搞去,整一堆麻烦事
|
37
itskingname OP |
38
z5238384 159 天前 via iPhone
@itskingname 你真有做 NAT 环回的需求 建议 就放弃光猫播号, 非常不推荐你用 dns 来实现 。 最痛苦的问题哪怕你设置都正确,各设备 DNS 缓存的问题 也会让你的体验相当糟糕,尤其是手机这种经常在移动网络和局域网 wifi 之间经常切换的设备,如果你还是考虑科学上网问题,基本上需要你每个设备都要单独设置,同时如果你如果想用一个域名访问内网多个设备,dns 这种方式会让你抓狂,足够让你喝几壶 。 没有更比一条源 NAT 记录 更简单 稳定的方式了,这样代价仅仅是让局域网设备之间互相访问多多一次 NAT 而已,没有什么其他更好选择,以上 亲身经历 。
|
39
itskingname OP @z5238384 理论上确实是这样。把光猫改成桥接,把路由器改成拨号。
|