小娱xiaoyu xy-c5 路由器 刷机openwrt, 最终PandoraBox完美运行

1、刷固件openwrt

顾虑到可能要安装cups(打印服务器)只支持19版本以下的,所以只能安装19的版本,官网没有找到,都是21以上的,所以我只能到外面找玩家自己编译的了。
我这次刷的包是来源于这里:https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=958130&extra=&ordertype=1&page=1
openwrt官网找版本号可到这个地址 https://firmware-selector.openwrt.org/ ,在搜索栏里面输入你的路由器型号
在这里插入图片描述
下载完固件后,我哥已经刷好了breed给我的,那我就直接先拔电,按住reset键不放,再插上电源,几秒后再松开,进入192.168.1.1页面,即可进入刷机界面,上传固件,开始刷机。
在这里插入图片描述

2、修改opkg的源

我刷完机后,没有改源,默认opkg update后,安装软件后就一运行报错
root@OpenWrt:~# fdisk -l
Error relocating /usr/lib/libfdisk.so.1: __gettimeofday_time64: symbol not found
Error relocating /usr/lib/libfdisk.so.1: __nanosleep_time64: symbol not found
Error relocating /usr/lib/libfdisk.so.1: __stat_time64: symbol not found
Error relocating /usr/lib/libfdisk.so.1: __fstatat_time64: symbol not found
Error relocating /usr/lib/libfdisk.so.1: __fstat_time64: symbol not found
Error relocating /usr/sbin/fdisk: __stat_time64: symbol not found
Error relocating /usr/sbin/fdisk: __fstatat_time64: symbol not found
Error relocating /usr/sbin/fdisk: __fstat_time64: symbol not found
Error relocating /usr/sbin/fdisk: __select_time64: symbol not found
Error relocating /usr/sbin/fdisk: __nanosleep_time64: symbol not found

有可能是安装源的问题,看了一下默认的是这样的,取的是snapshots版本(开发版)下面的软件源
src/gz openwrt_core http://downloads.openwrt.org/snapshots/targets/ramips/mt7621/packages
src/gz openwrt_base http://downloads.openwrt.org/snapshots/packages/mipsel_24kc/base
src/gz openwrt_luci http://downloads.openwrt.org/snapshots/packages/mipsel_24kc/luci
src/gz openwrt_packages http://downloads.openwrt.org/snapshots/packages/mipsel_24kc/packages
src/gz openwrt_routing http://downloads.openwrt.org/snapshots/packages/mipsel_24kc/routing
src/gz openwrt_telephony http://downloads.openwrt.org/snapshots/packages/mipsel_24kc/telephony

鉴于我的来源包的版本号是19的,所以我重新选了19.07.10,这是19的最后一个版本号为源

在这里插入图片描述
按这位博主介绍:https://blog.csdn.net/JackMaF/article/details/132353812

修改/etc/opkg/distfeeds.conf文件

vi /etc/opkg/distfeeds.conf

在这里插入图片描述

我把源按如下修改了版本号19.07.10,架构改成mipsel_24kc,注意https要改成http,现在系统wget还不支持ssl。

src/gz openwrt_core http://downloads.openwrt.org/19.07.10/targets/ramips/mt7621/packages
src/gz openwrt_base http://downloads.openwrt.org/19.07.10/packages/mipsel_24kc/base
src/gz openwrt_luci http://downloads.openwrt.org/19.07.10/packages/mipsel_24kc/luci
src/gz openwrt_packages http://downloads.openwrt.org/19.07.10/packages/mipsel_24kc/packages
src/gz openwrt_routing http://downloads.openwrt.org/19.07.10/packages/mipsel_24kc/routing
src/gz openwrt_telephony http://downloads.openwrt.org/19.07.10/packages/mipsel_24kc/telephony

先把这些链接放在浏览器里面,挨个点开看看正常访问不,如果都能正常访问就表示地址没错。
openwrt官网这是国外的源,我们可以再把它换成国内的源,岂不是要快了很多,那就更简单了,看看清华的源
在这里插入图片描述

根据它的地址规则看看,只需要把版本号前面的地址改一下http://downloads.openwrt.org/换成http://mirror.tuna.tsinghua.edu.cn/lede/releases/,要注意还是用http,不要用https,先用浏览器访问一下地址没错就可以了

src/gz openwrt_core http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/targets/ramips/mt7621/packages
src/gz openwrt_base http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/base
src/gz openwrt_luci http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/luci
src/gz openwrt_packages http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/packages
src/gz openwrt_routing http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/routing
src/gz openwrt_telephony http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/telephony

完成后执行,会发现快了很多。

opkg update

再安装个软件试试,速度很快,

root@OpenWrt:~# opkg install vsftpd
Installing vsftpd (3.0.3-3) to root...
Downloading http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/packages/vsftpd_3.0.3-3_mipsel_24kc.ipk
Configuring vsftpd.

