Кратко
suex
иsush
являются упрощёнными альтернативамиsu
иsudo
.Эти инструменты облегчают выполнение команд с различными привилегиями без сложных настроек.
Установка требует создания группы
suex
с минимальной конфигурацией.Более подробная информация доступна в репозитории suex на GitHub: https://github.com/mobydeck/suex
В мире Linux инструменты, такие как su
и sudo
, давно являются хранителями повышенных привилегий. Они существуют уже почти полвека, помогая нам с лёгкостью переключаться между ролями пользователей. Но, как говорится, когда от старой привычки трудно избавиться, то её просто нужно заменить на другую.
Встречайте suex и sush
Эти современные решения, написанные на чистом C, появились как упрощенные альтернативы для тех, кто считает традиционные su
и sudo
чрезмерно сложными. Зачем мучиться с файлами /etc/sudoers
, когда простота и безопасность могут сосуществовать в гармонии?
Наследие su и sudo
В течение 25 лет я полагался на su
и sudo
как на незаменимых спутников в моих приключениях в мире Linux — от SSH-сессий до работы с Dockerfile и CI/CD. Но роль, которую они играют сегодня, кажется несколько... преувеличенной. Сейчас Linux часто играет роль обертки — средства для достижения цели в наших контейнеризованных инфраструктурах.
sudo
превосходен в многопользовательских системах, предлагая детализированные настройки — идеально для сценариев, которые почти никто больше не использует. Вместо этого мы постоянно решаем только две задачи: выполнение команд от имени другого пользователя и переключение на shell другого пользователя.
Зачем нужны suex и sush?
suex
и sush
были созданы из необходимости в простоте, преобразуя управление привилегиями в задачу, столь же изящную и плавную, как великолепно исполняемый балет — точную, плавную и лёгкую.
suex — упрощённый sudo
Прощайте, сложные файлы /etc/sudoers
. С suex
, право вашего пользователя выполнять команды от имени другого легко достигается через членство в группе suex
.
Речь идет о прямом выполнении команд, без дочерних процессов, обеспечивая правильную работу TTY и системных сигналов. Пользователи root могут понижать привилегии, а те, кто в группе suex
, могут их повышать — простота в лучшем виде.
Например, пользователь root может упростить выполнение команды от имени непривилегированного пользователя:
suex nobody /bin/program
или непривилегированный пользователь может выполнить команду от имени root:
suex /bin/program
sush — замена sudo su
Замените вашу часто используемую команду sudo su -
простым sush
. Будь то переключение на root или shell другого пользователя, sush
легко справится с переходом, при условии, что вы состоите в группе suex
.
Настройка окружения происходит автоматически, и да, sush меняет домашнюю директорию на директорию целевого пользователя.
Например, переключиться на bash пользователя webadmin
так же просто, как:
sush -s /bin/bash webadmin
или переключиться на стандартный shell пользователя webadmin
:
sush webadmin
Непривилегированный пользователь легко может зайти в shell root
, введя:
sush
Гармоничная интеграция
Вместе suex
и sush
образуют эффективный дуэт, современное решение для управления привилегиями в Linux:
suex
: Выполнение команд с новыми привилегиями напрямую.sush
: Переключение в интерактивный shell.
Пора ли вам принять революцию suex
/sush
? Я полагаю, что да. А решать вам.
Установка и более подробная информация доступны в репозитории suex на GitHub: https://github.com/mobydeck/suex