From 03012f54b1bcd31e0b817fc0222a9a47709c4018 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Sun, 4 Feb 2018 23:22:53 +0000 Subject: Initial commit --- doc/building.html | 103 ++++++++++++++++++++++++++++++++++++++++ doc/index.html | 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ doc/pamelad.html | 68 +++++++++++++++++++++++++++ doc/upgrade.html | 28 +++++++++++ 4 files changed, 337 insertions(+) create mode 100644 doc/building.html create mode 100644 doc/index.html create mode 100644 doc/pamelad.html create mode 100644 doc/upgrade.html (limited to 'doc') diff --git a/doc/building.html b/doc/building.html new file mode 100644 index 0000000..649dc43 --- /dev/null +++ b/doc/building.html @@ -0,0 +1,103 @@ + + + + + + pamela: building an application + + + + + + +

+pamela
+Software
+skarnet.org +

+ +

Building an application with pamela instead of Linux-PAM

+ +

Prerequisites

+ + + +

Compiling

+ + + +

Linking

+ + + +

Programming

+ + + +

Running

+ + + + + diff --git a/doc/index.html b/doc/index.html new file mode 100644 index 0000000..3c2f58c --- /dev/null +++ b/doc/index.html @@ -0,0 +1,138 @@ + + + + + + + pamela - a secure PAM implementation + + + + + + +

+Software
+skarnet.org +

+ +

pamela

+ +

don't crack this root of mine

+ +

What is it ?

+ +

+ pamela stands for PAM Encapsulated Loading Architecture. +

+ +

+ It is a library implementing Linux-PAM's +security/pam_appl.h +header, for applications to use instead of the default Linux-PAM +security/pam_appl.h header. pamela wraps all PAM calls and +deports them to a pamelad binary running +as a child of the application, which performs the real calls to +Linux-PAM. +

+ +

+ The advantage of this setup is that it reduces the application's +attack surface considerably. Instead of loading modules into the +application's address space, PAM loads modules into the small, +dedicated pamelad binary, whose main source code is less than 400 +lines long. Also, if the application runs as root, the pamelad +binary can run as an unprivileged user, so modules cannot be used +for privilege elevation. +

+ +
+ +

Installation

+ +

Requirements

+ + + +

Licensing

+ +

+ pamela is free software. It is available under the +ISC license. +

+ +

Download

+ + + +

Compilation

+ + + +

Upgrade notes

+ + + +
+ +

Reference

+ +

Commands

+ + + +

Libraries

+ + + +
+ + +

Related resources

+
+ +

pamela discussion

+ + + + + diff --git a/doc/pamelad.html b/doc/pamelad.html new file mode 100644 index 0000000..5d93c27 --- /dev/null +++ b/doc/pamelad.html @@ -0,0 +1,68 @@ + + + + + + pamela: the pamelad internal program + + + + + + +

+pamela
+Software
+skarnet.org +

+ +

The pamelad program

+ +

+pamelad is a helper program spawned by the pamela library, at pam_start() time. +It communicates with the main application process, reading requests from it, +performing PAM calls, and returning results to the application process. +

+ +

Interface

+ +

+ pamelad is not meant to be called directly. It is an unexported +program, i.e. a program that the package's library is supposed to find, but +that users should not run. Ideally it's kept outside of users' PATH variable. +

+ +

+ pamelad is declared as a libexec binary, so it will probably be +installed in /usr/libexec/pamelad or /usr/lib/pamela/pamelad, +depending on the admin/distribution's preferences. +

+ +

+ pamelad is run with two arguments, which are the service_name and +user arguments given to the pam_start() call. This will +display in a ps output, which is fine since this information is +not confidential. +

+ +

+ pamelad runs as the same uid and gid as the application. However, to +increase security of applications running as root: +

+ + + +

+ pamelad makes the real calls to Linux-PAM. Keep that in mind when +configuring your PAM authorizations: if you're using the PAMELA_UID and +PAMELA_GID variables, make sure the uid/gid are not used anywhere else, +and give the proper PAM authorizations to that uid/gid pair instead of root. +

+ + + diff --git a/doc/upgrade.html b/doc/upgrade.html new file mode 100644 index 0000000..2d4ba44 --- /dev/null +++ b/doc/upgrade.html @@ -0,0 +1,28 @@ + + + + + + How to upgrade pamela + + + + + + +

+pamela
+Software
+skarnet.org +

+ +

What has changed in pamela

+ +

in 0.0.1.0

+ +

+ Initial release. +

+ + + -- cgit v1.2.3