RADDEBUG(8)

πŸ“¦
version 3.2.10 Β· 4 versions
, in alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, centos-stream 9, fedora 43, fedora 44, opensuse-leap 16.0

πŸŽ€ NAME πŸŽ€

okay so this is raddebug(8), fresh from the FreeRADIUS Daemon manual, and its whole job is literally to display debugging output from a running server. Bestie, it's the debug hookup you've been waiting for. 🫢


✨ SYNOPSIS ✨

raddebug [-c condition] [-d config_directory] [-D dictionary_directory]
[-n name] [-i ipv4-address] [-I ipv6-address] [-f socket_file] [-t
timeout] [-u user-name]

πŸ’… DESCRIPTION πŸ’…

okay so raddebug is a shell script wrapper around radmin that automates the whole "get debugging output from a running server" process. And the slay part? It does this without impacting service availability, unlike using radiusd -X. Iconic behavior, honestly. ✨

There are a number of prerequisites that are required for its proper operation β€” like, actual requirements, no skipping:

  • radmin must be available in the PATH.
  • The user running raddebug must have permission to connect to the server control socket.
  • The control socket must be configured. For instructions, see raddb/sites-available/control-socket.
  • The control socket must be marked as "mode = rw".
  • The user running raddebug must have permission to read and write files in the "logdir" directory. This is usually /var/log/radiusd.

For a number of reasons, the debugging output is placed in an intermediate file, rather than being sent directly to standard output. In order to prevent this file from growing too large, the raddebug program is automatically terminated after 10 seconds. This timeout can be changed via the -t parameter. πŸ•’

When the script exits, debug mode in the server is disabled, and the intermediate file is deleted. Cleanup queen. 🧹

Debug output from a live server can be redirected to only one location. If a second instance of raddebug is started while the first one is still running, the later one will over-ride the first one, and the first will stop producing output. It's giving "there can only be one main character" energy. πŸ’…


🌸 OPTIONS 🌸

  • -c condition β€” Set a specific debug condition. The format of the condition is as specified in the CONDITIONS section of the unlang manual page.
  • -f socket_file β€” The path to the control socket. See the radmin manual page for more description of this option.
  • -i ipv4-address β€” Show debug output for the client having the given IPv4 address. This option is equivalent to using:
-c '(Packet-Src-IP-Address == ipv4-address)'
  • -d config directory β€” The radius configuration directory, usually /etc/raddb. See the radmin manual page for more description of this option.
  • -D dictionary directory β€” Set main dictionary directory. Defaults to /usr/share/freeradius.
  • -n mname β€” Read raddb/name.conf instead of raddb/radiusd.conf.
  • -I ipv6-address β€” Show debug output for the client having the given IPv6 address. This option is equivalent to using:
-c '(Packet-Src-IPv6-Address == ipv6-address)'
  • -t timeout β€” Stop printing debug output after timeout seconds. The default timeout is sixty (60) seconds. Use -t 0 to print debugging output forever, or until the script exits.
  • -u name β€” Show debug output for users having the given name. This option is equivalent to using:
-c '(User-Name == name)'

πŸ¦‹ SEE ALSO πŸ¦‹

Go bother these pages, bestie:


πŸ’– AUTHORS πŸ’–

Alan DeKok <aland@freeradius.org>


That's the whole page, bestie. Source/version vibes: FreeRADIUS Daemon, dated 1 September 2010. Now go get that debug output, and remember: only one raddebug gets to be main character at a time. πŸ’…βœ¨

πŸ“¦ where this page comes from