2013-03-12 5 views
0

PAM에 문제가 있습니다. PAM을 사용하여 인증하는 tomcat webapp가 있습니다. 설치하는 동안 /etc/pam.d의 심볼릭 링크를 /etc/pam.d/sshd 파일에 만듭니다. 이것은 항상 효과가있었습니다.PAM "pam_unix.so"인증이 때때로 실패합니다.

최근에 사용자가 JSESSIONID 쿠키를 사용하는 대신 각 요청을 인증하는 방법을 추가했습니다. 일부 데이터를 주기적으로 모니터링 응용 프로그램에 일괄 적으로로드해야하고 기본 인증을 사용하기가 쉽기 때문에이 기능이 추가되었습니다.

웹 서비스를 반복적으로 (예 : 10 회) 반복하면 PAM이 실패합니다. 이것은 약 500 번 한 번 발생하지만 내 고객은 두 번마다 한 번씩 발생한다고 주장합니다 (원격으로 실행 중이지만 그 이유는 알 수 없지만).

나는 최소한의 설정으로 내 SYM 링크 팸 설정을 교체 한

: 나는 또한 내 /etc/syslog.conf를

*.debug /var/log/debug.log 

만 적용 로그에이를 추가 한

#%PAM-1.0 
auth  sufficient pam_unix.so audit 
auth  required  pam_deny.so 

메시지는 debug.log를에서 찾을 수 있습니다

Mar 12 09:49:32 arques java: pam_unix(foo:auth): unable to obtain a password 
Mar 12 09:49:32 arques java: pam_unix(foo:auth): auth could not identify password for [root] 

가 어떻게이 furthe를 디버깅 할 아르 자형? 나는 시도했다 :

  1. 다른 호스트 사용. 새로운 브랜드는
  2. 를 설치하는 것입니다 하나는 내가 nscd를 서비스

답변

0

내가 인증을 위해 PAM을 사용하는 Java 응용 프로그램과 비슷한 문제에 봉착를 해제했습니다. 당장은 문제가 CentOS 6.4의 분산 Java PAM 바인딩 구현에 있다고 생각합니다. 나는 더 이상 시스템에 액세스 할 수 없습니다 (하지만, 난 여전히이 문제를 해결하기 위해 노력하고있어) 그래서 나는 등 JDK 버전 등의 세부 사항을 제공 할 수

내 솔루션 궁극적으로 가혹 kludge하는 PAM이었다

#%PAM- 
auth sufficient pam_debug.so 

더 명확하게하려면 대신 "pam_permit.so"를 사용할 수 있습니다. 그건 기본적으로. 그러면 모든 유효한 사용자가 암호의 유무에 관계없이 인증됩니다. 응.

더 나은 답변을 계속 연구 중입니다.

+0

궁극적으로 나는 내 PAM 구성이 훌륭하다고 결론 내렸다. 내가 찾은 해결책은 인증 기능 (즉, 직접 libpam.jar를 호출하는 것)을 직접 호출하는 대신 핵심 인증 시스템 (이것은 Seam 애플리케이션이므로 이상한 간접 참조가 있음)을 통해 인증을 라우트하는 것이 었습니다. 왜 그게 효과가 있는지 모르겠지만 그렇게했습니다. – mlathe

관련 문제