用px 查看一下,服务运行正常,netstat看一下端口正常,用ftp工具可以正常登陆了

root@OpenWrt:~# netstat -pan
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      3333/vsftpd

再安装个blockd,发现还是报错,应该还是源配错了, 核心版本不对。

root@OpenWrt:/tmp/tmp/cups ipk# opkg install blockd
Installing blockd (2020-05-12-84269037-1) to root...
Downloading http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/targets/ramips/mt7621/packages/blockd_2020-05-12-84269037-1_mipsel_24kc.ipk
Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for blockd:
 *      kernel (= 4.14.275-1-6c891a3fd685a3ff23be7c2e98ea800e)
 * opkg_install_cmd: Cannot install package blockd.

在这里插入图片描述
如上图,现在这个刷的固件核心为4.14.141,而我现在配的核心为https://mirror-03.infra.openwrt.org/releases/19.07.0/targets/ramips/mt7621/kmods/4.14.162-1-2e88863ccdd594fb8e842df3c25842ee/
看来我要重新找个安装包, 或者重新找个4.14.141的源,怎么找, 我再研究一下。
经过查询,可能当时作者采用的是开发版本的核心,找不到对应的源,还是换个正常的固件方便些吧。

重刷openwrt 19.07.10固件

我看这个作者当时是刷了PBR-M1的固件,那我也刷它的固件吧,在19版本里面找个就可以了, 之前我的WNDR4300采用的是OpenWrt 19.07.0的固件,非常稳定,已经稳定运行半年没有关过机,挂了各种服务都没事,所以我还是选19.07.0试试。
最终刷了19.07.10版本,下载地址:https://mirror-03.infra.openwrt.org/releases/19.07.10/targets/ramips/mt7621/openwrt-19.07.10-ramips-mt7621-pbr-m1-squashfs-sysupgrade.bin
后来发现刷完这个版本的内存只有256M,没有办法发挥出这台机器的性能,所以不能使用这个固件了。

重新设置源

vi /etc/opkg/distfeeds.conf
src/gz openwrt_core http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/targets/ramips/mt7621/packages
src/gz openwrt_kmods http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/targets/ramips/mt7621/kmods/4.14.275-1-6c891a3fd685a3ff23be7c2e98ea800e
src/gz openwrt_base http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/base
src/gz openwrt_freifunk http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/freifunk
src/gz openwrt_luci http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/luci
src/gz openwrt_packages http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/packages
src/gz openwrt_routing http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/routing
src/gz openwrt_telephony http://mirror.tuna.tsinghua.edu.cn/lede/releases/19.07.10/packages/mipsel_24kc/telephony

挂载硬盘

首先安装必须的软件包

opkg install luci-i18n-base-zh-cn fdisk vsftpd block-mount mount-utils kmod-fs-ext4 usbutils  kmod-usb-storage

opkg install luci-i18n-base-zh-cn #中文包
opkg install fdisk  #查看硬盘信息
opkg install vsftpd #ftp服务
opkg install block-mount #页面自动挂载点,需要重启路由器刷新页面才出现“挂载点”。
opkg install mount-utils #可以使用UUID进行挂载
opkg install kmod-fs-ext4 #支持EXT4
opkg install usbutils #查看USB设备信息的工具,包括lsusb
opkg install kmod-usb-storage #安装usb存储设备驱动

重启路由后,刷新页面,可以在系统下面找到这个挂载点的工具界面了,挂载点勾上就可以挂载新加上的硬盘
在这里插入图片描述

部署syncthing

记得要下mipsle架构的,而且不是64位的,我下载的是syncthing-linux-mipsle-v1.27.0.tar.gz,下载地址:https://github.com/syncthing/syncthing/releases/download/v1.27.0/syncthing-linux-mipsle-v1.27.0.tar.gz

部署Syncthing

1、解压下载的Syncthing软件包

root@OpenWrt:/mnt/sda5# tar -xzvf syncthing-linux-mipsle-v1.27.0.tar.gz   //解压
root@OpenWrt:/mnt/sda5# mv syncthing-linux-mipsle-v1.27.0.tar.gz syncthing  //重新命名安装目录

2、将启动文件软链接到系统环境变量下

root@OpenWrt:~# ln -s /mnt/sda5/syncthing/syncthing /usr/bin/syncthing 

3、运行Syncthing生成配置文件

root@OpenWrt:~# syncthing     //由于上一步已经将启动文件链接到了环境变量,这里直接执行即可,会在root的home目录下面创建一些配置,后期会以这些配置文件来启动程序
root@OpenWrt:~/.local/state/syncthing# ls
cert.pem          config.xml        config.xml.v0     index-v0.14.0.db  key.pem

