openwrt挂载网站，让你的移动硬盘作为uhttpd挂载服务器
一前言之前本站介绍过，如何更改openwrt路由器的端口号，来解决电信、联通和移动运营商封禁家庭宽带端口号的文章：解决电信运营商封禁80和443端口，修改openwrt路由器的web访问端口号。今天介绍下如何将本地挂载的移动硬盘作为网站服务根目录，实现多端口访问。本文介绍了如何管理和配置uhttpd服务，包括启动、停止、重启和重新加载配置文件。通过修改/uetc/config/uhttpd配置，可以监听多个端口，并允许通过http://ip:8080/访问到特定目录。此外，还提到了CGI脚本的配置，如cgi_prefix和lua_prefix，以及/home、/key和/crt选项的作用。提供了多个相关脚本和资源链接供进一步学习。二配置教程1 SSH链接到旁路由2 编辑/ect/config/uhttpd文件vim /ect/config/uhttpd在其中增加如下的代码config uhttpd 'xboy' list listen_http '0.0.0.0:8080' list listen_http '[::]:8080' option home '/mnt/sda1/xboy' option cgi_prefix '/cgi-bin' option ubus_prefix '/ubus'注：上面代码中各参数的含义0.0.0.0:8080：表示监控IPV4的8080端口号； [::]:8080：表示监控IPV6的8080端口号； /mnt/sda1/xboy：设定的网站访问目录，比如移动硬盘下的xboy文件夹； /cgi-bin：cgi程序目录，如果是静态html可以不配置,cgi_prefix 定义了CGI脚本的前缀，该前缀相对应home路径，如果该字段为空，则cgi功能失效; lua_prefix 将请求转发给内置的Lua解析器，如果为空，则Lua功能失效; ubus_prefix ubus接线目录，如果为空，则ubus功能失效。3 让uhttpd加载配置文件/etc/init.d/uhttpd reload4 重启uhttpd程序/etc/init.d/uhttpd restart5 正常的话就可以用 http://路由器ip:8080访问了三注意事项1 uhttpd相关命令/etc/init.d/uhttpd start //启动uhttpd服务 /etc/init.d/uhttpd stop //停止uhttpd服务 /etc/init.d/uhttpd restart //重启uhttpd服务 /etc/init.d/uhttpd reload //重新加载uhttpd配置文件 /etc/init.d/uhttpd enable //启用uhttpd自动运行 /etc/init.d/uhttpd disable //停用uhttpd自动运行2 uhttpd的主配置文件config uhttpd 'main' list listen_http '0.0.0.0:80' list listen_http '[::]:80' list listen_https '0.0.0.0:443' list listen_https '[::]:443' option redirect_https '0' option home '/www' option rfc1918_filter '1' option max_connections '100' option cert '/etc/uhttpd.crt' option key '/etc/uhttpd.key' option cgi_prefix '/cgi-bin' list lua_prefix '/cgi-bin/luci=/usr/lib/lua/luci/sgi/uhttpd.lua' option network_timeout '30' option http_keepalive '20' option tcp_keepalive '1' option ubus_prefix '/ubus' option script_timeout '3600' list index_page 'cgi-bin/luci' option max_requests '50'上述参数含义从字面容易理解，key为私钥，crt为公钥。3 其他参考资料http://news.netcraft.com/archives/2011/04/06/april-2011-web-server-survey.htmlhttps://forum.openwrt.org/search.php?search_id=1586996754http://wiki.openwrt.org/doc/uci/uhttpdhttp://wiki.openwrt.org/doc/howto/http.overviewhttp://en.wikipedia.org/wiki/Comparison_of_lightweight_web_servers 各种web服务器之比较
解决电信运营商封禁80和443端口，修改openwrt路由器的web访问端口号
前言由于众所周知的原因，国内电信运营商宽带会封禁家用宽带的80/443端口号，但是有时候又需要远程访问路由器，除了桥接光猫外，今天介绍直接修改openwrt路由器的web访问端口号的方法。在OpenWrt路由器上，如何修改Web访问端口号，通常涉及到修改HTTP服务器的配置文件。默认情况下，OpenWrt使用的HTTP服务器是uHTTPd。以下是修改Web访问端口号的步骤：一、通过SSH登录路由器：使用SSH客户端连接到路由器。如果你的路由器上没有安装SSH服务器，你可能需要通过Web界面或其他方式启用SSH。二、编辑uHTTPd配置文件：执行命令vi /etc/config/uhttpd以编辑uHTTPd的配置文件。找到下面的代码：config uhttpd 'main' list listen_http '0.0.0.0:80' list listen_http '［::］:80'按键盘I进入编辑模式，将其修改为config uhttpd 'main' list listen_http '0.0.0.0:8080' list listen_http '［::］:8080'按下esc，然后输入:wq，并按Enter保存并退出：三、重新启动uHTTPd服务：为了使更改生效，需要重新启动uHTTPd服务。执行以下命令：/etc/init.d/uhttpd restart或者使用service命令：service uhttpd restart如果你使用了防火墙，你可能还需要更新防火墙规则以允许新的端口上的流量。
openwrt旁路由passwall科学插件出现 chrome 您的连接不是私密连接问题
家里的网络是openwrt 安装的passwall 旁路由模式上网，最近出现Chrome浏览器访问Google、Youtube等网站就提示 网络不是私密连接,如图，奇怪的是telegram等其他需要科学的软件可以正常访问。这种情况一般是DNS被污染了，导致google、youtube等网站证书被劫持了，博文的显示证书就是facebook之类的。经尝试，有如下解决办法：1 更换passwall的dns从Chinadns-ng改为Dnsmq2 启用Chrome浏览器的安全DNS为1.1.1.1访问入口为Chrome浏览器-设置-隐私与安全-安全-安全浏览：选择dns服务商为cloudflare1.1.1.1我采用的是第2种方案，启用后就能正常科学了。
一 前言之前介绍了ServerStat在Linux VPS的安装配置以及采用Vnstat来防止重启导致数据丢失的问题,需要的可以访问之前的博文：1）随时随地监控你的VPS状态——Serverstat部署折腾之路2）Serverstaus改用Vnstat统计VPS流量，避免服务器重启引起统计丢失本文介绍下如何在安装了openwrt的n1旁路由上安装Serverstat。Openwrt Serverstat安装教程1、下载stat_client，上传到/opt/ServerStatus目录mkdir -p /opt/ServerStatus赋予权限chmod +x stat_client2、新建/etc/init.d/stat_client文件nano /etc/init.d/stat_client粘贴如下内容（注意替换网址及密码等信息）#!/bin/sh /etc/rc.common # OpenWrt init script for stat_client START=99 USE_PROCD=1 start_service() { procd_open_instance procd_set_param command /opt/ServerStatus/stat_client -a "https://status.67890.de/report" -u h1 -p p1 -i pppoe-wan procd_set_param respawn procd_close_instance }保存赋予权限chmod +x /etc/init.d/stat_client3、将脚本添加到开机启动项/etc/init.d/stat_client enable4、手动启动脚本/etc/init.d/stat_client start
1 旁路由用途笔者一直使用N1上的OpenWrt作为自己局域网的网关，OpenWrt网关有两个用途：用于下载、DDNS、为局域网提供NAS服务等；用于特定设备等特定流量通过OpenWrt进行加密转发第二个用途需要设置特定设备等网关地址为N1的IP地址，而N1的网关地址指向主路由IP笔者家庭的宽带ISP提供IPV6服务，同时笔者购买的华为拨号主路由同样支持IPV6，并且局域网内的不连接Nano Pi的设备均可以正常获取公网IPV6地址，并且能够成功访问IPV6网站。2 旁路由获取IPV6一直存在的问题上，N1无法从主路由获得IPV6地址，N1无法连接IPV6网站，同时，连接到N1的特定设备也无法连接IPV6。这个问题困扰了笔者大半年，最近终于在一个UP主的视频里找了正确的设置方法。视频链接如下：3 IPV6设置方法设置过程简单记录如下：关闭LAN接口的所有IPV6设置新建一个网络接口并起一个名字协议选择DHCP v6客户端（因为主路由提供了DHCP v6服务）最关键的地方在于“包括以下接口”的地方，要选择“自定义接口”，并且输入“@lan”新接口的防火墙选择“lan”最后，贴图几个关键设置的地方1、LAN接口设置lan口设置-1lan口设置-22、IPV6口设置IPV6口设置-1IPV6口设置-2IPV6口设置-3IPV6口设置-43、其他注意事项ULA前缀留空，不需要设置。成功设置后，重启下N1，网关和连接网关的特定设备均可访问IPV6网络。
N1教程：Openwrt安装docker webui界面(基于flippy openwrt n1固件)
N1固件可玩性不错，刷了恩山flippy大佬的openwrt 55+o固件，源固件集成docker，在服务-docker开启即可。对于博主这样的小白来说，能用webui当然首选。看了下固件安装说明，里面已经讲了怎么开启docker webui，下面就把我的折腾过程说下吧。1.千万不要按照固件里面那个说明文件更改挂载点，切记，flippy大佬已经挂载好了。2.SSH登录N1，直接输入以下命令:/etc/docker-web系统会直接下载docker的web界面并帮你安装好。3.用IP:9999访问docker web界面即可，设置管理员账号和密码，后面就是docker 的可视化操作了。
最近空闲下来，折腾着把某讯N1刷了flippy大佬的openwrt固件，开启了微力同步。刚开始用的好好的，最近大容量同步的时候，openwrt下的微力同步经常出现崩溃，无法进入管理界面，进N1后台，发现verysync还是显示运行，于是登录/etc/verysync的文件夹，删除里面的临时文件，再重启verysync，发现还是无法进入管理界面。 之前查看分区的时候发现flippy大佬留得docker空间挺大的，约莫着用docker运行会不会更好一些。安装docker可视化界面的教程可以看这里:N1教程：Openwrt安装docker webui界面(基于flippy openwrt n1固件)由于docker默认源是docker.io，里面没有微力同步，因此从官方找了安装源，为保险起见还是用命令行安装。SSH登录N1后台，按如下步骤:1.先查看文件目录绑定情况root@OpenWrt:~# df -h Filesystem Size Used Available Use% Mounted on udev 512.0K 0 512.0K 0% /dev tmpfs 181.0M 108.0K 180.9M 0% /run /dev/mmcblk2p2 720.0M 646.6M 2.6M 100% / tmpfs 905.1M 34.8M 870.3M 4% /tmp tmpfs 512.0K 0 512.0K 0% /dev /dev/sda2 1.7M 27.0K 1.5M 2% /mnt/sda2 /dev/mmcblk2p4 4.9G 187.2M 4.4G 4% /mnt/mmcblk2p4 /dev/sda1 916.8G 25.5G 844.7G 3% /mnt/sda1 /dev/mmcblk2p3 720.0M 3.4M 707.0M 0% /mnt/mmcblk2p3 /dev/mmcblk2p1 157.5M 75.7M 81.8M 48% /boot cgroup 905.1M 0 905.1M 0% /sys/fs/cgroup /dev/mmcblk2p4 4.9G 187.2M 4.4G 4% /mnt/mmcblk2p4/docker2.运行安装命令root@OpenWrt:~# docker run --name verysync -d -v /mnt/sda1:/data -p 8886:8886 jonnyan404/verysync Unable to find image 'jonnyan404/verysync:latest' locally latest: Pulling from jonnyan404/verysync 069a56d6d07f: Pull complete 09a4617851cb: Pull complete e9bc0e4c440d: Pull complete Digest: sha256:7a33c178481fe0bd84bd94d1215c0f8ac659e41d319b527b18b2ea9546ee46f4 Status: Downloaded newer image for jonnyan404/verysync:latest d77088ffa0094377e52eb7efc293da1597e2f23b61d576e46c324bbb5e4e44253.熟悉的界面又回来了，尽情玩耍吧。
N1盒子openwrt 固件说明：openwrt包名格式更改为： openwrt_[soc]_[board]_Rxx.xx.xx_kxx.xx.xx.imgamlogic已支持 5.10内核，但是需要从 u盘或 tf卡启动，可以刷入emmc(仅数据分区），boot分区还是只能在 u盘或tf卡上面。 5.10内核的副作用是 905x3、922x等机型 hdmi 绿屏、启动时间较长、mac地址会发生变化等amlogic盒子统一用 update-amlogic-openwrt.sh 进行升级或降级。新增了 N1 和章鱼星球的新格式镜像（4分区，支持在线升降级），至此，amlogic的盒子全部统一了分区格式 副作用是：不支持从旧格式升级，也不能降级到旧格式，mmc设备名从以前的 mmcblk1变成了mmcblk2调大了个别固件的rootfs分区，因为以前的512MB快不够用了amlogic盒子的刷入emmc命令统一为： cd /root./install-to-emmc.sh升级降级方法统一为：把 update-amlogic-openwrt.sh 及 img镜像上传至 /mnt/mmcblk2p4cd /mnt/mmcblk2p4chmod 755 update-amlogic-openwrt.sh./update-amlogic-openwrt.sh xxxxx.img