PAM_RADIUS(8)
π PAM_RADIUS(8) β the rad(ius) manual π¦
okay so real talk, this is the pam_radius page from the System Manager's Manual, and it's literally about plugging RADIUS auth into your PAM stack. iconic behavior, no cap.
β¨ NAME β¨
pam_radius β the RADIUS authentication PAM module, bestie π
πΈ SYNOPSIS πΈ
[service-name] module-type control-flag pam_radius [options]
that's the whole vibe. drop it in your PAM config and go π
π DESCRIPTION π
so the pam_radius module hands you authentication services built on top of the RADIUS protocol β that's Remote Authentication Dial In User Service, iykyk β all wired into the PAM framework, aka Pluggable Authentication Modules. it's giving "let the remote server decide who gets in" and honestly? slay.
the pam_radius module accepts these optional parameters π (yes, all of them, we're not skipping a single one):
π§ the option lineup
use_first_passβ makespam_radiusreuse a password that was already entered instead of prompting for a fresh one. lowkey important: if no password has been entered, then authentication fails. periodt. πtry_first_passβ makespam_radiususe a previously entered password if one is available. if there isn't one? no stress, it just prompts for one like usual π«Άecho_passβ causes echoing to be left on ifpam_radiusprompts for a password. (yes, it'll show up on screen. we're trusting the room π)- *
conf=pathname* β specifies a non-standard location for the RADIUS client configuration file. the normal spot is/etc/radius.conf, but you can point it wherever if that's your main character energy. - *
nas_id=identifier* β specifies a NAS identifier to send instead of the hostname. little name tag for your box π - *
nas_ipaddr[=address*] β specifies a NAS IP address to be sent. and here's the cute part: if the option is present but there's no value provided, then the IP address corresponding to the current hostname gets used. it just figures itself out β¨ template_user=username β okay this one's a whole thing so buckle up. it specifies a user whosepasswd(5)entry gets used as a template to create the session environment *if the supplied username doesn't exist in the local password database. the user gets authenticated with the supplied username and password, but their credentials to the system will be presented as the ones for *username β i.e., their login class, home directory, resource limits, etc. will all be set to the ones defined for username.
and if this option is omitted, and there's no username in the system databases equal to the supplied one (as determined by a call to getpwnam(3)), then authentication will fail. no template, no entry. that's the rule π
no_reply_messageβ suppresses printing the contents of any Reply-Message attributes found inAccess-AcceptandAccess-Rejectresponses. normally these get passed along to the user as informational or error messages, depending on whether the access request was accepted or rejected β so this flag is like "bestie, keep it to yourself" π€no_warnβ suppresses warning messages to the user. these messages include the reasons why the user's authentication attempt was declined. so like, the why. gone. π«₯
π FILES π
/etc/radius.confβ the standard RADIUS client configuration file forpam_radiusπ
π SEE ALSO π
pam(3), passwd(5), radius.conf(5)
go read those too, they're literally the supporting cast π
β HISTORY β
the pam_radius module first appeared in FreeBSD 3.1. the pam_radius manual page first appeared in FreeBSD 3.3. vintage. antique. still serving ποΈ
π AUTHORS π
- the
pam_radiusmanual page was written by Andrzej Bialecki<abial@FreeBSD.org>βοΈ - the
pam_radiusmodule was written by John D. Polstra<jdp@FreeBSD.org>π οΈ
absolute legends, both of them π«Ά
and that's the page!! this one's from the Debian crew, dated May 16, 2018 β shoutout to them for keeping the RADIUS-PAM pipeline alive, mwah πβ¨
π¦ where this page comes from
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- Copyright (c) 1992, 1993, 1994 The Regents of the University of California. All rights reserved
- Copyright (c) 1999 Andrzej Bialecki <abial@FreeBSD.org>
- Copyright (c) 2018 The University of Oslo
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms