Как проверить, включен ли метод аутентификации в Linux

LinuxLinuxBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии (лабораторной работе) вы узнаете, как проверить, какие методы аутентификации включены в системе Linux. Мы рассмотрим ключевые конфигурационные файлы, которые определяют, как пользователи аутентифицируются и авторизуются.

Вы начнете с изучения конфигурационных файлов PAM (Pluggable Authentication Modules), расположенных в каталоге /etc/pam.d/, чтобы понять базовую структуру аутентификации. Затем вы проверите конфигурационный файл SSSD (System Security Services Daemon) по пути /etc/sssd/sssd.conf, чтобы узнать, настроен ли он для удаленных источников удостоверений. Наконец, вы проверите конфигурацию NSS (Name Service Switch) в файле /etc/nsswitch.conf, чтобы определить порядок, в котором система ищет информацию о пользователях и группах. По завершении этого практического занятия вы получите базовое понимание, где искать активные методы аутентификации в системе Linux.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") subgraph Lab Skills linux/ls -.-> lab-558781{{"Как проверить, включен ли метод аутентификации в Linux"}} linux/cat -.-> lab-558781{{"Как проверить, включен ли метод аутентификации в Linux"}} end

Проверка конфигурации PAM с помощью команды ls /etc/pam.d

На этом этапе мы начнем изучать, как Linux обрабатывает аутентификацию и авторизацию пользователей. Одним из ключевых компонентов является PAM (Pluggable Authentication Modules — Плагинируемые модули аутентификации). PAM предоставляет гибкий способ управления процессом входа пользователей в систему, смены паролей и доступа к системным ресурсам.

Представьте себе PAM как набор правил, которые приложения (например, экран входа в систему или команда sudo) проверяют перед тем, как разрешить пользователю выполнить действие. Эти правила определены в конфигурационных файлах, которые в основном находятся в каталоге /etc/pam.d/.

Давайте посмотрим на конфигурационные файлы PAM в этой системе. Мы будем использовать команду ls, которая выводит список содержимого каталога.

Если терминал еще не открыт, откройте его. Помните, что вы можете найти значок Xfce Terminal слева на рабочем столе.

Введите следующую команду и нажмите Enter:

ls /etc/pam.d/

Вы увидите список файлов. Каждый файл обычно соответствует службе или приложению, которое использует PAM для аутентификации. Например, вы можете увидеть файлы, такие как common-auth, login, sudo, sshd и т.д.

atd
chfn
chsh
common-account
common-auth
common-password
common-session
common-session-noninteractive
cron
... (вывод может отличаться)

В этих файлах содержатся конкретные правила PAM для каждой службы. Пока мы не будем углубляться в детали содержимого файлов, но важно знать, где находятся эти конфигурации.

Понимание PAM является важным аспектом управления доступом пользователей и обеспечением безопасности в Linux. Выведя список содержимого каталога /etc/pam.d/, вы сделали первый шаг в изучении того, как настроена аутентификация в этой системе.

Нажмите Продолжить, чтобы перейти к следующему шагу.

Проверка конфигурации SSSD с помощью команды cat /etc/sssd/sssd.conf

На этом этапе мы рассмотрим другой важный компонент, связанный с управлением пользователями и аутентификацией: SSSD (System Security Services Daemon — Демон системных служб безопасности). Это служба, которая обеспечивает доступ к удаленным источникам аутентификации и удостоверений, таким как LDAP, Active Directory или FreeIPA.

SSSD может кэшировать учетные данные и информацию, что улучшает производительность и позволяет пользователям аутентифицироваться даже при временной недоступности сетевого соединения с удаленным источником.

Основной конфигурационный файл для SSSD обычно расположен по пути /etc/sssd/sssd.conf. Мы будем использовать команду cat для отображения содержимого этого файла. Команда cat представляет собой простую утилиту, используемую для вывода содержимого файлов.

Введите следующую команду в терминале и нажмите Enter:

cat /etc/sssd/sssd.conf

Вы увидите детали конфигурации SSSD. Содержимое этого файла будет зависеть от того, настроен ли SSSD для подключения к каким-либо внешним источникам удостоверений. В базовой системе файл может быть минимальным или содержать настройки по умолчанию.

