please(1)

πŸ“¦
version 0.5.3 Β· 2 versions
, in debian bookworm

✨ please β€” bestie's guide to access elevation ✨

okay so you know how sometimes you need to do a Thing but the system is like "no <3" and you're like "but I NEED to"? yeah. that's what this is. it's please, manual page please(1), and it's the iconic little sudo alternative. pull up a chair, bestie, we're going through this whole thing together, no skips πŸ’…


πŸŽ€ NAME πŸŽ€

please β€” a tool for access elevation.

like... literally that's it. that's the whole vibe. ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

here's every single way you can call her. every one. don't skip, iykyk:

please /bin/bash

pleaseedit /etc/fstab

pleaseedit [-r/--reason "new fs"] /etc/fstab

pleaseedit [-g/--group groupname] filename

pleaseedit [-t/--target username] filename

please [-a/--allowenv list]

please [-c/--check] /etc/please.ini

please [-d/--dir directory] command

please [-e/--env environment] command

please [-g/--group groupname] command

please [-h/--help]

please [-t/--target username] backup tar -cvf - /home/data | ...

please [-u/--user username] backup tar -cvf - /home/data | ...

please [-l/--list]

please [-l/--list] [-t/--target username]

please [-l/--list] [-u/--user username]

please [-n/--noprompt] command

please [-r/--reason "sshd reconfigured, ticket 24365"] /etc/init.d/ssh
restart

please [-p/--purge]

please [-w/--warm]

πŸ’– DESCRIPTION πŸ’–

okay so. please and pleaseedit are sudo alternatives that come with regex support and a whole simple approach to ACL. no cap. that's the whole pitch and it's honestly giving main character energy.

the aim? to allow admins to delegate accurate principle of least privilege access with ease. like, admins get to hand out exactly the amount of power someone needs and not one crumb more. and please.ini? she allows for very specific and flexible regex defined permissions. chef's kiss. 😌

now pleaseedit is the one who adds a layer of safety to editing files. here's the whole lil routine, and yes i'm telling you every step:

  • the file is copied to /tmp, where it can be updated.
  • when EDITOR exits cleanly, the file is copied alongside the target.
  • then the file gets renamed over the original.
  • but β€” if an exitcmd is configured, it must exit cleanly first. periodt. no clean exit, no rename, that's the rule. πŸ”₯

🌸 OPTIONS 🌸

every single flag. all of them. we're not leaving a single one behind, bestie:

  • -a/--allowenv list β€” allow environments separated by , to be passed through
  • -c/--check file β€” will check the syntax of a please.ini config file. Exits non-zero on error
  • -d/--dir β€” will change directory to dir prior to executing the command
  • -g/--group groupname β€” run or edit as groupname
  • -h/--help β€” print help and exit
  • -l/--list β€” to list rules
  • -n/--noprompt β€” will not prompt for authentication and exits with a status of 1
  • -p/--purge β€” will purge your current authentication token for the running user
  • -r/--reason [reason] β€” will add reason to the system log
  • -t/--target [username] β€” to execute command, or edit as target username
  • -u/--user [username] β€” to execute command, or edit as target username
  • -v/--version β€” print version and exit
  • -w/--warm β€” will warm an authentication token and exit
not me noticing there's no -e/--env in the options list even though it shows up in the SYNOPSIS… πŸ‘€ anyway, i just report what's there, bestie. i don't make the rules.

🌈 EXAMPLE USAGE 🌈

real scenarios, real commands, real slay:

please -t httpd /bin/bash

run a shell as the httpd user

please -l

to list what you may run

please -t "username" -l

to show what username may run. username must match the target regex in a type=list rule

please -r 'reloading apache2, change #123' systemctl reload apache2

to reload apache2 with a reason

pleaseedit -r 'adding new storage, ticket #24365' /etc/fstab

to use pleaseedit to modify fstab

Please see please.ini for configuration examples. 🫢


🧚 FILES 🧚

  • /etc/please.ini

πŸ’œ CONTRIBUTIONS πŸ’œ

"I welcome pull requests with open arms. New features always considered."

literally the sweetest thing anyone has ever written in a manpage. open arms!! πŸ₯Ή


πŸ’€ BUGS πŸ’€

Found a bug? Please either open a ticket or send a pull request/patch.

that's it. that's the whole bug policy. go forth and file. πŸ›


⭐ SEE ALSO ⭐


πŸ‘‘ AUTHORS πŸ‘‘

Ed Neville (ed-please@s5h.net).


and that's the whole page, bestie!! you ate this. πŸ’…βœ¨

this was please version 0.5.3, dated 10 June 2022 β€” go forth and elevate responsibly, ily, bye πŸŽ€πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from