Permissions Plugins
Group and per-player permission management.
Groups first, players second
LuckPerms runs on Bukkit, Spigot, Paper and Velocity, and on most servers it is the only permissions plugin worth installing. Every player sits in a group called default, and LuckPerms does not let you rename that group. Its own wiki explains why and suggests leaving it alone: give it a display name with /lp group default setdisplayname Member, or create your own group and let default inherit from it with /lp creategroup member followed by /lp group default parent add member.
Staff ranks work best as a chain. /lp group admin parent add mod gives admins everything mods have, so each step only adds what is new. Put a player in a rank with /lp user Steve parent add vip, or use parent set when the new group should replace the old ones.
Temporary ranks and prefixes
Parents and permissions both have a temporary form. /lp user Steve parent addtemp vip 30d gives a month of VIP, and the rank drops off by itself when the time is up.
LuckPerms stores prefixes but never puts them in chat. A chat plugin does that part, for example EssentialsX Chat with Vault installed. Set the prefix on the group with /lp group admin meta addprefix 100 "&c[Admin] "; when a player inherits several prefixes, the one with the highest number wins.
When a permission does not work
Run /lp verbose on, let the player try whatever fails, and LuckPerms prints every permission check the server makes, with the result. You see the exact node a plugin asks for, which beats guessing from a list.
/lp editor sends you a link to a web editor for the same data, which is quicker for big changes. Data lives in an H2 database file by default. If several servers sit behind one proxy, move storage to MySQL, MariaDB or PostgreSQL so they all read the same ranks. The LuckPerms tutorial has the full setup, and the Vault integration tutorial covers the link with other plugins.