8.9. IdM 클라이언트의 인증 문제를 해결하기 위해 SSSD 서비스에서 디버깅 로그 수집
IdM 클라이언트에 IdM 사용자로 인증할 때 문제가 발생하는 경우 IdM 서버에 대한 사용자 정보를 검색할 수 있는지 확인합니다. IdM 서버에 대한 사용자 정보를 검색할 수 없는 경우 IdM 서버에서 정보를 검색하는 IdM 클라이언트에서 검색할 수 없습니다.
인증 문제가 IdM 서버에서 발생하지 않았다는 것을 확인한 후 IdM 서버와 IdM 클라이언트에서 SSSD 디버깅 로그를 수집합니다.
사전 요구 사항
- 사용자는 IdM 서버가 아닌 IdM 클라이언트에만 인증 문제가 있습니다.
-
sssctl
명령을 실행하고 SSSD 서비스를 다시 시작하려면 루트 암호가 필요합니다.
절차
-
클라이언트에서 다음을 수행합니다. 텍스트 편집기에서
/etc/sssd/sssd.conf
파일을 엽니다. 클라이언트에서 다음을 수행합니다.
ipa_server
옵션을 파일의[domain]
섹션에 추가하고 IdM 서버로 설정합니다. 이렇게 하면 IdM 클라이언트가 다른 IdM 서버를 자동 검색하지 않으므로 이 테스트를 하나의 클라이언트와 하나의 서버로만 제한합니다.[domain/example.com] ipa_server = server.example.com ...
-
클라이언트에서 다음을 수행합니다.
sssd.conf
파일을 저장하고 닫습니다. 클라이언트에서 다음을 수행합니다. SSSD 서비스를 다시 시작하여 구성 변경 사항을 로드합니다.
[root@client ~]# systemctl restart sssd
서버 및 클라이언트에서 다음을 수행합니다. 자세한 SSSD 디버그 로깅을 활성화합니다.
[root@server ~]# sssctl debug-level 6
[root@client ~]# sssctl debug-level 6
서버 및 클라이언트에서 다음을 수행합니다. 인증 문제가 발생한 사용자의 경우 SSSD 캐시에서 오브젝트를 무효화하므로 LDAP 데이터베이스를 무시하고 SSSD가 이미 캐시된 정보를 검색하지 않습니다.
[root@server ~]# sssctl cache-expire -u idmuser
[root@client ~]# sssctl cache-expire -u idmuser
서버 및 클라이언트에서 다음을 수행합니다. 이전 SSSD 로그를 제거하여 데이터 세트 문제 해결을 최소화합니다.
[root@server ~]# sssctl logs-remove
[root@server ~]# sssctl logs-remove
클라이언트에서 다음을 수행합니다. 시도 전후에 타임스탬프를 수집하는 동안 인증 문제가 발생하는 사용자로 전환합니다. 이러한 타임스탬프는 데이터 세트의 범위를 더욱 좁힙니다.
[root@client sssd]# date; su idmuser; date Mon Mar 29 16:20:13 EDT 2021 su: user idmuser does not exist Mon Mar 29 16:20:14 EDT 2021
(선택 사항) 서버와 클라이언트에서 다음을 수행합니다. 자세한 SSSD 로그를 계속 수집하지 않으려면 디버그 수준을 낮춥니다.
[root@server ~]# sssctl debug-level 0
[root@client ~]# sssctl debug-level 0
서버 및 클라이언트에서 다음을 수행합니다. 실패한 요청에 대한 정보는 SSSD 로그를 검토하십시오.
- 클라이언트 로그의 클라이언트에서 요청을 검토합니다.
- 서버 로그의 클라이언트에서 요청을 검토합니다.
- 서버 로그에서 요청 결과를 검토합니다.
- 서버에서 요청 결과를 수신하는 클라이언트의 결과를 검토합니다.
인증 문제의 원인을 확인할 수 없는 경우:
최근 IdM 서버 및 IdM 클라이언트에서 생성된 SSSD 로그를 수집합니다. 호스트 이름 또는 역할에 따라 레이블을 지정합니다.
[root@server ~]# sssctl logs-fetch sssd-logs-server-Mar29.tar
[root@client ~]# sssctl logs-fetch sssd-logs-client-Mar29.tar
Red Hat 기술 지원 케이스를 열고 다음을 제공합니다.
SSSD 디버그 로그:
-
서버의
sssd-logs-server-29.tar
-
클라이언트에서
sssd-logs-client-29.tar
을 클라이언트에서 실행
-
서버의
로그에 해당하는 요청의 타임스탬프 및 사용자 이름을 포함한 콘솔 출력은 다음과 같습니다.
[root@client sssd]# date; su idmuser; date Mon Mar 29 16:20:13 EDT 2021 su: user idmuser does not exist Mon Mar 29 16:20:14 EDT 2021