basic_getpwnam_auth(8)
π basic_getpwnam_auth π
okay bestie, sit down, hydrate, and let me tell you about basic_getpwnam_auth(8) β she's the Local Users auth helper for Squid, and she lives in the System Manager's Manual section, which is basically the main character section, iykyk π«Ά
π NAME π
basic_getpwnam_auth β Local Users auth helper for Squid β¨
πΈ SYNOPSIS πΈ
basic_getpwnam_auth
π DESCRIPTION π
okay so here's the tea: basic_getpwnam_auth lets Squid authenticate any local user account β like, it validates the user name and password of Basic HTTP authentication. periodt.
It does this using the getpwnam() and getspnam() routines for authentication. iconic behaviour, truly.
and the way that it's giving so many advantages over the NCSA module?? let me count them for you:
- Allows authentication of all known local users π
- Allows authentication through
nsswitch.confβ¨ - Can handle NIS(+) requests π¦
- Can handle LDAP requests π
- Can handle PAM requests π
ate, no crumbs.
π CONFIGURATION π
here's the config, bestie, copy it exactly:
auth_param basic program /path/to/basic_getpwnam_auth
auth_param basic children concurrency=1
β οΈ okay so THIS is the important part, listen up. When you're using this to authenticate against local UNIX shadow password databases, the program must be running as root or else it straight up won't have sufficient permissions to access the user password database. such use of this program is not recommended, fr fr β but if you absolutely need to, then make the program setuid root:
chown root basic_getpwnam_auth
chmod u+s basic_getpwnam_auth
π¨ and please note that in such configurations it is also strongly recommended that the program is moved into a directory where normal users cannot access it, because this mode of operation will allow any local user to brute-force other users passwords. like, that's not a vibe. π Also note the program has not been fully audited and the author cannot be held responsible for any security issues due to such installations. so like, be careful, bestie. π
π AUTHOR π
This program was written by:
- Erik Hofman
<erik.hofman@a1.nl> - Robin Elfrink
<robin@a1.nl> - Giancarlo Razzolini
<linux-fan@onda.com.br>
Based on original code by Jon Thackray <jrmt@uk.gdscorp.com>.
This manual was written by Amos Jeffries <amosjeffries@squid-cache.org> π«Ά
π COPYRIGHT π
* Copyright (C) 1996-2026 The Squid Software Foundation and contributors
*
* Squid software is distributed under GPLv2+ license and includes
* contributions from numerous individuals and organizations.
* Please see the COPYING and CONTRIBUTORS files for details.
This program and documentation is copyright to the authors named above.
Distributed under the GNU General Public License (GNU GPL) version 2 or later (GPLv2+). π
π¬ QUESTIONS π¬
Got questions about how to use this program? Send them to the Squid Users mailing list <squid-users@lists.squid-cache.org> β they're lovely, I promise. π
π REPORTING BUGS π
Bug reports need to be made in English (yes, really, bestie, English only π). See https://wiki.squid-cache.org/SquidFaq/BugReporting for details of what you need to include with your bug report.
Report bugs or bug fixes using https://bugs.squid-cache.org/
Report serious security bugs to Squid Bugs <squid-bugs@lists.squid-cache.org> π
Report ideas for new improvements to the Squid Developers mailing list <squid-dev@lists.squid-cache.org> π‘
π₯ SEE ALSO π₯
squid(8), basic_pam_auth(8), basic_ncsa_auth(8), basic_ldap_auth(8), basic_nis_auth(8), chown(1), chmod(1), nsswitch.conf(5), getpwnam(3), getspnam(3), GPL(7)
The Squid FAQ wiki https://wiki.squid-cache.org/SquidFaq The Squid Configuration Manual http://www.squid-cache.org/Doc/config/
and that's the whole page, bestie!! π this lil gem comes to you from the System Manager's Manual, copyright 1996-2026 The Squid Software Foundation and contributors, and it's basic_getpwnam_auth(8) forever and always π stay safe out there, don't setuid random binaries, and slay β¨π
π¦
π¦ where this page comes from
- alpine 3.23: squid-doc 7.6-r0 Β· GPL-2.0-or-later
- alpine 3.24: squid-doc 7.6-r0 Β· GPL-2.0-or-later
- arch rolling: squid 7.7-1 Β· GPL
- fedora 43: squid 7:7.5-1.fc43 Β· GPL-2.0-or-later AND (LGPL-2.0-or-later AND MIT AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSD-4-Clause-UC AND LicenseRef-Fedora-Public-Domain AND Beerware)
- fedora 44: squid 7:7.4-1.fc44 Β· GPL-2.0-or-later AND (LGPL-2.0-or-later AND MIT AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSD-4-Clause-UC AND LicenseRef-Fedora-Public-Domain AND Beerware)
- fedora 44: squid 7:7.7-1.fc44 Β· GPL-2.0-or-later AND (LGPL-2.0-or-later AND MIT AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSD-4-Clause-UC AND LicenseRef-Fedora-Public-Domain AND Beerware)
- nixos 26.05: squid 7.6
- nixpkgs unstable: squid 7.6
- ubuntu resolute: squid 7.7-0ubuntu0.26.04.1
- ubuntu stonking: squid 7.7-1ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms