• WRT1900ACS搭建openwrt服务器小记


    参考链接

    openwrt wrt1900acs
    openwrt mx4200
    openwrt E8450
    openwrt usb-drives-quickstart
    openwrt Using storage devices

    注意:MX4200标签没有注明V1还是V2,即默认是V1. MX4200有掉线问题,不推荐。
    注意:E8450有个Kiss of Death问题,不推荐。

    目前来看,wrt1900acs运行最稳定,可惜只是WiFi 5标准。

    刷机

    wrt1900acs原生固件openwrt-23.05.3-mvebu-cortexa9-linksys_wrt1900acs-squashfs-factory.img
    wrt1900acs openwrt更新刷openwrt-23.05.3-mvebu-cortexa9-linksys_wrt1900acs-squashfs-sysupgrade.bin

    通过WEB UI来刷,过程简单,不做叙述。

    玩机

    扩展overlay

    • 安装驱动
    opkg update
    opkg install block-mount kmod-fs-ext4 e2fsprogs kmod-usb-storage-uas parted kmod-usb-storage kmod-usb3
    
    opkg install kmod-usb-storage block-mount  kmod-fs-vfat kmod-nls-cp437  kmod-nls-iso8859-1 kmod-fs-exfat usbutils
    
    • 识别U盘

    将U盘格式化成ext4,插入之后,执行block info

    /dev/ubiblock0_0: UUID="717bd2c9-ad69faf3-6b367d9c-27ac56f7" VERSION="4.0" MOUNT="/rom" TYPE="squashfs"
    /dev/ubi0_1: UUID="1b356301-ad42-41d3-a448-20b80a6fd110" VERSION="w5r0" TYPE="ubifs"
    /dev/ubi1_0: UUID="493531ba-86cd-421e-aa0b-39fc2950eb38" VERSION="w4r0" TYPE="ubifs"
    /dev/sda4: UUID="c6115da9-3e8f-4f93-9937-0e1e04531676" VERSION="1.0" MOUNT="/overlay" TYPE="ext4"
    
    • 备份overlay
    mkdir /mnt/sda1
    mount /dev/sda1 /mnt/sda1
    tar -C /overlay -cvf - . | tar -C /mnt/sda1 -xf -
    sync
    
    • 修改fstab
      可以通过命令block detect来生成模板。
    root@WRT1900ACS:~# cat /etc/config/fstab
    config 'global'
            option  anon_swap       '0'
            option  anon_mount      '0'
            option  auto_swap       '1'
            option  auto_mount      '1'
            option  delay_root      '5'
            option  check_fs        '0'
    
    config 'mount'
            option  target  '/overlay'
            option  uuid    'c6115da9-3e8f-4f93-9937-0e1e04531676'
            option  enabled '1'
    

    重启确认

    root@WRT1900ACS:~# df -h
    Filesystem                Size      Used Available Use% Mounted on
    /dev/root                 3.3M      3.3M         0 100% /rom
    tmpfs                   248.0M      4.6M    243.4M   2% /tmp
    /dev/sda4               113.3G     41.8G     65.6G  39% /overlay
    overlayfs:/overlay      113.3G     41.8G     65.6G  39% /
    tmpfs                   512.0K         0    512.0K   0% /dev
    

    可见,overlay已经扩展。128G的U盘目前足够使用一段时间。

    samba

    • 安装
    opkg update
    opkg install luci-app-samba4
    
    • 配置
      通过openwrt UI配置即可。两种方式,二选其一。
      在这里插入图片描述
      重点是共享目录配置足够权限
      drwxrwxrwx 6 root root 4.0K May 7 14:58 share

    考虑到安全,修改/etc/passwd

    root@WRT1900ACS:/etc# cat passwd | grep ethan
    ethan:*:1000:65534:ethan:/var:/bin/false
    

    设置密码

    smbpasswd -a ethan
    

    aria2

    • 安装
    opkg update
    opkg install luci-app-aria2
    

    配置MX4200 V1时,发现aria2启动不成功,提示。

    Exception caught
    Exception: [Platform.cc:125] errorCode=1 OSSL_PROVIDER_load 'legacy' failed.
    

    解决方法

    • 安装依赖
    opkg update
    opkg install openssl-util libopenssl libopenssl-legacy
    
    • 修改/etc/init.d/aria2
            procd_add_jail "$NAME.$section" log
            procd_add_jail_mount "/usr/lib"
            procd_add_jail_mount "$ca_certificate" "$certificate" "$rpc_certificate" "$rpc_private_key"
            procd_add_jail_mount_rw "$dir" "$config_dir" "$log"
            procd_close_instance
    
    • 配置
      openwrt aria2的配置方式跟linux版本有点差异,举例一下。
    # You can use most aria2 command-line options, replace '-' with '_'.
    # eg. 'rpc-secret' ==> 'rpc_secret'
    #
    # We do not support all options at this time. But you can add any option
    # with 'list extra_settings'.
    #
    # You can also add new config sections to define multi instance.
    #
    config aria2 'main'
            option enabled '1'
            option user 'aria2'
            option save_session '/overlay/share/Downloads'
            option dir '/overlay/share/Downloads'
            option config_dir '/var/etc/aria2'
            option bt_enable_lpd 'true'
            option enable_dht 'true'
            option enable_rpc 'true'
            option follow_torrent 'true'
            option bt_save_metadata 'true'
            option rpc_listen_all 'true'
            option rpc_secret 'JustDoIt'
            option file_allocation 'none'
            option save_session_interval '30'
            option seed_time '0'
            option max_concurrent_downloads '256'
            option max_connection_per_server '16'
            option max_overall_upload_limit '102400'
            option max_upload_limit '102400'
            option max_concurrent_downloads '256'
    
            # Add addition Headers here.
            # eg. list header 'Content-Encoding: gzip'
            list header ''
    
            # Add BT trackers here.
            # eg. list bt_tracker 'http://tracker.example.com/announce'
            list bt_tracker 'http://1337.abcvg.info:80/announce'
            list bt_tracker 'http://bt.okmp3.ru:2710/announce'
    
            # Add extra settings here.
            # eg. list extra_settings 'option=value'
            list extra_settings ''
    

    更多设置,请参考笔者其他文章。

    E8450救砖

    建议用Linux系统,然后先配置好minicom。

    sudo mtk_uartboot -a -p mt7622-ram-1ddr-bl2.bin -f openwrt-23.05.4-mediatek-mt7622-linksys_e8450-ubi-bl31-uboot.fip && sudo minicom
    

    可以重新加载本地BL2,然后执行。加载完成之后,可以上下键进入uboot模式,然后通过TFTP加载itb固件救砖。

    以下命令可以在当前目录设置TFTP服务器。先用网线从路由器的WAN口连接到电脑的网口。enp5s0就是ifconfig看到的端口名字。

    sudo ip addr add 192.168.1.254/24 dev enp5s0
    sudo dnsmasq --no-daemon --port 0 --enable-tftp --tftp-root="$(pwd)" -i enp5s0
    

    然后在uboot界面下选择TFTP加载固件启动即可。

    不会设置TFTP,也可以用串口加载

    loadx 0x4007ff28
    

    然后通过Ctrl + A在按Shift + Z进入minicom选择Send file,选择xmodem发送openwrt-23.05.4-mediatek-mt7622-linksys_e8450-ubi-initramfs-recovery.itb固件即可。
    最后通过

    bootm 0x4007ff28
    

    启动路由器。正常启动之后,都属于普通操作,不再赘述。

    桥接

    家电换新,家里无线设备剧增,增加了一个主路由器。为方便管理,之前的路由做了桥接。记录一下,设置桥接的方法。
    桥接设置
    禁用HDCP

    步骤:

    1. 正常登录路由器
    2. 接口Lan选择静态地址
    3. 地址选择主路由器同一个网段,例如:主路由器的地址是192.168.10.1,此副路由器则设置成192.168.10.2
    4. 网关选择主路由器的地址192.168.10.1(不设置此步,路由器自身无法上网)
    5. 禁用HDCP
    6. 网线连接方式改为副路由器Lan口连接主路由器Lan口(普通方式是副路由器Wan口连接主路由器Lan口)。
    7. 保存和执行设置(此时路由器会给两种选择,a. 设置并自动恢复,b. 直接设置)。建议先用a试试,确认好再重新来选择b.

    此时,副路由器的登录地址变成192.168.10.2。手机连接此路由器时,IP地址会是192.168.10.XXX,例如笔者的192.168.10.118

    其他

    还可以安装一些不足为外人道的小软件。例如nodejs,通过opkg install node安装。

  • 相关阅读:
    Java学习路线图,全套Java基础视频教程
    蓝桥楼赛第30期-Python模块大比拼-第一天赛题 题解
    巧用前缀和
    绿色通道——单调队列加二分加dp——修建草坪——单调队列+dp——理想的正方西——二维单调队列
    重新认识mysql
    类型组合——数组、结构、指针
    【数据结构初阶】八大排序(二)——快速排序&&冒泡排序
    【百战GAN】SRGAN人脸低分辨率老照片修复代码实战
    Nessus安装与使用
    mysql 备库重做
  • 原文地址:https://blog.csdn.net/MTzhou/article/details/138531478