WebSphere 인증 오류 - No trusted certificate found

2014.02.14 09:22

웹스피어에서 애플리케이션 서버와 응용프로그램이 사용 불가능하다는 에러가 생겼다. (WebSphere 6.1 ND)







에러로그를 찾아보니 인증문제이긴한데.. 

[app1:root] /WebSphere/AppServer/profiles/Dmgr/logs/dmgr > tail -1000 SystemOut.log


[3/12/13 19:21:28:167 KST] 00000025 ORBRas E com.ibm.ws.security.orbssl.WSSSLClientSocketFactoryImpl createSSLSocket ProcessDiscovery : 0 JSSL0080E: javax.net.ssl.SSLHandshakeException - The client and server could not negotiate the desired level of security.  Reason: com.ibm.jsse2.util.h: No trusted certificate found javax.net.ssl.SSLHandshakeException:com.ibm.jsse2.util.h: No trusted certificate found

        at com.ibm.jsse2.n.a(n.java:8)

        at com.ibm.jsse2.pc.a(pc.java:210)

        at com.ibm.jsse2.eb.a(eb.java:478)

        at com.ibm.jsse2.eb.a(eb.java:536)

        at com.ibm.jsse2.fb.a(fb.java:162)

        at com.ibm.jsse2.fb.a(fb.java:290)

        at com.ibm.jsse2.eb.m(eb.java:17)

        at com.ibm.jsse2.eb.a(eb.java:295)

        at com.ibm.jsse2.pc.a(pc.java:214)

.......................




웹스피어 서비스를 번갈아 재기동 해보고, 양쪽을 동시에 죽였다가 살려봐도 계속 동일한 현상은 계속되고.. 



구글링해 보니 Cell과 node간 자체 인증키가 정상적으로 처리되지 않아서 그렇다고 한다. 


해결방법이 제시된 사이트




그런데 해결방법이 새로운 키를 생성하고, 이 키를 동기화 시키라는 이야기 같은데.. 어렵다.  ^^;;


다시 여기저기 수소문해서 얻은 방법은 다음과 같다. 


1. 관리보안 서비스를 이용하지 않도록 설정하고 WAS 재기동

2. WAS에 서버와 응용 프로그램이 정상적으로 살아난 것 확인

3. 관리보안 서비스를 이용하도록 다시 설정하고 WAS 재기동


이게 조금 더 쉬어보여서 이렇게 하기로 했다.  ㅋ




1. security.xml 파일 수정(수정 전 백업 필수)


  가. 수정대상

1) [app1:root] /WebSphere/AppServer/profiles/Dmgr/config/cells/app1Cell

2) [app1:root] /WebSphere/AppServer/profiles/AppSrv01/config/cells/app1Cell 

3) [app2:root] /WebSphere/AppServer/profiles/AppSrv02/config/cells/app1Cell 



  나. 수정내용

<security:Security xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"xmlns:orb.securityprotocol="http://www.ibm.com/websphere/app

server/schemas/5.0/orb.securityprotocol.xmi" xmlns:security="http://www.ibm.com/websphere/appserver/schemas/5.0/security.xmi" xmi:id

="Security_1" useLocalSecurityServer="true" useDomainQualifiedUserNames="false" enabled="true" cacheTimeout="600"



==>> enabled="true" 를 false로 변경




2. dmgr 종료

[app1:root] /WebSphere/AppServer/profiles/Dmgr/bin > stopManager.sh



3. nodeagent 종료

1) [app1:root] /WebSphere/AppServer/profiles/AppSrv01/bin> stopNode.sh

2) [app2:root] /WebSphere/AppServer/profiles/AppSrv02/bin> stopNode.sh



4. dmgr 시작

[app1:root] /WebSphere/AppServer/profiles/Dmgr/bin > startManager.sh



5. nodeagent 시작

1) [app1:root] /WebSphere/AppServer/profiles/AppSrv01/bin> startNode.sh

2) [app2:root] /WebSphere/AppServer/profiles/AppSrv02/bin> startNode.sh




6. 인스턴스 종료

1) [app1:root] /WebSphere/AppServer/profiles/AppSrv01/bin> stopServer.sh homeapp-1

2) [app1:root] /WebSphere/AppServer/profiles/AppSrv01/bin> stopServer.sh mhomeapp-1

3) [app2:root] /WebSphere/AppServer/profiles/AppSrv02/bin> stopServer.sh homeapp-1

4) [app2:root] /WebSphere/AppServer/profiles/AppSrv02/bin> stopServer.sh mhomeapp-1




7. 양 쪽 서버 WAS 동시에 Stop / start




이렇게 했더니 일단 보안 서비스 없이 WAS가 재기동되었다. 

[app1:root] /WebSphere/AppServer/profiles/Dmgr/logs/dmgr > tail -100 SystemOut.log


...............


[3/13/13 16:27:42:854 KST] 0000000a distSecurityC I   SECJ0210I: Security enabled false


................





콘솔에 접속해보니 로그인 페이지에 암호 입력하는 박스가 없어졌다.. ^^;;



application server와 응용프로그램도 정상적으로 보인다.  ㅎㅎㅎ





일단 이렇게 급한불끄기 성공... ^^





덧붙임


이후 백업해 놨던 xml파일로 다시 복원(security... enable이 true였던.....)


양쪽 웹스피어 서비스 종료 후 하나씩 재기동 시켰더니 복구되었다. 




또루아빠 WAS , ,