网上买了台J4125的小机器,开启了我的折腾之路。
网络拓扑图
如上图,一共有两台主要设备。为了避免All in Boom,主路由单独设置。
主路由
主路由没有太折腾,直接使用一款成熟的家用路由器就行。唯二需要额外的设置,一是对OpenWrt的端口映射,二是DHCP下发的网关指向OpenWrt。
J4125
该机器和主路由使用双网线连接,这里使用了ESXi虚拟化平台,虚拟了三个系统。
OpenWrt
OpenWrt主要有两个作用。
一是当作网关,为家里的其他设备提供科学上网的路径。不需要的时候直接修改DHCP服务将网关指回主路由即可。
二是当作VPN服务器,提供了异地组网/外面连回家的方案。同时启用了OpenVPN与SS服务。其中SS只能提供浏览网页的方法,如果需要SSH或者SMB,则必须使用OpenVPN服务。
Ubuntu
这其实就是一个Linux系统,选用哪个发行版其实没有太大关系(反正都是跑Docker),下面列举一些服务。
- Portainer 管理所有Docker服务
- Seafile 网页版的文件共享,适合与朋友一起分享文件用
- NasTool 找电影
- Jellyfin 家庭影院
Windows Server
文件的主硬盘以USB的形式插在了Win Server上,主要负责提供SMB共享与LDAP身份认证功能。
Q&A
Q:为什么还要LDAP服务?
A:SMB、Jellyfin等家人常用的服务都支持LDAP登录,账户名/密码共享是个好文明。目前还在研究在Ubuntu上部署一套OpenVPN,如果成功,Ubuntu上的OpenVPN也可以接入LDAP认证。
Q:为什么不用samba与openLDAP?
A:Win Server图形界面省事。
Q:Ubuntu中为什么没有下载服务?
A:国内资源网盘找,用脚本解析出直链地址之后直接aria之。
Q:All in Boom怎么办?
A:目前也没什么好办法,只能将主路由分离出来,万一Boom了不会影响正常上网。下一步打算考虑把OpenVPN独立出来,避免All in Boom之后无法从外面访问内网。