要注意的是,用/etc/init.d/syncthing脚本启动时,创建配置文件的目录与直接输入syncthing来运行时生成的配置文件目录不一致,所以需要在/etc/init.d/syncthing脚本里面指定-home目录。
更加要注意的是,这个目录如果一直放在root目录下面,一启动同步就会生成一些日志与数据库文件,所占空间比较大,很快就会占满root目录的空间,造成syncthing死掉, 所以我们要把这个目录转移到硬盘上去,脚本里面的home目录也要相应变更过去。

root@OpenWrt:~# mv ./.local/state /mnt/sda5/syncthing/config

5、编辑配置文件

root@OpenWrt:/mnt/sda5/syncthing/config# vi config.xml

    <gui enabled="true" tls="false" debugging="false" sendBasicAuthPrompt="false">
        <address>0.0.0.0:8384</address>
        <apikey>Zn43wXTiUfQeV2n5nUdLmRi76JMPabqP</apikey>
        <theme>default</theme>
    </gui>

修改配置文件将127.0.0.1修改为0.0.0.0即可,默认只允许本地访问

6、Openwrt设置syncthing开启自启动
在/etc/init.d/下编写service脚本

#!/bin/sh /etc/rc.common
START=99
STOP=15
 
start() {
  echo start
  #commands to launch syncthing, such as above
  syncthing -home="/mnt/sda5/syncthing/config/syncthing" >/dev/null &		#必须要指定-home目录,启动时如果没有的话会自动生成一些配置文件,用自启动时,默认的home目录会更改,所以必须要指定-home目录。
}
 
stop() {
  echo stop
  #commands to kill syncthing
  killall syncthing
}

这个脚本由sh来解释,/etc/rc.common做包装器,提供一些默认的命令。START=99,STOP=15指的是开机自启动的优先级,数字越大优先级越低,开机时优先级高的程序会先启动。

如果启动在boot期间,可以实现boot方法

rc.common模板,init脚本可用的命令有:

/etc/init.d/syncthing start         #启动脚本
/etc/init.d/syncthing stop          #停止服务
/etc/init.d/syncthing restart       #重启服务
/etc/init.d/syncthing reload        #重新加载配置文件,如果失败,重启服务
/etc/init.d/syncthing enable        #开启开机自启动
/etc/init.d/syncthing disable       #关闭开机自启动

.添加权限

chmod +x /etc/init.d/syncthing

开机启动

 /etc/init.d/syncthing enable

7、解决inotify-limits
当系统报如下图错误时:failed to setup inotify handler. Please increase inotify limits, see https://docs.syncthing.net/users/faq.html#inotify-limits

在这里插入图片描述

root@OpenWrt:/etc# sysctl fs.inotify.max_user_watches	#查看目前系统最大文件监控数
fs.inotify.max_user_watches = 8192

root@OpenWrt:/etc# vi /etc/sysctl.conf  #老毛子padavan的固件下面没有这个文件,直接新建一个这文件
fs.inotify.max_user_watches = 524288 #增加一行,修改默认值为524288

root@OpenWrt:/etc# sysctl -p  #使修改生效
fs.inotify.max_user_watches = 524288

root@OpenWrt:/etc# sysctl fs.inotify.max_user_watches  #再次查看结果,已经修改成功
fs.inotify.max_user_watches = 524288

开启从外网访问openwrt的ssh

要在 OpenWrt 上配置允许 SSH(端口22)并使其永久生效,您可以按照以下步骤进行操作:

登录到 OpenWrt 设备的管理界面或通过 SSH 连接到设备。

打开防火墙配置文件,在命令行终端中执行以下命令:

vi /etc/config/firewall

在配置文件中找到包含 “config rule” 的部分,并添加以下规则:

config rule
	option name 'Allow-SSH'
	option src 'wan'
	option dest_port '22'
	option proto 'tcp'
	option target 'ACCEPT'

这将创建一个名为 “Allow-SSH” 的规则,允许从外部网络(wan)访问设备的 SSH 端口(22)。

应用新的防火墙配置。在命令行终端中执行以下命令:

/etc/init.d/firewall restart

现在,SSH 端口(22)应该已经打开并允许访问了。
为了使配置永久生效,您还需要确保防火墙配置的持久性。执行以下命令保存配置更改并重新启动防火墙服务:

uci commit firewall
/etc/init.d/firewall enable

这样,配置将在设备重启后继续生效。

请注意,操作防火墙时需要谨慎。确保您只添加信任的网络和端口,并限制有关访问的规则,以提高安全性。

安装CUPS

从https://gitee.com/ytwl333/openwrt-musl-cups/tree/master/mipsel下面下载了CUPS的所有安装包。

