GL-BE9300 Beszel Agent installation, MPTCP bug & System Crash

Hi everyone,
I wanted to share my experience installing Beszel Agent on a GL.iNet GL-BE9300. And asking for help.

While the installation process is standard for OpenWrt (aarch64), I ran into a critical MPTCP issue that eventually caused the router to drop all network connectivity.
Here is a summary so others can avoid bricking their connection.

System Info

Architecture: aarch64_cortex-a53_neon-vfpv4

Download and extract beszel agent

wget --no-check-certificate ``https://github.com/henrygd/beszel/releases/download/v0.17.0/beszel-agent_linux_arm64.tar.gz
tar -xzf beszel-agent_linux_arm64.tar.gz
chown root:root beszel-agent

The Beszel-agent file

KEY="ssh-ed25519 AAAAC3Nz..."
ADDR="192.168.1.1:45876"

start_service() {
procd_open_instance
procd_set_param command /usr/bin/beszel-agent
procd_append_param command -key "$KEY"
procd_append_param command -l "$ADDR"
procd_set_param respawn
procd_set_param stdout 1
procd_set_param stderr 1
procd_close_instance
}

Move to destination

mv beszel-agent /usr/bin/beszel-agent
chmod +x /usr/bin/beszel-agent

Creating the init script
(/etc/init.d/beszel-agent):

#!/bin/sh /etc/rc.common

START=99
USE_PROCD=1

Enabling the service:

chmod +x /etc/init.d/beszel-agent
/etc/init.d/beszel-agent enable
/etc/init.d/beszel-agent start

Firewall Configuration

Opening port 45876 for LAN access:

uci add firewall rule
uci set firewall.@rule\[-1\].name='Allow-Beszel'
uci set firewall.@rule\[-1\].src='lan'
uci set firewall.@rule\[-1\].proto='tcp'
uci set firewall.@rule\[-1\].dest_port='45876'
uci set firewall.@rule\[-1\].target='ACCEPT'
uci commit firewall
/etc/init.d/firewall restart

THE ISSUE: MPTCP

After configuration, the agent was running but failed to connect to the Beszel Hub (192.168.1.64 same LAN nothing special). The system logs showed repetitive kernel errors:

kern.err kernel: [2124650.832916] MPTCP: mptcp need to implement this function: net/mptcp/subflow.c,subflow_v4_init_req,1791It seems the MPTCP implementation in the GL-BE9300 kernel conflicts with how Beszel communicates.

The Fatal "Fix"

I attempted to disable MPTCP to resolve the error:

sysctl -w net.mptcp.enabled=0

Result: The agent immediately started working and connected successfully!
HOWEVER: After running for about 20-23 hours, the router completely lost internet connectivity. No WAN, no routing. The only solution was a hard reset and restoring settings from a backup.
Making this persistent via /etc/sysctl.d/99-disable-mptcp.conf seems to make the system unstable over time.
Conclusion:
On the current GL-BE9300 firmware, MPTCP appears to be buggy, blocking services like Beszel. However, disabling it leads to a system crash after a day.

Tip: Always keep a fresh backup before touching kernel parameters.

Question: How can I access my router 45876 port on my lan area? (No, vpn client not running)

Hi

Please try adding the following to the init script:

procd_set_param env GODEBUG=multipathtcp=0

Refer: Gl-inet router GL-MT3000 Beryl Update AGH to v0.107.59 from v0.107.57- error new wersion don't working · Issue #7749 · AdguardTeam/AdGuardHome · GitHub

It looks like working. Thank you for your help.

Just in case here my full /etc/init.d/beszel-agent script

#!/bin/sh /etc/rc.common

START=99
USE_PROCD=1

# Config
PROG=/usr/bin/beszel-agent
KEY="ssh- key copy from beszel"
ADDR="192.168.1.1:45876"
#EXTRA_DISK=""

start_service() {
    procd_open_instance
    procd_set_param command "$PROG"

    # Parameters
    procd_append_param command -key "$KEY"
    procd_append_param command -l "$ADDR"

    if [ -n "$EXTRA_DISK" ]; then
        procd_append_param command -ef "$EXTRA_DISK"
    fi

    # Enable in AppArmor the MPTCP
    procd_set_param env GODEBUG=multipathtcp=0

    # Automatic restart
    procd_set_param respawn ${respawn_threshold:-3600} ${respawn_timeout:-5} ${respawn_retry:-5}

    # Logging
    procd_set_param stdout 1
    procd_set_param stderr 1

    procd_close_instance
}