sudo (superuser do) — CLI-обёртка, позволяющая выполнять команду от имени root (или другого пользователя) без входа в root-shell. Ключевая практика безопасности: никогда не логиниться как root — работайте под обычным пользователем, эскалируйте прав только для нужной команды.
Конфиг — `/etc/sudoers` (правится через `visudo` — валидирует синтаксис перед сохранением, иначе можно заблокировать себе sudo навсегда). Формат: `WHO WHERE=(RUN_AS) COMMANDS`. Примеры: `alice ALL=(ALL) ALL` — alice может всё. `deploy ALL=(www-data) NOPASSWD: /usr/bin/systemctl restart nginx` — deploy может рестартить nginx без пароля.
Best practices: (1) добавлять в группу `sudo`/`wheel` — членство даёт sudo без правки /etc/sudoers. (2) NOPASSWD только на конкретные бинари, никогда на `ALL`. (3) логирование — все sudo-команды в `/var/log/auth.log` / journald. (4) `sudo -i` — интерактивный root-shell (для длительных операций), `sudo -u www-data cmd` — от имени сервисного user. (5) `sudo -k` — сбросить кэш пароля (по умолчанию sudo помнит 15 мин).
Опасно: (1) `sudo su -` вместо `sudo -i` (обходит логирование команд). (2) `sudo bash script.sh` от скрипта, писанного не-root user'ом → атакующий подкладывает злой скрипт. (3) `%wheel ALL=(ALL) NOPASSWD:ALL` — вся группа админов без пароля → одна украденная ssh-key = root на сервере.