root@OpenWrt:/mnt/sda5/cups# opkg install cups-bsd_2.1.4-1_mipsel_24kc.ipk
Collected errors:
 * pkg_init_from_file: Malformed package file cups-bsd_2.1.4-1_mipsel_24kc.ipk.

发现装不上去,难道一定要19.07.0的版本吗?这可是我必须的服务呀,openwrt对cups的支持从18版本之后已经不再支持了,这个19版本的还是另外高人另行编译出来的。

补记:后来才发现是下载的包有问题,我重新从上面的地址打包下载下来,再解压出来安装就OK了,为此浪费了一天时间,兜兜转转又回来19.07.10的版本了,经过测试,这个运行CUPS是很稳定的,没有任何问题。
下载好了包,直接安装上就可以了,然后进入页面,通过页面修改一些配置,很简单,也可以直接就看到几台打印机了,一路顺畅。

没办法, 重刷19.07.0试试看, 前面的工作都白费了,不过再部署应该会很快的。

重新刷上openwrt 19.07.1,还是一样的。

在查找问题的时候,百度到一篇文章:https://www.right.com.cn/forum/thread-4049542-1-1.html,这位跟我的情况是一样的,但他是在pandoraBox下面的,里面有位热心的网友帮他解决了, 说pandoraBox里面就自带cups包,那我岂不试一试看看。

再刷pandoraBox上试试
还是一样的,下载PBR-M1机型的固件,下载地址:
http://downloads.pangubox.com:6380/pandorabox/19.01/targets/ralink/mt7621/PandoraBox-ralink-mt7621-pbr-m1-2019-01-01-git-3e8866933-squashfs-sysupgrade.bin
刷完机,默认用户名密码:root/admin
登陆进去,发现什么都有的,真是大又全呀,全部不用自己搞了
在这里插入图片描述
各种服务全了,不用自己部署, 看一下硬盘都自动挂上了,都不需要干活了,直接用即可。

再试一下安装cups

[root@PandoraBox_4455:/mnt/sda5]#opkg update
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/targets/ralink/mt7621/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/19.01_core
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/base/Packages.gz
Updated list of available packages in /var/opkg-lists/19.01_base
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/newifi/Packages.gz
Updated list of available packages in /var/opkg-lists/19.01_newifi
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/pear/Packages.gz
Updated list of available packages in /var/opkg-lists/19.01_pear
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/19.01_packages
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/luci/Packages.gz
Updated list of available packages in /var/opkg-lists/19.01_luci
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/lafite/Packages.gz
Updated list of available packages in /var/opkg-lists/19.01_lafite
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/mtkdrv/Packages.gz
Updated list of available packages in /var/opkg-lists/19.01_mtkdrv
[root@PandoraBox_4455:/mnt/sda5]#opkg install cups
Installing cups (1.5.4-1) to root...
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/packages/cups_1.5.4-1_mipsel_1004kc_dsp.ipk
Installing libpng (1.2.51-1) to root...
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/packages/libpng_1.2.51-1_mipsel_1004kc_dsp.ipk
Installing libjpeg (6b-1) to root...
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/packages/libjpeg_6b-1_mipsel_1004kc_dsp.ipk
Installing libcups (1.5.4-1) to root...
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/packages/libcups_1.5.4-1_mipsel_1004kc_dsp.ipk
Installing libcupsmime (1.5.4-1) to root...
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/packages/libcupsmime_1.5.4-1_mipsel_1004kc_dsp.ipk
Installing libcupscgi (1.5.4-1) to root...
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/packages/libcupscgi_1.5.4-1_mipsel_1004kc_dsp.ipk
Installing libcupsppdc (1.5.4-1) to root...
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/packages/libcupsppdc_1.5.4-1_mipsel_1004kc_dsp.ipk
Installing libusb-1.0 (1.0.20-1) to root...
Downloading http://downloads.pangubox.com:6380/pandorabox/19.01/packages/mipsel_1004kc_dsp/base/libusb-1.0_1.0.20-1_mipsel_1004kc_dsp.ipk
Configuring libjpeg.
Configuring libpng.
Configuring libcups.
Configuring libcupsmime.
Configuring libcupscgi.
Configuring libcupsppdc.
Configuring libusb-1.0.
Configuring cups.

简直不要太完美, 一个错都没有报。
直接打开管理页面:http://192.168.1.1:631/admin 用户名密码与系统一致
添加打印机的时候发现找不到打印机,需要执行一下设备权限:

[root@PandoraBox_4455:/dev]#chmod -R 777 /dev/

如果再没有的话,需要安装几个包:

[root@PandoraBox_4455:/dev]#opkg install kmod-usb-uhci usbutils 

再刷新一下管理页面,添加打印机那里就可以看到自己的打印机了
总是打印几下打印机就死掉了,USB接口好像访问出错,以下是错误日志,无解,看来还得换固件,找不到解决的办法。

