|
1 | | -Documentation for flux-pam |
2 | | -========================== |
| 1 | +flux-pam Documentation |
| 2 | +====================== |
3 | 3 |
|
4 | | -.. toctree:: |
5 | | - :maxdepth: 2 |
6 | | - :caption: Contents: |
| 4 | +flux-pam is a PAM module for the `Flux <https://flux-framework.org>`_ |
| 5 | +resource management framework. It restricts node access to users with active |
| 6 | +Flux jobs on the node and, when systemd integration is enabled, manages user |
| 7 | +slice resource constraints. |
| 8 | + |
| 9 | +Overview |
| 10 | +-------- |
| 11 | + |
| 12 | +flux-pam provides two cooperating components: |
| 13 | + |
| 14 | +**pam_flux.so** — A PAM module with account and session management functions. |
| 15 | +The account module grants or denies login access based on whether the user |
| 16 | +has an active Flux job on the node. The session module places admitted logins |
| 17 | +into a transient systemd scope under the user's managed slice, ensuring SSH |
| 18 | +sessions share the same resource constraints as the job. |
| 19 | + |
| 20 | +**Prolog and housekeeping scripts** — Run on each compute node at job start |
| 21 | +and completion to manage the ``user@UID.service`` lifecycle and apply CPU, |
| 22 | +memory, and device limits to the user's systemd slice. |
| 23 | + |
| 24 | +Key Features |
| 25 | +------------ |
| 26 | + |
| 27 | +- **Access control**: Restrict SSH access to users with active jobs |
| 28 | +- **Guest access**: Allow users into multi-user Flux instances |
| 29 | +- **Resource containment**: Constrain login sessions to allocated resources |
| 30 | +- **systemd integration**: Manage user slices and service lifecycle |
| 31 | +- **cgroup v2 support**: Apply CPU, memory, and device constraints |
| 32 | + |
| 33 | +Quick Start |
| 34 | +----------- |
| 35 | + |
| 36 | +For basic access control, add to ``/etc/pam.d/sshd``: |
| 37 | + |
| 38 | +.. code-block:: text |
| 39 | +
|
| 40 | + account sufficient pam_flux.so |
7 | 41 |
|
| 42 | +For full session management with resource constraints, see :ref:`pam_flux(8) <man-pages>`. |
8 | 43 |
|
9 | 44 | .. _man-pages: |
10 | 45 |
|
11 | | -flux-pam Manual Pages |
12 | | -============================ |
| 46 | +Manual Pages |
| 47 | +============ |
13 | 48 |
|
14 | 49 | .. toctree:: |
15 | 50 | :maxdepth: 2 |
|
0 commit comments