6.2. pam_debug - PAM 스택 디버깅

pam_debug.so [ auth=value ] [ cred=value ] [ acct=value ] [ prechauthtok=value ] [ chauthtok=value ] [ auth=value ] [ open_session=value ] [ close_session=value ]

6.2.1. 설명

PAM 모듈 pam_debug는 PAM 스택이 어떻게 동작하고 있는지 알아내기 위한 디버깅 보조 모듈이다. 모듈 인자로 반환하라고 한 값을 반환한다.

6.2.2. 옵션

auth=value

pam_sm_authenticate(3) 함수가 value를 반환하게 된다.

cred=value

pam_sm_setcred(3) 함수가 value를 반환하게 된다.

acct=value

pam_sm_acct_mgmt(3) 함수가 value를 반환하게 된다.

prechauthtok=value

PAM_PRELIM_CHECK 플래그가 설정돼 있는 경우에 pam_sm_chauthtok(3) 함수가 value를 반환하게 된다.

chauthtok=value

PAM_PRELIM_CHECK 플래그가 설정돼 있지 않은 경우에 pam_sm_chauthtok(3) 함수가 value를 반환하게 된다.

open_session=value

pam_sm_open_session(3) 함수가 value를 반환하게 된다.

close_session=value

pam_sm_close_session(3) 함수가 value를 반환하게 된다.

value는 success, open_err, symbol_err, service_err, system_err, buf_err, perm_denied, auth_err, cred_insufficient, authinfo_unavail, user_unknown, maxtries, new_authtok_reqd, acct_expired, session_err, cred_unavail, cred_expired, cred_err, no_module_data, conv_err, authtok_err, authtok_recover_err, authtok_lock_busy, authtok_disable_aging, try_again, ignore, abort, authtok_expired, module_unknown, bad_item, conv_again, incomplete 중 하나다.

6.2.3. 제공하는 모듈 종류

모든 모듈 타입(auth, account, password, session)을 제공한다.

6.2.4. 반환 값

PAM_SUCCESS

아무 값도 지정하지 않은 경우의 기본 반환 코드. 지정했으면 그 값 반환.

6.2.5. 예시

auth    requisite       pam_permit.so
auth    [success=2 default=ok]  pam_debug.so auth=perm_denied cred=success
auth    [default=reset]         pam_debug.so auth=success cred=perm_denied
auth    [success=done default=die] pam_debug.so
auth    optional        pam_debug.so auth=perm_denied cred=perm_denied
auth    sufficient      pam_debug.so auth=success cred=success
    

6.2.6. 작성자

Andrew G. Morgan <morgan@kernel.org>이 pam_debug를 작성했다.