iStoreOS的折腾记录

iStoreOS的折腾记录

记录一下iStoreOS重装过程中踩的一些坑

前情提要

前几日手贱想要折腾一下软路由的系统,结果把存储系统的内存卡刷坏了... (吐槽一下R66S的原装内存卡质量也太差了)

于是不得不买了一张新的内存卡重新搭建整个环境,花了我整整三天... 在此记录一些值得注意的点。

iStoreOS是什么?——来自通义千问

iStoreOS 是一个基于 OpenWrt 的开源路由器操作系统,专注于提供简洁、高效且易于使用的网络管理体验。它针对国内用户的使用习惯进行了深度优化,内置了丰富的插件生态,支持一键安装各类实用功能,如广告过滤、科学上网、内网穿透、流量统计等。同时,iStoreOS 拥有友好的 Web 管理界面,让用户可以轻松配置网络设置、控制设备访问权限以及管理家庭网络环境。因其高度可定制性和对多种主流路由器设备的良好兼容性,iStoreOS 受到了不少技术爱好者和家庭用户的青睐。

正文

iStoreOS

iStoreOS毕竟是一个基于OpenWrt的操作系统,因此所有的使用逻辑也来自于OpenWrt,在此不过多赘述。这里只来记录一些锦上添花的小插件,让iStoreOS更简洁更趁手。

Passwall

不过多赘述,相信你肯定需要,看这个项目:

https://github.com/bilibili2077/passwall-run

高级卸载

iStoreOS预装的一些插件中大概会有你用不到的或者不习惯的,自己卸载你大概率卸不干净,这个插件可以帮助你把插件、依赖和缓存一锅端了,彻底解决卸载点东西畏手畏脚的难题。哦,还可以解决你自己后安装的插件的卸载问题。

对于我来说,现在终于可以把DDNSGO、易有云全卸载掉,根本用不上啊...

https://xz.vumstar.com/

防火墙

OpenWrt的防火墙的逻辑确实给我造成了一些困扰,这个主要为路由器设计的firewall4防火墙和我熟悉的ufw完全不一样,但我确实有从外部访问的需要,因此在以前我都是直接让防火墙四敞大开的,直接暴露所有端口。但这终归不安全,因此我决定正好借着此次机会配置好防火墙,一劳永逸。

简单来说,在较新版本的OpenWrt中,通信规则>区域规则>常规设置,就这么简单。

所以解决方案就是,你可以让常规设置中的入站数据和区域转发规则中来自WAN侧的入站数据都设置为拒绝,这样防火墙将进入白名单模式。然后在通信规则里配置你想要开放的端口即可。比方说下图就是开放了来自WAN侧的上级ip端192.168.1.0/24对管理面板也就是80端口的访问,这样就可以从上级路由器下的设备访问到iStoreOS的管理面板。

2025-12-18-gxgjdddo.png

Nginx

iStoreOS跟OpenWrt一样默认使用uHTTPd作为Web服务器,因此如果你没有反向代理之类的特殊需求,大可以保持默认状态。但如果需要包括反向代理在内的高级功能,你就需要安装Nginx来替代uHTTPd。

较新版本的Nginx已经可以通过iStore一键安装了,你不需要再去进行手动的繁琐的配置让Nginx来取代uHTTPd,因为系统会自动配置好Nginx并禁用掉uHTTPd。但既然选择了安装Nginx就代表着有更多的需求,因此以下是你需要注意的点:

  1. 可能是因为魔改的luci-nginx与nginx的兼容问题,自动安装后的nginx是没有nginx.conf文件的,因此nginx在重启时就会报错找不到nginx.conf文件。解决的办法就是随便拷贝一个标准的nginx.conf到/etc/nginx路径下,让nginx在启动的时候能够识别到nginx.conf即可。别担心,nginx启动时虽然会检测nginx.conf,但实际上并不使用nginx.conf里面的配置启动,而是使用同目录下的uci.conf,这个我们之后再说。

  2. 你可以在/etc/nginx/conf.d/目录下添加你自己的自定义配置,nginx会在启动和重载时自动读取。

  3. nginx的日志你可以在状态>系统日志里查看。

  4. 如果出现了80和443端口占用的问题导致了nginx启动失败,可能是uHTTPd自己莫名其妙的启动了,去系统>启动项里面手动禁用它就好。

  5. 不要手贱删除/etc/nginx/uci.conf.template!!!不要手贱删除/etc/nginx/uci.conf.template!!!不要手贱删除/etc/nginx/uci.conf.template!!!
    重要的事情说三遍。luci-nginx的主配置来自/etc/nginx/uci.conf而uci.conf的自动生成依赖模版文件/etc/nginx/uci.conf.template。因此如果你手贱删掉了uci.conf.template,那么只能重装nginx了。
    当然,如果你需要修改nginx的主配置,就可以修改uci.conf.template,记得修改之前做好备份。不要尝试直接修改uci.conf,因为这个文件是动态生成的,你人为修改后再次重启会被覆盖掉。

评论