Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Upgrade 22.05 to 23.01 fails on FreeRADIUS XMLRPC Sync

    Scheduled Pinned Locked Moved pfSense Packages
    3 Posts 1 Posters 798 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jos-andel
      last edited by

      Hello,

      We have four Netgate 7100's with PFSense Plus which we mainly use for OpenVPN user access. First three of them we upgraded from 22.05 to 23.01 without any issues, worked like a charm. But on the fourth I ran into trouble.

      This fourth is used a bit differently than the other three. On this one we maintain the users in freeradius, which it syncs to the other three using the FreeRADIUS XMLRPC Sync.

      After the upgrade the system booted, but the freeradius daemon didn't start. In the GUI there was a crash report:


      Crash report begins. Anonymous machine information:

      amd64
      14.0-CURRENT
      FreeBSD 14.0-CURRENT #0 plus-RELENG_23_01-n256037-6e914874a5e: Fri Feb 10 20:30:29 UTC 2023 root@freebsd:/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/obj/amd64/VDZvZksF/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/sources/FreeBS

      Crash report details:

      PHP Errors:
      [26-Mar-2023 10:34:52 Europe/Amsterdam] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /etc/inc/xmlrpc_client.inc:47
      Stack trace:
      #0 /usr/local/pkg/freeradius.inc(2505): pfsense_xmlrpc_client->__construct()
      #1 /usr/local/pkg/freeradius.inc(2453): freeradius_do_xmlrpc_sync('10.20.66.18', 'admin', 'qTEDrc5HiLsE9zF', '443', 'https', '150')
      #2 /usr/local/pkg/freeradius.inc(794): freeradius_sync_on_changes()
      #3 /etc/inc/pkg-utils.inc(715) : eval()'d code(2): freeradius_users_resync()
      #4 /etc/inc/pkg-utils.inc(715): eval()
      #5 /etc/rc.start_packages(66): sync_package('freeradius3')
      #6 {main}
      thrown in /etc/inc/xmlrpc_client.inc on line 47

      No FreeBSD crash data found.


      After some investigation I found that the xmlrpc sync-config seems to be the problem:


      PHP ERROR: Type: 1, File: /etc/inc/xmlrpc_client.inc, Line: 47, Message: Uncaught TypeError: Cannot access offset of type string on string in /etc/inc/xmlrpc_client.inc:47
      Stack trace:
      #0 /usr/local/pkg/freeradius.inc(2505): pfsense_xmlrpc_client->__construct()
      #1 /usr/local/pkg/freeradius.inc(2453): freeradius_do_xmlrpc_sync('1.2.3.4', 'admin', '*******', '443', 'https', '150')
      #2 /usr/local/pkg/freeradius.inc(794): freeradius_sync_on_changes()
      #3 /etc/inc/pkg-utils.inc(715) : eval()'d code(2): freeradius_users_resync()
      #4 /etc/inc/pkg-utils.inc(715): eval()
      #5 /etc/rc.start_packages(66): sync_package('freeradius3')
      #6 {main}
      thrown @ 2023-03-26 10:34:52


      When I remove that piece from a saved config.xml and import that config, the freeradius daemon starts, and seems OK.
      Then I tried to add the sync configuration, thinking it might help to make a fresh configuration. Adding seemed to work, but when I tried to enable the sync (tick enable, en save) another PHP error appeared in the GUI (3 of these):


      Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /etc/inc/xmlrpc_client.inc:47 Stack trace: #0 /usr/local/pkg/freeradius.inc(2505): pfsense_xmlrpc_client->__construct() #1 /usr/local/pkg/freeradius.inc(2453): freeradius_do_xmlrpc_sync('1.2.3.4', 'admin', '********', '443', 'https', '150')


      Uninstalling freeradius package and installing it again doesn't help.
      Also extra reboots won't help.

      So it looks freeradius seems to work for me on the three boxes which don't use the FreeRADIUS XMLRPC Sync, but it's broken on the one which uses the Sync.

      Luckily I could rollback easily using Boot Environments (hurray for ZFS!!!). I can out of time and had to roll back to 22.05, we have a working setup again.

      Is this a known issue? Any solution availabled for this?

      Kind regards,
      Jos Andel

      J 1 Reply Last reply Reply Quote 0
      • J
        jos-andel @jos-andel
        last edited by jos-andel

        @jos-andel
        Bug filed by Netgate Support : https://redmine.pfsense.org/issues/14182

        1 Reply Last reply Reply Quote 0
        • jimpJ jimp moved this topic from Problems Installing or Upgrading pfSense Software on
        • J
          jos-andel
          last edited by

          The filed bug gave a good hint about not having an empty HA-Sync configuration under 'System'. I've put a username and password in that configuration to make sure it's not empty.

          This results in a working upgrade, and working Freeradius after upgrade. XMLRPC also works fine after the upgrade.

          1 Reply Last reply Reply Quote 0
          • First post
            Last post
          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.