Sat Apr 13 14:35:55 2024 lpr.info cupsd[1906]: [Job ???] Request file type is application/octet-stream.
Sat Apr 13 14:35:55 2024 lpr.info cupsd[1906]: REQUEST 192.168.1.100 - - "POST /printers/GP2120T_Pan HTTP/1.1" 200 9702 Print-Job successful-ok
Sat Apr 13 14:35:55 2024 lpr.info cupsd[1906]: GP2120T_Pan Administrator 6 [13/Apr/2024:14:35:55 +0800] 1 1 - 192.168.1.100 50x40带物料_陆文炯 - -
Sat Apr 13 14:35:59 2024 lpr.info cupsd[1906]: [Job ???] Request file type is application/octet-stream.
Sat Apr 13 14:35:59 2024 lpr.info cupsd[1906]: REQUEST 192.168.1.100 - - "POST /printers/GP2120T_Pan HTTP/1.1" 200 9702 Print-Job successful-ok
Sat Apr 13 14:36:04 2024 kern.info kernel: [  454.792000] usb 1-1.3: reset full-speed USB device number 5 using xhci-hcd
Sat Apr 13 14:36:09 2024 kern.err kernel: [  459.868000] usb 1-1.3: device descriptor read/64, error -145
Sat Apr 13 14:36:17 2024 daemon.warn dnsmasq[2327]: nameserver 114.114.114.114 refused to do a recursive query
Sat Apr 13 14:36:24 2024 kern.err kernel: [  475.048000] usb 1-1.3: device descriptor read/64, error -145
Sat Apr 13 14:36:24 2024 kern.info kernel: [  475.252000] usb 1-1.3: reset full-speed USB device number 5 using xhci-hcd
Sat Apr 13 14:36:24 2024 daemon.err uhttpd[2889]: sh: /usr/lib/smartinfo/smart_status.sh: Permission denied
Sat Apr 13 14:36:25 2024 lpr.info cupsd[1906]: Saving job.cache...
Sat Apr 13 14:36:29 2024 kern.err kernel: [  480.328000] usb 1-1.3: device descriptor read/64, error -145
Sat Apr 13 14:36:44 2024 kern.err kernel: [  495.508000] usb 1-1.3: device descriptor read/64, error -145
Sat Apr 13 14:36:44 2024 kern.info kernel: [  495.712000] usb 1-1.3: reset full-speed USB device number 5 using xhci-hcd
Sat Apr 13 14:36:49 2024 kern.warn kernel: [  500.716000] xhci-hcd xhci-hcd: Timeout while waiting for setup address command
Sat Apr 13 14:36:55 2024 kern.warn kernel: [  505.924000] xhci-hcd xhci-hcd: Timeout while waiting for setup address command
Sat Apr 13 14:36:55 2024 kern.err kernel: [  506.132000] usb 1-1.3: device not accepting address 5, error -62
Sat Apr 13 14:36:55 2024 kern.info kernel: [  506.232000] usb 1-1.3: reset full-speed USB device number 5 using xhci-hcd
Sat Apr 13 14:36:59 2024 kern.warn kernel: [  510.500000] connection reset by peer.
Sat Apr 13 14:37:00 2024 kern.warn kernel: [  511.236000] xhci-hcd xhci-hcd: Timeout while waiting for setup address command
Sat Apr 13 14:37:05 2024 kern.warn kernel: [  516.444000] xhci-hcd xhci-hcd: Timeout while waiting for setup address command
Sat Apr 13 14:37:05 2024 kern.err kernel: [  516.652000] usb 1-1.3: device not accepting address 5, error -62
Sat Apr 13 14:37:05 2024 kern.info kernel: [  516.680000] usb 1-1.3: USB disconnect, device number 5
Sat Apr 13 14:37:05 2024 kern.warn kernel: [  516.692000] xhci-hcd xhci-hcd: xHCI xhci_drop_endpoint called with disabled ep 9a17f280
Sat Apr 13 14:37:05 2024 kern.warn kernel: [  516.700000] xhci-hcd xhci-hcd: xHCI xhci_drop_endpoint called with disabled ep 9a17f2ac
Sat Apr 13 14:37:05 2024 kern.warn kernel: [  516.708000] xhci-hcd xhci-hcd: xHCI xhci_drop_endpoint called with disabled ep 9a17f22c
Sat Apr 13 14:37:05 2024 kern.warn kernel: [  516.716000] xhci-hcd xhci-hcd: xHCI xhci_drop_endpoint called with disabled ep 9a17f200
Sat Apr 13 14:37:06 2024 kern.err kernel: [  516.772000] FAT-fs (sdb): unable to read boot sector to mark fs as dirty
Sat Apr 13 14:37:06 2024 kern.info kernel: [  516.796000] usb 1-1.3: new full-speed USB device number 7 using xhci-hcd
Sat Apr 13 14:37:11 2024 kern.err kernel: [  521.872000] usb 1-1.3: device descriptor read/64, error -145
Sat Apr 13 14:37:26 2024 kern.err kernel: [  537.052000] usb 1-1.3: device descriptor read/64, error -145
Sat Apr 13 14:37:26 2024 kern.info kernel: [  537.232000] usb 1-1.3: new full-speed USB device number 8 using xhci-hcd
Sat Apr 13 14:37:31 2024 kern.err kernel: [  542.308000] usb 1-1.3: device descriptor read/64, error -145
Sat Apr 13 14:37:36 2024 lpr.info cupsd[1906]: Saving job.cache...
Sat Apr 13 14:37:39 2024 daemon.err uhttpd[2889]: sh: /usr/lib/smartinfo/smart_status.sh: Permission denied

