Подробный гайд: Проверка текущей оболочки в Astra Linux

Проверка оболочки в Astra Linux. Понимание разницы между оболочкой входа и текущей оболочкой. Применимо для версий CE и SE

2026.05.30                  


Подробный гайд: Проверка текущей оболочки в Astra LinuxПодробный гайд: Проверка текущей оболочки в Astra Linux В Astra Linux, как и в других дистрибутивах Linux, важно различать оболочку входа по умолчанию (login shell) и фактически запущенную оболочку в текущем сеансе. Ниже приведены все основные способы проверки, их технические нюансы и рекомендации по использованию в среде Astra Linux (Common Edition и Special Edition).


1. Через переменную окружения $SHELL

echo $SHELL

Что показывает:

Путь к оболочке, назначенной пользователю как оболочка входа по умолчанию. Значение задаётся при создании учётной записи и хранится в переменных окружения.


Важный нюанс:

Переменная $SHELL не обновляется автоматически, если вы вручную запустили другую оболочку. Например, находясь в bash, вы запустили zshecho $SHELL всё равно вернёт /bin/bash.


Пример вывода:

/bin/bash

2. Через системную базу /etc/passwd

grep "^$(whoami):" /etc/passwd

Или (рекомендуется для корпоративных сред с LDAP/AD):

getent passwd $(whoami)

Что показывает:

Последнее поле в строке пользователя — это login shell, прописанная в системной базе учётных записей.


Пример вывода:

user:x:1000:1000:User:/home/user:/bin/bash


Почему getent предпочтительнее:

В Astra Linux SE часто используется интеграция с доменными службами (FreeIPA/AD). getent запрашивает данные через NSS (Name Service Switch), поэтому покажет актуальную оболочку даже если она хранится не в локальном /etc/passwd.


3. Через текущий процесс оболочки

Если нужно узнать, какая оболочка фактически работает в открытом терминале:

ps -p $$

Или:

echo $0

Что показывает:

  • ps -p $$ выводит информацию о процессе с PID текущего интерпретатора ($$ = PID текущей оболочки).
  • echo $0 выводит имя исполняемого файла. Префикс - (например, -bash) означает, что оболочка запущена как login shell.

Пример вывода ps -p $$:

  PID TTY          TIME CMD
 2841 pts/0    00:00:00 zsh

Сравнительная таблица методов

Команда Что показывает Когда использовать
echo $SHELL Оболочка по умолчанию (из окружения) Быстрая проверка, написание скриптов
getent passwd $(whoami) Системная login shell (локальная/сетевая) Администрирование, аудит, проверка реальных настроек
ps -p $$ / echo $0 Текущий запущенный процесс Отладка, проверка вложенных сеансов, su/sudo сессий

Особенности Astra Linux

Версия Особенности работы с оболочками
Common Edition (CE) По умолчанию: /bin/bash. Полная свобода смены через chsh или usermod.
Special Edition (SE) В рамках мандатного контроля доступа (Parsec) могут применяться:
• Ограниченные оболочки (/bin/rbash)
• Кастомные entry-скрипты
• Запрет на запуск нестандартных интерпретаторов через политики безопасности

Проверка разрешённых оболочек:

cat /etc/shells

Только пути, указанные в этом файле, считаются валидными для входа. PAM и утилита chsh блокируют установку оболочек, отсутствующих в списке.


Как изменить оболочку пользователя

# От имени пользователя (если разрешено политиками)
chsh -s /bin/zsh

# От root (для любого пользователя)
sudo usermod -s /bin/bash username

Внимание:

В Astra Linux SE изменение оболочки может требовать дополнительных прав или быть ограничено мандатными политиками. Всегда проверяйте /etc/shells и логи аудита (/var/log/audit/audit.log или seadmin log).


Дополнительно

  • echo $SHELL → быстро, но показывает только настроенную оболочку.
  • getent passwd $(whoami) → надёжно для аудита и enterprise-сред.
  • ps -p $$ или echo $0 → точно показывает текущий рабочий интерпретатор.
  • В Astra Linux SE учитывайте политики безопасности и мандатный контроль: доступные оболочки могут быть ограничены системными профилями.

Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.


Комментарии

Загрузка...
Если комментарии не загружаются, можете попробовать отключить блокировщик рекламы для этого сайта