пам

Учебное пособие по безопасности Linux Pam

Учебное пособие по безопасности Linux Pam
PAM означает подключаемые модули аутентификации, которые обеспечивают поддержку динамической аутентификации для приложений и служб в операционной системе Linux. Это механизм безопасности, который обеспечивает защиту через PAM вместо запроса имени пользователя и пароля. PAM отвечает за аутентификацию запускаемых файлов. Каждое приложение состоит из нескольких настраиваемых файлов, каждый из которых состоит из нескольких модулей. Затем эти модули запускаются сверху вниз, а затем PAM генерирует ответ, пройден он или нет, на основе результата.

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

Интерфейсы модуля Pam

Auth: Это модуль, который отвечает за аутентификацию; он проверяет пароль.
Счет: После того, как пользователь прошел аутентификацию с правильными учетными данными, раздел учетной записи проверяет действительность учетной записи, например, срок действия или ограничения времени входа в систему и т. Д.
Пароль: Используется только для смены пароля.
Сессия: Он управляет сеансами, содержит учетную запись активности пользователя, создание почтовых ящиков, создает домашний каталог пользователя и т. Д.

Руководство

  1. Чтобы проверить, использует ли ваше приложение LINUX-PAM или нет, используйте следующую команду в вашем терминале:

    $ ldd / bin / su

    Как мы видим в строке 2 выходных данных, существует пометка.файл so, подтверждающий запрос.

  2. Конфигурация LINUX-PAM находится в каталоге / etc / pam.d /. Откройте терминал вашей операционной системы Linux и перейдите в каталог pam, набрав команду: $ cd / etc / pam.d /

    Это каталог, содержащий другие службы, поддерживающие PAM. Можно


    проверьте содержимое, выполнив команду $ ls внутри каталога pam, как показано на скриншоте выше.

    если вы не нашли sshd в качестве службы, поддерживающей PAM, вам необходимо установить сервер sshd.

    SSH (или безопасная оболочка) - это зашифрованный сетевой инструмент, предназначенный для того, чтобы позволить компьютерам / пользователям разного типа безопасно входить в систему на разных компьютерах удаленно по сети. Вам необходимо установить пакет openssh-server, что вы можете сделать, выполнив следующую команду в своем терминале.

    $ sudo apt-get install openssh-server

    Он установит все файлы, а затем вы сможете повторно войти в каталог pam и проверить службы и увидеть, что sshd был добавлен.

  3. Затем введите следующую команду. VIM - это текстовый редактор, который открывает простые текстовые документы для просмотра и редактирования пользователем. $ vim sshd

    Если вы хотите выйти из редактора vim и не можете этого сделать, нажмите клавишу Esc и двоеточие (:) одновременно, чтобы перейти в режим вставки. После двоеточия введите q и нажмите Enter. Здесь q означает бросить.

    Вы можете прокрутить вниз и увидеть все модули, которые были описаны ранее, с такими терминами, как «требуется», «включить», «требуется» и т. Д. Что это?

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

Флаги управления PAM

  1. Обязательный: Должен пройти к успеху. Это необходимость, без которой нельзя обойтись.
  2. Реквизит: Должен пройти, иначе никакие другие модули не запускаются.
  3. Достаточный: В случае неудачи игнорируется. Если этот модуль передан, никакие другие флаги проверяться не будут.
  4. По желанию: Его часто игнорируют. Используется только тогда, когда в интерфейсе только один модуль.
  5. Включать: Он извлекает все строки из других файлов.

Теперь общее правило для написания основной конфигурации выглядит следующим образом: тип службы control-flag module module-arguments

  1. УСЛУГА: Это название приложения. Предположим, ваше приложение называется NUCUTA.
  2. ТИП: Это тип используемого модуля. Предположим, здесь используется модуль аутентификации.
  3. КОНТРОЛЬНЫЙ ФЛАГ: Это тип используемого управляющего флага, один из пяти типов, описанных ранее.
  4. МОДУЛЬ: Абсолютное имя файла или относительный путь к PAM.
  5. МОДУЛЬ-АРГУМЕНТЫ: Это отдельный список токенов для управления поведением модуля.

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

Есть несколько модулей, которые ограничивают доступ и предоставляют привилегии, но мы можем использовать модуль / lib / security / pam_listfile.так который чрезвычайно гибкий и имеет множество функций и привилегий.

  1. Откройте и отредактируйте файл / приложение в редакторе vim для целевой службы, войдя в / etc / pam.d / каталог сначала.

В оба файла необходимо добавить следующее правило:

требуется авторизация pam_listfile.так что \ onerr = удачный элемент = пользовательское чувство = запретить файл = / etc / ssh / deniedusers

Где auth - модуль аутентификации, требуется флаг управления, файл pam_listfile.поэтому модуль дает привилегии deny для файлов, onerr = successed - это аргумент модуля, item = user - еще один аргумент модуля, который определяет списки файлов и содержимое, которое он должен проверять, sense = deny - еще один аргумент модуля, который будет, если элемент найдено в файле и file = / etc / ssh / deniedusers, который указывает тип файла, который содержит только один элемент в строке.

  1. Затем создайте еще один файл / etc / ssh / deniedusers и добавьте root как имя в нем. Это можно сделать, выполнив команду: $ sudo vim / etc / ssh / deniedusers
  1. Затем сохраните изменения после добавления к нему корневого имени и закройте файл.
  2. Используйте команду chmod, чтобы изменить режим доступа к файлу. Синтаксис команды chmod:
 chmod [ссылка] [оператор] [режим] файл

Здесь ссылки используются для указания списка букв, указывающих, кому давать разрешение.

Например, здесь можно написать команду:

$ sudo chmod 600 / etc / ssh / deniedusers

Это работает простым способом. Вы указываете пользователей, которым запрещен доступ к вашему файлу, в файле / etc / ssh / deniedusers и устанавливаете режим доступа для файла с помощью команды chmod. С этого момента при попытке доступа к файлу из-за этого правила PAM будет отказывать всем пользователям, перечисленным в файле / etc / ssh / deniedusers, в любом доступе к файлу.

Заключение

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

Добавьте жесты мыши в Windows 10 с помощью этих бесплатных инструментов
В последние годы компьютеры и операционные системы сильно эволюционировали. Было время, когда пользователям приходилось использовать команды для навиг...
Контроль и управление перемещением мыши между несколькими мониторами в Windows 10
Диспетчер мыши с двумя дисплеями позволяет контролировать и настраивать движение мыши между несколькими мониторами, замедляя ее движения возле границы...
WinMouse позволяет настраивать и улучшать движение указателя мыши на ПК с Windows
Если вы хотите улучшить функции указателя мыши по умолчанию, используйте бесплатное ПО WinMouse. Он добавляет дополнительные функции, которые помогут ...