bitwarden是一款非常出名的密码管理软件,vaultwarden则是bitwarden的开源版本,自己部署以后可以获取bitwarden的所有功能(VIP)

现在来介绍下如何在群晖中部署这个服务

安装docker,个人习惯会安装下portaniner,打开ssh,进入root账户

docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /mnt/home/portainer:/data --name portainer  --restart=always  portainer/portainer-ce

在注册表中搜索vaultwarden,下载完成后新建容器

如下图设置网络端口,在环境变量中添加ADMIN_TOKEN、存储空间如下下图

image-20230526222316746

image-20230526222415417

启动容器,发现http://NAS-IP:1280 无法登陆 ,需要创建SSL证书

利用群晖送的*.synology.me的域名来创建默认证书,并将所有服务的证书都选成上面这个

*.synology.me如何来的,只要某宝购买正版SN(海外版)一机一码那种,去海外群晖网站注册登陆,就完全洗白了,回头写一个洗白教程,现在918和3617只要20-30块一个就够了,很划算。

image-20230526222910635

image-20230526222943515

创建反代

在控制面板-登陆门户-高级-反向代理服务器中新增如下操作

image-20230526223159628

来源为HTTPS,主机名为*.synology.me,端口为1281,目的地HTTP,主机名localhost或者NAS-IP,端口就是上面的1280

image-20230526223305765

最后就是路由器添加映射端口

我的主路由是ROS,推荐直接用群晖的界面操作,省的一个个添加端口回流;

按照下面步骤,选择内置应用程序后,选择相应的端口,完成,最后点右下角应用,就能映射到路由器上了,直接通过外网https://*.synology.me:1281即可访问

image-20230526223716378

image-20230526223944459

ROS+ubuntu(clash)

之前一直都是ROS+openwrt(passwall)方案,最近折腾了下clash,感觉速度好像更快,于是写下这篇文章

Ros:

网络配置

LAN:192.168.1.1/23
WAN:PPPOE
DHCP:192.168.0.0/23(内网设备较多,所以用了23,这样可以192.168.0.1-192.168.1.254,一共500多个设备)

Ip设置在ip-address list

9c55a0f2642b4b04a1887919a60cc6af.png
2.Openwrt lan:192.168.2.2/23
Op的网关设置为ros的bridge2 192.168.2.1
Lan的防火墙里面加入下面两句话(大概意思是经过op处理的ip全部伪装成op的lan ip)
iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -I POSTROUTING -o br-lan -j MASQUERADE

3.Ros对来源192.168.0.0/23的非国内IP标记为op (ip--firewall-mangle),后面的passthrough意思是流量会不会继续往下走进行相关标记。原来op和ros同网段的话还要放行op的ip,现在不同网段了就不需要了。

3.1 setting-script中新增获取chia-ip的脚本,不过这个脚本有个小bug,在ip-firewall-address lists中加入192.168.0.0/16,不然远程V-P-N回来的时候打不开内网地址了。添加完后记得手动运行下。

/tool fetch url=http://www.iwik.org/ipcountry/mikrotik/CN
/import file-name=CN
:local CN [:len [/ip firewall address-list find list="CN"]]
:log info ("CN-list-update:"."$CN"."rule")
/file remove [find name="CN"]

或者添加 (已经加入私有地址,不需要添加上述192.168.0.0/16)

/tool fetch url=https://www.willnet.net/cnip_clang.rsc
/import file-name=cnip_clang.rsc
/file remove [find name="cnip_clang"]

3.2 在system schedual中 增加: 每30天执行一次 下面空白地方输入:
/system script run chia-ip

4.ip--firewall-Nat中伪装out.interface改为!Bridge2
19f35532f9fc23b14dd1c3eeed2f25e4.png
21ebca6445f12161f1ca06b609ddb26c.png
5.Dhcp设置,接口绑定bridge1,networks网关和dns指定192.168.1.1

a2b2d0a6478f53f87f17df1a7b561c4a.png
21bfbbce5693ea5a17d7be1f24185a44.png
6.Dns设置,allow remote那个打勾,servers指定op的lan ip192.168.2.2,pppoe-out1中的use peer dns要关闭
8af5208685d69ee885ed7ecbdefe1b21.png
ead470962d82a81a3818e1e11a73e9ab.png
7.Route设置
Ip-route中
目标ip是192.168.2.0/23的都走bridge2的网关
Distance选1
233c17ffe9b4a5ca7f871b5790fa65e2.png

流量标记为op的,都走op的网关(op的lan地址),优先级1
ee167a78712b6a23e72d71fc6edc7ff8.png
8.监视op是否正常
Tools-netwatch (host改为192.168.2.2)
b444c85bc4926887d55dd7f4b53432fe.png
Up:op的ip能ping通,设置ros的dns如下,启用mangle的规则,数字根据你实际的调整

:local dns "192.168.2.2"

/ip dns set servers=$dns

/ip firewall mangle enable number=18

/ip firewall mangle enable number=17

Down:如果不能ping通,调整ros的dns 223.5.5.5,并关闭相应的mangle的规则

:local dns "223.5.5.5"

/ip dns set servers=$dns

/ip firewall mangle disable number=18

/ip firewall mangle disable number=17