[sssd]
domains =
config_file_version = 2
services = nss, pam

[nss]
filter_groups = root
filter_users = root
reconnection_retries = 3

[pam]
reconnection_retries = 3

Этот вывод показывает базовую структуру файла sssd.conf. Раздел [sssd] содержит глобальные настройки, а строка services указывает, что SSSD предоставляет службы для nss (Name Service Switch — Переключатель служб имен) и pam. Разделы [nss] и [pam] содержат настройки, специфичные для этих служб.

Даже если SSSD не полностью настроен для удаленного источника, его наличие и базовая конфигурация в файле sssd.conf указывают на то, что система настроена на возможное использование его для аутентификации и поиска удостоверений.

Проверка этого файла помогает понять, настроена ли ваша система на использование SSSD и с какими службами он интегрирован.

Нажмите Продолжить, чтобы перейти к следующему шагу.

Проверка конфигурации NSS с помощью команды cat /etc/nsswitch.conf

На этом последнем этапе этого вводного практического занятия мы рассмотрим конфигурацию Name Service Switch (NSS — Переключатель служб имен). NSS является важной частью того, как системы Linux определяют, где искать информацию о пользователях, группах, именах хостов и других данных, связанных с сетью.

Когда программа нуждается в поиске информации о пользователе (например, его идентификатора пользователя или домашнего каталога), она обращается к конфигурации NSS, чтобы узнать, какие источники нужно проверить и в каком порядке. Эти источники могут включать локальные файлы (например, /etc/passwd и /etc/group), DNS, LDAP или службы, такие как SSSD (которую мы только что рассмотрели).

Конфигурационный файл для NSS — /etc/nsswitch.conf. Мы снова используем команду cat для просмотра его содержимого.

Введите следующую команду в терминале и нажмите Enter:

cat /etc/nsswitch.conf

Вы увидите строки, в которых указано, какие источники использовать для различных типов информации. Каждая строка начинается с типа информации (например, passwd, group, hosts), за которым следует двоеточие и список источников для проверки.

## /etc/nsswitch.conf
#
## Example configuration of GNU Name Service Switch functionality.
## If you have the `glibc-doc-reference' and `info' packages installed, try:
## `info libc "Name Service Switch"' for information.

passwd:         compat systemd
group:          compat systemd
shadow:         compat

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

В этом примере вывода:

  • passwd: compat systemd означает, что при поиске информации о пользователях система должна сначала проверить источники, настроенные с помощью compat (часто это традиционные файлы, такие как /etc/passwd), а затем systemd.
  • hosts: files dns означает, что при разрешении имен хостов система должна сначала проверить локальный файл /etc/hosts (files), а затем использовать DNS.

Порядок источников в каждой строке важен, так как система проверяет их последовательно, пока не найдет запрошенную информацию.

Понимание файла nsswitch.conf помогает вам решать проблемы, связанные с входом пользователей, разрешением имен хостов и другими вопросами, связанными с удостоверениями, показывая порядок, в котором ваша система ищет эту информацию.

Теперь вы кратко ознакомились с тремя ключевыми аспектами, связанными с управлением пользователями и аутентификацией в Linux: PAM, SSSD и NSS. Это фундаментальный шаг в понимании того, как ваша система обрабатывает удостоверения и доступ.

Нажмите Продолжить, чтобы завершить это практическое занятие.

Резюме

В этом практическом занятии мы начали изучать, как Linux управляет аутентификацией пользователей, рассмотрев ключевые конфигурационные файлы. Сначала мы использовали команду ls /etc/pam.d/ для вывода списка конфигурационных файлов Pluggable Authentication Modules (PAM — Плагиночные модули аутентификации), которые определяют правила аутентификации для различных служб и приложений. Это показало нам, где на системе хранятся основные политики аутентификации.

Затем мы приступили к изучению System Security Services Daemon (SSSD — Демон системных служб безопасности), попробовав просмотреть его конфигурационный файл по пути /etc/sssd/sssd.conf с помощью команды cat. SSSD является важной службой для интеграции с удаленными источниками удостоверений и аутентификации, и анализ его конфигурации помогает определить, настроена ли система для аутентификации в внешних каталогах и как именно.