如果想用潘多拉,后来换到18.12(http://downloads.pangubox.com:6380/pandorabox/18.12/targets/ralink/mt7621/PandoraBox-ralink-mt7621-pbr-m1-2018-12-14-git-ba60306f2-squashfs-sysupgrade.bin)版本,发现没有问题,运行正常,速度也快, 这很有可能是我的最终选择了。

刷完 PandoraBox 18.12后,需要配置一下这个地方:

vi /etc/cups/cupsd.conf

BrowseWebIF Yes
ServerAlias * 

/etc/init.d/cups restart #重启服务

可以直接在web界面上修改
在这里插入图片描述
然后修改防火墙,放开631端口,做个端口转发
在这里插入图片描述

从外网访问SSH和管理界面

在防火墙里端口80转发一下
在这里插入图片描述

网络唤醒功能

[root@PandoraBox_4455:/root]# opkg install etherwake
[root@PandoraBox_4455:/root]# opkg install luci-app-wol  luci-i18n-wol-zh-cn #管理页面

在这里插入图片描述

重新部署synthing

由于之前已经把包都安装好了,保存在硬盘上的,所以现在就很快,只需要三部

[root@PandoraBox_4455:/root]#ln -s /mnt/sda5/syncthing/syncthing_moveTo_etc_init.d /etc/init.d/syncthing #给自动脚本在init.d下面做好软链接
[root@PandoraBox_4455:/root]#chmod +x /etc/init.d/syncthing  #添加执行权限
[root@PandoraBox_4455:/root]#ln -s /mnt/sda5/syncthing/syncthing /usr/bin/syncthing   #运行程序做好软链接
[root@PandoraBox_4455:/root]#/etc/init.d/syncthing enable #开机自启动
[root@PandoraBox_4455:/root]#/etc/init.d/syncthing start  #启动程序

重新刷回openwrt吧,感觉还是openwrt比较稳定,我要刷一个自带cups的包的官方版本看看,估计得17的版本吧, 不知道有没有

opentwrt 19.07.10 可以支持CUPS,并稳定运行, 只能识别256M内存
OpenWrt 23.05.3 可以支持CUPS,并稳定运行, 能识别512M内存, FTP上传写入速度15M 下载读取速度26M(较慢)
Padavan MT7621_7603_7612_512M 3.4.3.9-099_24-02-1,速度最快,能跑满千兆带宽,FTP上传下载分别是45和23,USB3.0硬盘挂载识别都没问题,响应速度也快,但貌似不太稳定,有两个操作过程中卡死了,页面无响应,网速没有了,仅有SSH还能正常执行,执行reboot后恢复正常。

用动态域名从外网访问PandoraBox路由器页面失败

报错时,提示以下错误
Forbidden
Rejected request from RFC1918 IP to public server address
在这里插入图片描述
解决办法:

[root@PandoraBox_4455:/root]#vi /etc/config/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 '0'   #这一行后面1改成0
        option max_requests '3'
        option max_connections '100'
        option cert '/etc/uhttpd.crt'
        option key '/etc/uhttpd.key'
        option cgi_prefix '/cgi-bin'
        option script_timeout '60'
        option network_timeout '30'
        option http_keepalive '20'
        option tcp_keepalive '1'
        option ubus_prefix '/ubus'
        list index_page 'cgi-bin/luci'

然后在页面上重启uhttpd服务,即可正常访问了。

也可以通过执行以下命令来重启:

/etc/init.d/uhttpd restart

一级路由访问二级路由

一级路由(PandoraBox):
LAN:192.168.10.1
二级路由1
LAN:192.168.0.0 WAN:(192.168.10.2)
二级路由2
LAN:192.168.3.0 WAN:(192.168.10.3)

在一级路由(PandoraBox)上设置如下:
在这里插入图片描述
二级路由1
让它可以访问上级路由与同级路由2(192.168.3.0)
在这里插入图片描述

二级路由2
让它可以访问上级路由与同级路由1(192.168.0.0)
在这里插入图片描述

FTP配置开放对外网访问

  1. 修改FTP模板, 增加
pasv_min_port=60024
pasv_max_port=60032

pasv_enable默认已经启用, 所以只需要指定端口范围, 以便后面设置防火墙打开对应的端口
在这里插入图片描述在openwrt上面没有luci界面,只能进入配置文件修改

root@OpenWrt:~# vi /etc/vsftpd.conf 
root@OpenWrt:~# /etc/init.d/vsftpd restart
anonymous_enable=YES    #允许匿名用户访问(必须)
anon_root=/mnt/sda1/anymous   	#匿名用户根目录(必须)
ftp_username=nobody     #定义匿名用户名(必须,否则用浏览器打开匿名时会一直要求输入用户名密码)
local_enable=YES        #允许本地用户登录(必须,否则会不让root账户登陆)
local_root=/            #本地用户主目录(必须,否则手机播放器登陆FTP会显示目录为空)
write_enable=YES  #允许写入权限
pasv_enable=YES   #PASV模式 (被动模式)
pasv_min_port=60024 #数据传输端口,PASV模式下,服务端开放的最小端口号,指定这个端口号方便开放防火墙,否则就是系统随机的
pasv_max_port=60032 #数据传输端口,PASV模式下,服务端开放的最大端口号,指定这个端口号方便开放防火墙,否则就是系统随机的

修改完配置重启 FTP 服务

/etc/init.d/vsftpd restart

PASV模式,即被动模式,是FTP(File Transfer Protocol,文件传输协议)中的一种连接方式。在PASV模式下,FTP客户端随机打开一个大于1024的端口(端口N),向FTP服务器的21号端口(默认的FTP端口)发起连接,并发送用户名和密码进行登录。登录成功后,客户端会发送一个PASV命令给服务器,通知服务器它处于被动模式。服务器在收到PASV命令后,会随机开放一个大于1024的端口(端口P)进行监听,并通知客户端自己的数据端口是P。客户端在收到服务器的通知后,会通过之前打开的端口N+1连接到服务器的端口P,从而在两个端口之间进行数据传输。
与PASV模式相对的是PORT模式,在PORT模式下,客户端打开一个大于1024的端口,并告诉服务器去连接这个端口。两种模式的主要区别在于数据链路的建立方式不同。在设置FTP服务器时,需要注意在服务器上为PASV模式指定可用的端口范围,并在服务器的防火墙上打开这些端口,以确保PASV模式能够正常工作。

防火墙配置:
需开放两条端口的配置21,与60024~60032,
在这里插入图片描述
在openwrt上面,FTP监听的只是LAN端口,所以要做转发,不能光开放端口60024~60032,不然从外网无法访问内网的FTP服务,表现为能连接上, 但下载不了目录列表。
在这里插入图片描述
从上图可以看到,21端口是监听了所有端口,但所所用的数据传输端口60029是在60024~60032范围内的,但是监听只是192.168.4.1的LAN口,并不是0.0.0.0,所以一直无法传输数据。
在这里插入图片描述

客户端配置被动模式
在这里插入图片描述
开放FTP与SMB可以参考这个链接里面,我的SMB还是有问题,无法访问。
https://www.cnblogs.com/milton/p/10327134.html
在通信规则里面按下面方式开放端口所示:
在这里插入图片描述

动态DNS服务

按如下配置好3322的动态域名后,一直报错!
在这里插入图片描述
查一下,论坛上说要安装一个openssl-util的包,安装之后,发现报的有点变化, 但是还是Error: ‘8’。

打开系统日志,每分钟报一次错

Mon Apr 29 07:34:57 2024 user.err ddns-scripts[10305]: 3322: GNU Wget Error: '8'
Mon Apr 29 07:34:57 2024 user.warn ddns-scripts[10305]: 3322: Transfer failed - retry 748/0 in 60 seconds
Mon Apr 29 07:35:57 2024 user.err ddns-scripts[10305]: 3322: GNU Wget Error: '8'
Mon Apr 29 07:35:57 2024 user.warn ddns-scripts[10305]: 3322: Transfer failed - retry 749/0 in 60 seconds
Mon Apr 29 07:36:58 2024 user.err ddns-scripts[10305]: 3322: GNU Wget Error: '8'
Mon Apr 29 07:36:58 2024 user.warn ddns-scripts[10305]: 3322: Transfer failed - retry 750/0 in 60 seconds
Mon Apr 29 07:37:58 2024 user.err ddns-scripts[10305]: 3322: GNU Wget Error: '8'
Mon Apr 29 07:37:58 2024 user.warn ddns-scripts[10305]: 3322: Transfer failed - retry 751/0 in 60 seconds
Mon Apr 29 07:38:58 2024 user.err ddns-scripts[10305]: 3322: GNU Wget Error: '8'
Mon Apr 29 07:38:58 2024 user.warn ddns-scripts[10305]: 3322: Transfer failed - retry 752/0 in 60 seconds
Mon Apr 29 07:39:58 2024 user.err ddns-scripts[10305]: 3322: GNU Wget Error: '8'
Mon Apr 29 07:39:58 2024 user.warn ddns-scripts[10305]: 3322: Transfer failed - retry 753/0 in 60 seconds
Mon Apr 29 07:40:58 2024 user.err ddns-scripts[10305]: 3322: GNU Wget Error: '8'
Mon Apr 29 07:40:58 2024 user.warn ddns-scripts[10305]: 3322: Transfer failed - retry 754/0 in 60 seconds

其实就在/etc/ddns/services这里面,找到3322.org配置API接口

vi /etc/ddns/services

“3322.org” “http://[USERNAME]:[PASSWORD]@members.3322.org/dyndns/update?system=dyndns&hostname=[DOMAIN]&myip=[IP]”

里面的members.3322.org,改成members.3322.net即可, 重启服务后,就没问题了。
在这里插入图片描述

最终选择:

最后决定使用PandoraBox PBR-M1 18.12 版本的固件,下载地址如下:http://downloads.pangubox.com:6380/pandorabox/18.12/targets/ralink/mt7621/PandoraBox-ralink-mt7621-pbr-m1-2018-12-14-git-ba60306f2-squashfs-sysupgrade.bin
在这里插入图片描述

搭建的服务有:
CUPS:远程多台打印服务器,稳定高效安全,真心好用
Syncthing:私有云,实现内外网多台设备文件同步,安全,自带P2P内网穿透BUF,消耗资源大户
PPTP VPN:VPN服务
WOL:网络唤醒,远程开机
FTP/SMB:文件传输共享与下载,这个不用说了, 固件自带
DDNS:动态域名
还有其它固件自带的一些服务都很好用,不一一例举了。

,经过测试,开启NAT的情况下,可以轻松跑满1000M
在这里插入图片描述
硬盘读写速度如下:
读取可以达到100M/s
在这里插入图片描述

写入速度比较慢,只有30M/s
在这里插入图片描述

潘多拉其它都好用, 但是CUPS的USB打印还是有问题,时常USB设备丢失了,我先把kmod-usb3的驱动删掉了, 又把kmod-usb-ohci、kmod-usb-uhci 驱动删掉了试试看,结果每次打印还是报如下日志,需要再继续观察

Mon Apr 29 14:55:59 2024 lpr.info cupsd[1865]: GP2120T Administrator 5 [29/Apr/2024:14:55:59 +0800] 1 1 - 192.168.4.2 New doc - -
Mon Apr 29 14:56:11 2024 kern.info kernel: [ 1900.532000] usb 1-1.3: reset full-speed USB device number 5 using xhci-hcd
Mon Apr 29 14:56:11 2024 kern.warn kernel: [ 1900.624000] xhci-hcd xhci-hcd: xHCI xhci_drop_endpoint called with disabled ep 99211c00
Mon Apr 29 14:56:11 2024 kern.warn kernel: [ 1900.632000] xhci-hcd xhci-hcd: xHCI xhci_drop_endpoint called with disabled ep 99211c2c
Mon Apr 29 14:56:11 2024 kern.warn kernel: [ 1900.640000] xhci-hcd xhci-hcd: xHCI xhci_drop_endpoint called with disabled ep 99211bac
Mon Apr 29 14:56:11 2024 kern.warn kernel: [ 1900.648000] xhci-hcd xhci-hcd: xHCI xhci_drop_endpoint called with disabled ep 99211b80

openwrt上搭建PPTP VPN

1、安装包

root@OpenWrt:~# opkg install pptpd kmod-mppe ppp
root@OpenWrt:~# vi /etc/config/pptpd

config service 'pptpd'
        option 'enabled' '0'   #开启
        option 'localip' '192.168.4.1'	#改成服务器LAN IP地址
        option 'remoteip' '192.168.4.20-30'  #给连接上来的客户端分配的IP地址池

config 'login'   #登陆的账号1
        option 'username' 'youruser1'
        option 'password' 'yourpass1'
        
config 'login'   #登陆的账号2
        option 'username' 'youruser2'
        option 'password' 'yourpass2'

root@OpenWrt:~# /etc/init.d/pptpd enable    # 开启启动,这个是最直接的方法,和service pptpd enable,效果是一样的
root@OpenWrt:~# /etc/init.d/pptpd start    # 启动
root@OpenWrt:~# netstat -antp    # 查看端口1723是否开启,注意开启防火墙

openwrt上搭建SEC VPN

  • 18
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值