# Install linux-pam with Homebrew, apk, Nix

Pluggable Authentication Modules for Linux. Version 1.7.2 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:linux-pam
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install linux-pam
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add linux-pam
```

  Evidence: Alpine Linux edge package indexes: linux-pam from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz

- Nix (92%):

```sh
nix profile install nixpkgs#linux-pam
```

  Evidence: nixpkgs package indexes: pkgs/by-name/li/linux-pam/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:linux-pam
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/linux-pam>
- **Version:** 1.7.2
- **Source summary:** Pluggable Authentication Modules for Linux
- **Homepage:** <https://github.com/linux-pam/linux-pam>
- **Repository:** <https://github.com/linux-pam/linux-pam>
- **Upstream docs:** <https://github.com/linux-pam/linux-pam/tree/master/doc>
- **License:** BSD-3-Clause OR GPL-1.0-only
- **Source archive:** <https://github.com/linux-pam/linux-pam/releases/download/v1.7.2/Linux-PAM-1.7.2.tar.xz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- faillock (cli)
- mkhomedir_helper (cli)
- pam_namespace_helper (cli)
- pam_timestamp_check (cli)
- pwhistory_helper (cli)
- unix_chkpwd (cli)
- faillock (alias)
- mkhomedir_helper (alias)
- pam_namespace_helper (alias)
- pam_timestamp_check (alias)
- pwhistory_helper (alias)
- unix_chkpwd (alias)

## Dependencies

- libnsl
- libtirpc
- libxcrypt

## Build dependencies

- meson
- ninja
- pkgconf

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.7.2
- Local data: ok
- Upstream repository: https://github.com/linux-pam/linux-pam
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

Linux-PAM is the Linux implementation of the Pluggable Authentication Modules model: applications call a common PAM API, while administrators compose authentication, account, password, and session behavior through loadable modules and policy files.

### Project history

The PAM design entered the Unix security vocabulary through the October 1995 Open Software Foundation RFC by SunSoft authors Vipin Samar and Roland Schemers. That document framed PAM as a way to keep login, ftp, telnet, rlogin, and similar entry points independent from rapidly changing authentication mechanisms such as Kerberos, RSA, S/Key, smart cards, and local Unix passwords.

Linux-PAM carried that model into Linux distributions. The project repository identifies Andrew G. Morgan, Dmitry V. Levin, Thorsten Kukuk, Sebastien Tricaud, and Tomas Mraz among the original authors and maintainers, and the repository history preserves a long-running C codebase, manual pages, examples, tests, and release notes.

### Adoption history

PAM became part of the expected shape of a Linux login stack: distribution packages, service files under /etc/pam.d, and modules such as pam_unix, pam_limits, pam_env, pam_access, pam_faillock, and pam_mkhomedir made authentication policy composable without rebuilding every consumer program.

The Homebrew formula is Linux-only and packages Linux-PAM for Homebrew-on-Linux use cases, which is a good example of why package managers care about it: many higher-level packages assume the PAM ABI and module layout even when installed outside a traditional distribution.

### How it is used

Administrators use Linux-PAM by editing service-specific policy stacks in /etc/pam.d or the older /etc/pam.conf style, choosing modules and control flags for authentication, account checks, password changes, and session setup.

For developers and packagers, Linux-PAM matters as a C library and module ABI. Applications link to libpam and call pam_start, pam_authenticate, pam_acct_mgmt, pam_open_session, and related interfaces, while distributions ship modules and policy defaults.

### Why package nerds care

Linux-PAM sits at the uncomfortable but important boundary between package management and machine security: installing or upgrading it can affect login, sudo, SSH, desktop sessions, password policy, resource limits, and home-directory creation.

Its release notes show a classic system-library evolution story: security fixes, module deprecations, distro integration, build-system changes, Y2038-related cleanup, SELinux and audit support, and compatibility work across authentication stacks.

### Timeline

- 1995: OSF RFC 86.0 described the PAM architecture for unified login with pluggable authentication modules.
- 2005: The 0.99 release series included Linux audit support, module additions, and packaging-era cleanup visible in the Linux-PAM NEWS history.
- 2009: The 1.0.x release series marked Linux-PAM's transition out of the 0.99 series.
- 2020: Linux-PAM 1.5.0 removed deprecated pam_cracklib and pam_tally modules and pointed users toward pam_pwquality, passwdqc, and pam_faillock.
- 2024: Linux-PAM 1.6.0 added long-line configuration support and several parser-hardening changes.
- 2025: Linux-PAM 1.7.0 switched the build system from autotools to Meson.
- 2026: Linux-PAM 1.7.2 was published on GitHub on January 22, 2026.

### Related projects

- OpenPAM and Solaris PAM are related PAM-family implementations; libpwquality, passwdqc, lastlog2, and wtmpdb appear in Linux-PAM's own release notes as neighboring projects for password quality and login accounting.
- System services such as sudo, OpenSSH, login managers, shadow utilities, and distribution installers commonly integrate with PAM policy rather than embedding all authentication policy themselves.

### Sources

- <https://formulae.brew.sh/formula/linux-pam>
- <https://github.com/linux-pam/linux-pam>
- <https://raw.githubusercontent.com/linux-pam/linux-pam/master/AUTHORS>
- <https://raw.githubusercontent.com/linux-pam/linux-pam/master/NEWS>
- <https://raw.githubusercontent.com/linux-pam/linux-pam/master/doc/specs/rfc86.0.txt>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Linux: /etc/pam.conf, /etc/pam.d/
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** linux-pam
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Requirements:** linux
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Nix - linux-pam: normalized package name match | nixpkgs package indexes: pkgs/by-name/li/linux-pam/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - linux-pam - 1.7.1-r2: normalized package name match | Alpine Linux edge package indexes: linux-pam from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Linux PAM (Pluggable Authentication Modules for Linux) | https://www.kernel.org/pub/linux/libs/pam
- apk - linux-pam-dev - 1.7.1-r2: normalized package name match | Alpine Linux edge package indexes: linux-pam-dev from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Linux PAM (Pluggable Authentication Modules for Linux) (development files) | https://www.kernel.org/pub/linux/libs/pam
- apk - linux-pam-doc - 1.7.1-r2: normalized package name match | Alpine Linux edge package indexes: linux-pam-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Linux PAM (Pluggable Authentication Modules for Linux) (documentation) | https://www.kernel.org/pub/linux/libs/pam
- apk - linux-pam-manual - 1.7.1-r2: normalized package name match | Alpine Linux edge package indexes: linux-pam-manual from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Linux PAM (Pluggable Authentication Modules for Linux) (manual) | https://www.kernel.org/pub/linux/libs/pam
- apk - linux-pam-systemd - 1.7.1-r2: normalized package name match | Alpine Linux edge package indexes: linux-pam-systemd from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Linux PAM (Pluggable Authentication Modules for Linux) (systemd files) | https://www.kernel.org/pub/linux/libs/pam


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Security and crypto packages](https://www.automicvault.com/pkg/security-crypto-tools/) - Matched security, identity, cryptography, password, signing, or certificate metadata.
- [meson](https://www.automicvault.com/pkg/brew/meson/) - Build dependency declared by Homebrew.
- [ninja](https://www.automicvault.com/pkg/brew/ninja/) - Build dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [google-authenticator-libpam](https://www.automicvault.com/pkg/brew/google-authenticator-libpam/) - Shares av.db curated category or tags: authentication, cli, pam, security.
- [oath-toolkit](https://www.automicvault.com/pkg/brew/oath-toolkit/) - Shares av.db curated category or tags: authentication, cli, pam, security.
- [cyrus-sasl](https://www.automicvault.com/pkg/brew/cyrus-sasl/) - Shares av.db curated category or tags: authentication, cli, security.
- [duo_unix](https://www.automicvault.com/pkg/brew/duo-unix/) - Shares av.db curated category or tags: authentication, cli, pam, security.
- [krb5](https://www.automicvault.com/pkg/brew/krb5/) - Shares av.db curated category or tags: authentication, cli, security.
- [oauth2_proxy](https://www.automicvault.com/pkg/brew/oauth2-proxy/) - Shares av.db curated category or tags: authentication, cli, security.
- [pam-u2f](https://www.automicvault.com/pkg/brew/pam-u2f/) - Shares av.db curated category or tags: authentication, cli, pam, security.
- [pocket-id](https://www.automicvault.com/pkg/brew/pocket-id/) - Shares av.db curated category or tags: authentication, cli, security.
- [stoken](https://www.automicvault.com/pkg/brew/stoken/) - Security-sensitive metadata or terminology overlaps. Shared terms: authentication, cli, security.
- [heimdal](https://www.automicvault.com/pkg/brew/heimdal/) - Security-sensitive metadata or terminology overlaps. Shared terms: authentication, cli, security.

## Combined YAML source

View the package source record on GitHub. [combined/linux-pam.yml](https://github.com/automic-vault/db/blob/main/combined/linux-pam.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
