logo

skeud

Simple and portable utilities to deal with user accounts (su, login)git clone https://anongit.hacktivis.me/git/skeud.git/

README.md (1512B)


  1. # skeud: Simple and portable utilities to deal with user accounts (su, login)
  2. skeud /skød/ (Brezhoneg): shadow / reflection / ghost
  3. Status: Experimental, enough done to work but needs thorough review.
  4. ## Features
  5. - Based on `getpwnam(3)` (and `getspnam(3)` on Linux), making it compatible with systems like [tcb shadow](https://www.openwall.com/tcb/)
  6. ## Dependencies
  7. - POSIX.1-2024 environment (`/dev/tty`, make, ...)
  8. - C17 Compiler
  9. - Proper support for static executables (glibc is out)
  10. - `initgroups()` C interface in `<grp.h>` or `<unistd.h>`
  11. - (lint-only) [mandoc](https://mdocml.bsd.lv/)
  12. ## Installation
  13. - The usual ``make && make install`` is supported, along with `DESTDIR`
  14. Also depending on your security policy, you might want `suc(1)`,
  15. which was made opt-in due to it ignoring the target's shell entry
  16. when arguments are given.
  17. To still compile & install it: ``make suc && make suc-install``
  18. ## Unsupported
  19. - Broken authentication systems like PAM and [nsswitch](https://skarnet.org/software/nsss/nsswitch.html)
  20. - Remote host arguments (believed to be legacy)
  21. - `/etc/login.defs` configuration file
  22. - Checking for emails, consider using `/etc/profile` or `~/.profile` instead
  23. - Dangerous features:
  24. - empty password field disabling authentication
  25. - `utmp` / `wtmp`: Prone to corrupting itself and can be faked
  26. - OS-specific utilities like `passwd`, `useradd`, `gpasswd`, …
  27. <!--
  28. Copyright © 2022 Haelwenn (lanodan) Monnier <contact+skeud@hacktivis.me>
  29. SPDX-License-Identifier: MPL-2.0
  30. -->