LINUX.ORG.RU

PAM limits

 , , ,


0

1

Всем доброго времени суток. У меня стоит задача ограничить xrdp подключения только одной сессией на машине. Стандартными средствами xrdp я этого функционала не нашел (возможно я ошибаюсь?). Немного поискал, порылся, и нашёл модуль pam_limits.so с параметром maxsyslogins. А вот теперь и сам вопрос. Могу ли я переуказать конфиг файл для pam_limits.so и где он должен лежать?. Читаючи man, я вижу что такая функция как бы есть «conf=/path», но на практике как то плохо выходит.

На данный момент у меня есть такое в файле

/etc/pam.d/xrdp-sesman:

@include common-auth

@include common-account

session required        pam_limits.so   conf=/etc/security/limits.d/limits.conf

@include common-session

@include common-password

И в /etc/security/limits.d/limits.conf:

*       -       maxsyslogins    1

Но я по прежнему могу зайти двумя пользователями одновременно (пользователи отличны от uid=0)

Ну и конечно, я хочу под ssh заходить без этого ограничения.

common-auth:

auth    [success=2 default=ignore]      pam_unix.so nullok_secure
auth    [success=1 default=ignore]      pam_sss.so use_first_pass
auth    requisite                       pam_deny.so
auth    required                        pam_permit.so
auth    optional        pam_mount.so
auth    optional                        pam_cap.so

common-account:

account requisite                       pam_deny.so
account required                        pam_permit.so
account sufficient                      pam_localuser.so
account [default=bad success=ok user_unknown=ignore]    pam_sss.so

common-session:

session [default=1] pam_permit.so
session requisite         pam_deny.so
session required          pam_permit.so
session optional          pam_umask.so
session required    pam_mkhomedir.so umask=0022 skel=/etc/skel
session required          pam_unix.so
session optional          pam_sss.so
session optional    pam_exec.so quiet /etc/pam.d/rsync.sh
session optional          pam_mount.so
session optional    pam_exec.so quiet /etc/pam.d/rsync.sh
session optional          pam_systemd.so

common-password:

password        requisite                       pam_pwquality.so retry=3
password        [success=2 default=ignore]      pam_unix.so obscure use_authtok try_first_pass sha512
password        sufficient                      pam_sss.so use_authtok
password        requisite                       pam_deny.so
password        required                        pam_permit.so
password        optional        pam_mount.so disable_interactive
password        optional        pam_gnome_keyring.so

Дополнение: Так же я заметил, что модуль считывает с папки /etc/security/limits.d конфиги и для других служб…



Последнее исправление: topotyn (всего исправлений: 9)

Покажи содержимое всех остальных файлов, на которые ссылается /etc/pam.d/xrdp-sesman. И используй разметку для конфигов или кода (исходное сообщение тоже поправь).

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

спойлер

Не могу сделать спойлер … Уже перепробовал что только мог…

topotyn
() автор топика

xrdp собран с поддержкой pam?

Попробуй в /etc/security/limits.d/limits.conf:

@udalonka       -       maxlogins    1
Добавь пользователей RDP в группу udalonka, а того кто по ssh ходит не добавляй.

Так же я заметил, что модуль считывает с папки /etc/security/limits.d конфиги и для других служб…

Естественно, скажу больше /etc/security относится к классическому UNIX DAC. Какова у него дискретность настроек?

anonymous
()

Попробуйте блокируя вход отдельному пользователю через pam_succeed_if.so или pam_listfile.so https://access.redhat.com/solutions/64860 убедиться, что xrdp у вас с поддержкой PAM, и что xrdp именно файл xrdp-sesman читает.

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.