BSD Ports

security/py-privleap 7.1.1 FreeBSD

Limited Privilege Escalation Framework

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
Last update
Commit
930789a27e
License
AGPLv3
Categories
security, python
Package size
141.9 KiB, 725.2 KiB installed

Description

privleap is a privilege escalation framework similar in purpose to sudo and doas, but very different conceptually. It is designed to allow user-level applications to run very specific operations as root without allowing full root control of the machine. Unlike directly executable privilege escalation frameworks like sudo, privleap runs as a background service that listens for signals from other applications. Each signal can request a particular, pre-configured action to be taken. Signals are authenticated, and each action is taken only if the signal passes authentication. Any console output from the action is then returned to the caller. This system allows privleap to function without being SUID-root, and avoids a lot of the potential pitfalls of sudo, doas, run0, etc.

Install

Binary package:

pkg install py313-privleap

From the ports tree:

cd /usr/ports/security/py-privleap/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	py313-privleap>0:security/py-privleap

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest7.1.17.1.1--7.1.1
FreeBSD:14:quarterly6.5.16.5.1n/a-6.5.1
FreeBSD:15:latest7.1.17.1.1n/a--
FreeBSD:15:quarterly6.5.16.5.1n/an/an/a
FreeBSD:16:latest6.5.17.1.1n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

As this port's Makefile names them.

Runtime 1

The full lists below include those, and their dependencies in turn.

Build dependencies 7
Run dependencies 11

No port depends on this one.

Configuration

No options to configure.

USES
python:3.13+ shebangfix
Service scripts
privleapd

Message after installing

pam_exec(8) could be used to call leapctl(8) to create the
communication socket required by leaprun(8) by simply adding
the following to a PAM policy file:

  session    optional    pam_exec.so    /usr/local/libexec/privleap/pam_create_socket.sh

Files

Manual pages 4
  • leapctl(8)
  • leaprun(8)
  • privleap.conf.d(5)
  • privleapd(1)
pkg-plist 27
  • bin/leapctl
  • bin/leaprun
  • bin/privleapd
  • etc/pam.d/privleapd
  • etc/py313-privleap/conf.d/README.txt
  • %%PYTHON_SITELIBDIR%%/privleap/__init__.py
  • %%PYTHON_SITELIBDIR%%/privleap/__pycache__/__init__.opt-2.pyc
  • %%PYTHON_SITELIBDIR%%/privleap/__pycache__/leapctl.opt-2.pyc
  • %%PYTHON_SITELIBDIR%%/privleap/__pycache__/leaprun.opt-2.pyc
  • %%PYTHON_SITELIBDIR%%/privleap/__pycache__/privleap.opt-2.pyc
  • %%PYTHON_SITELIBDIR%%/privleap/__pycache__/privleapd.opt-2.pyc
  • %%PYTHON_SITELIBDIR%%/privleap/leapctl.py
  • %%PYTHON_SITELIBDIR%%/privleap/leaprun.py
  • %%PYTHON_SITELIBDIR%%/privleap/privleap.py
  • %%PYTHON_SITELIBDIR%%/privleap/privleapd.py
  • %%PYTHON_SITELIBDIR%%/privleap/tests/__init__.py
  • %%PYTHON_SITELIBDIR%%/privleap/tests/__pycache__/__init__.opt-2.pyc
  • %%PYTHON_SITELIBDIR%%/privleap/tests/__pycache__/run_test.opt-2.pyc
  • %%PYTHON_SITELIBDIR%%/privleap/tests/__pycache__/run_test_util.opt-2.pyc
  • %%PYTHON_SITELIBDIR%%/privleap/tests/run_test.py
  • %%PYTHON_SITELIBDIR%%/privleap/tests/run_test_util.py
  • libexec/privleap/shim.py
  • libexec/privleap/pam_create_socket.sh
  • share/man/man1/privleapd.1.gz
  • share/man/man5/privleap.conf.d.5.gz
  • share/man/man8/leapctl.8.gz
  • share/man/man8/leaprun.8.gz
distinfo 1
FileSizeSHA256
Kicksecure-privleap-7.1-1_GH0.tar.gz151361895f20b6118f85f0532d52c8d9e2c098c30364214bb71b785e3af254d40afaa0

Commit history 5

DateCommitCreditsLog message
930789a27e Jesús Daniel Colmenares Oviedo security/py-privleap: Update to 7.1-1
ChangeLog: https://github.com/Kicksecure/privleap/compare/6.5-1...7.1-1
2f773139a5 Jesús Daniel Colmenares Oviedo security/py-privleap: Update to 6.5-1
MFH: 2026Q3
2ea3f29aaf Jesús Daniel Colmenares Oviedo security/py-privleap: Update to 6.2-1
eb65e7e2e4 Jesús Daniel Colmenares Oviedo security/py-privleap: Update to 6.1-1
50f652f33f Jesús Daniel Colmenares Oviedo security/py-privleap: Update to 5.9-1
ChangeLog: https://github.com/Kicksecure/privleap/releases/tag/5.9-1