Freeradius PAM은 로그인 시 사용자 및 홈페이지를 생성합니다.

Freeradius PAM은 로그인 시 사용자 및 홈페이지를 생성합니다.

이 시점에서 freeradius와 PAM radius를 올바르게 설치했습니다. 시스템에 계정을 생성하고 /etc/raddb/users.conf에 비밀번호를 설정하면 사용자가 로그인할 수 있습니다. Sudo는 PAM 반경에서도 작동합니다.

내가 달성하고 싶은 것은 /etc/raddb/users.conf에서 사용자를 생성하고 구성을 다시 로드하는 것입니다. Radius 인증이 성공하면 계정과 홈 디렉터리가 생성됩니다.

나는 포함하여 많은 것을 시도했습니다session required pam_mkhomedir.so skel=/etc/skel/ umask=0022

시스템 사용자 계정 로그인에 대한 마지막 로그 줄이 없습니다.

Feb 23 18:59:17 localhost sshd[3353]: pam_unix(sshd:auth): check pass; user unknown
Feb 23 18:59:18 localhost sshd[3353]: Failed password for invalid user pop from 192.168.0.115 port 53608 ssh2
Feb 23 18:59:18 localhost sshd[3353]: Connection closed by 192.168.0.115 [preauth]
Feb 23 18:59:18 localhost sshd[3353]: PAM 3 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=danys-mbp.fritz.box
Feb 23 18:59:18 localhost sshd[3353]: PAM service(sshd) ignoring max retries; 4 > 3
Feb 23 18:59:18 localhost sshd[3358]: Invalid user pop from 192.168.0.115
Feb 23 18:59:18 localhost sshd[3358]: input_userauth_request: invalid user pop [preauth]
Feb 23 18:59:21 localhost sshd[3358]: pam_unix(sshd:auth): check pass; user unknown
Feb 23 18:59:21 localhost sshd[3358]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=danys-mbp.fritz.box
Feb 23 18:59:22 localhost sshd[3358]: Failed password for invalid user pop from 192.168.0.115 port 53609 ssh2

내 PAM sshd 구성

#%PAM-1.0
auth       required pam_sepermit.so
auth sufficient pam_radius_auth.so
auth       substack     password-auth
auth       include      postlogin
# Used with polkit to reauthorize users in remote sessions
-auth      optional     pam_reauthorize.so prepare
#account    required     pam_nologin.so
account    include      password-auth
password   include      password-auth
# pam_selinux.so close should be the first session rule
session    required    pam_mkhomedir.so skel=/etc/skel/ umask=0022
session    required     pam_selinux.so close
session    required     pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session    required     pam_selinux.so open env_params
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
session    include      password-auth
session    include      postlogin
# Used with polkit to reauthorize users in remote sessions
-session   optional     pam_reauthorize.so prepare

freeradius 및 PAM radius를 사용할 때 로그인 시 시스템 계정과 홈 디렉터리를 생성할 수 있습니까? 그렇다면 어떻게 작동합니까?

ps: 저는 CentOS 7을 사용하고 있습니다.

편집: 사용자가 존재하는지 확인하기 위해 bash 스크립트를 사용해 보았습니다. 그런 다음 존재하지 않으면 생성하십시오. 그러나 작동하지 않으며 pam_exec.so 실패에 대한 로그 출력이 표시되지 않습니다.

편집: radtest가 사용자 이름과 비밀번호가 정확하다고 알려줍니다.

답변1

CentOS 7에서는 다음을 사용할 수 있습니다.jeroennijhof/pam_script당신이 원하는 것을하십시오.

  • rpm을 설치합니다:

    sudo yum install epel-release.noarch sudo yum install pam_script

  • /etc/pam.d/sshd 파일에 다음 줄을 추가합니다.

    auth optional /usr/lib64/security/pam_script.so auth sufficient /usr/lib64/security/pam_radius_auth.so #added to include radius

  • 스크립트 디렉터리가 없으면 만듭니다.

    sudo mkdir /etc/pam-script.d/

  • /etc/pam-script.d/pam_script_auth 파일에 다음 줄을 추가합니다.

    #add user logger Adding New User $PAM_USER useradd $PAM_USER echo $PAM_USER:U6aMy0wojraho | sudo chpasswd -e

관련 정보