{"id":2761,"date":"2018-08-23T22:43:59","date_gmt":"2018-08-23T20:43:59","guid":{"rendered":"https:\/\/www.oradba.ch\/?p=2761"},"modified":"2018-08-27T06:34:19","modified_gmt":"2018-08-27T04:34:19","slug":"oracle-unified-directory-sslhandshakeexception-with-java-1-8-0_181","status":"publish","type":"post","link":"https:\/\/www.oradba.ch\/wordpress\/2018\/08\/oracle-unified-directory-sslhandshakeexception-with-java-1-8-0_181\/","title":{"rendered":"Oracle Unified Directory SSLHandshakeException with Java 1.8.0_181"},"content":{"rendered":"<p>A couple of days ago I did update my <a href=\"https:\/\/github.com\/oehrlis\/docker\" rel=\"noopener\" target=\"_blank\">Oracle Unified Directory Docker images<\/a> with the latest bundle patch for OUD as well the latest java version. With the new Docker images I was about to reproduce a use case from a customer. Everything actually worked at first glance, but after a while I did realise, that my OUD Docker remains in status &#8220;unhealthy&#8221;. It seems that my status script is not able to get a clear status of the OUD instance. In particular the command &#8220;status&#8221; does fail.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\noracle@oud3:~\/ [oud_docker] status --trustall \\\n-D &quot;cn=Directory Manager&quot; -j $PWD_FILE\n\nError reading configuration. Details:\njavax.naming.CommunicationException: 0.0.0.0:4444 [Root exception is \njavax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: \nNo subject alternative names present]\n<\/pre>\n<p>I&#8217;ve tried to drill down the root cause of this issue, but haven&#8217;t been successfully. After a hint from a workmate, I took a look into the <a href=\"http:\/\/www.oracle.com\/technetwork\/java\/javase\/8u181-relnotes-4479407.html\" rel=\"noopener\" target=\"_blank\">release notes of Java 1.8.0 update 181<\/a>. It looks like the latest java 1.8.0 update includes security improvements for LDAP support.<\/p>\n<blockquote><p>\nChanges<br \/>\ncore-libs\/javax.naming<br \/>\n\u279c Improve LDAP support<br \/>\nEndpoint identification has been enabled on LDAPS connections.<\/p>\n<p>To improve the robustness of LDAPS (secure LDAP over TLS ) connections, endpoint identification algorithms have been enabled by default.<\/p>\n<p>Note that there may be situations where some applications that were previously able to successfully connect to an LDAPS server may no longer be able to do so. Such applications may, if they deem appropriate, disable endpoint identification using a new system property: com.sun.jndi.ldap.object.disableEndpointIdentification.<\/p>\n<p>Define this system property (or set it to true) to disable endpoint identification algorithms. <\/p>\n<p>JDK-8200666 (not public)\n<\/p><\/blockquote>\n<p>My first intention was to adjust the <em>java.properties<\/em> and disable endpoint identification just for <code class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">status<\/code>. But I was not successful. As a workaround I&#8217;ve set the java arguments <em>-Dcom.sun.jndi.ldap.object.disableEndpointIdentification=true<\/em> with the environment variable OPENDS_JAVA_ARGS. This seems to work as expected. <\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\noracle@oud3:~\/ [oud_docker] export OPENDS_JAVA_ARGS=-Dcom.sun.jndi.ldap.object.disableEndpointIdentification=true\noracle@oud3:~\/ [oud_docker] status --trustall \\\n  -D &quot;cn=Directory Manager&quot; -j $PWD_FILE\n\n--- Server Status ---\nServer Run Status:        Started\nOpen Connections:         1\n\n--- Server Details ---\nHost Name:                oud3\nAdministrative Users:     cn=Directory Manager\nInstallation Path:        \/u00\/app\/oracle\/product\/fmw12.2.1.3.0\/oud\nInstance Path:            \/u01\/instances\/oud_docker\/OUD\nVersion:                  Oracle Unified Directory 12.2.1.3.180626\nJava Version:             1.8.0_181\nAdministration Connector: Port 4444 (LDAPS)\n\n--- Connection Handlers ---\nAddress:Port : Protocol               : State\n-------------:------------------------:---------\n--           : LDIF                   : Disabled\n0.0.0.0:161  : SNMP                   : Disabled\n0.0.0.0:1389 : LDAP (allows StartTLS) : Enabled\n0.0.0.0:1636 : LDAPS                  : Enabled\n0.0.0.0:1689 : JMX                    : Disabled\n\n--- Data Sources ---\nBase DN:     cn=OracleContext\nBackend ID:  OIDCompatibility\nEntries:     34\nReplication: Disabled\n\nBase DN:     cn=OracleContext,dc=example,dc=com\nBackend ID:  OracleContext0\nEntries:     17\nReplication: Disabled\n\nBase DN:     cn=OracleSchemaVersion\nBackend ID:  OIDCompatibility\nEntries:     3\nReplication: Disabled\n\nBase DN:     cn=virtual acis\nBackend ID:  virtualAcis\nEntries:     0\nReplication: Disabled\n\nBase DN:     dc=example,dc=com\nBackend ID:  userRoot\nEntries:     1\nReplication: Disabled\n<\/pre>\n<p>This workaround temporarily disable the endpoint identification, although the correct method would be to fix and use it. For now there is a MOS bug related to this issue. This enhance the chance that this will be fixed in a future release. Till then you can easily workaround setting the environment variable.<\/p>\n<p>A few links related to this short blog post:<\/p>\n<ul>\n<li>Blog post on <a href=\"https:\/\/www.oradba.ch\/wordpress\/2017\/12\/oracle-unified-directory-on-docker\/\">Oracle Unified Directory on Docker<\/a><\/li>\n<li>MOS Bug <em><a href=\"https:\/\/support.oracle.com\/epmos\/faces\/BugDisplay?id=28525374\" rel=\"noopener\" target=\"_blank\">28525374<\/a><\/em> SSLHANDSHAKEEXCEPTION WHEN CREATING OUD INSTANCE WITH JAVA 1.8.0_181<\/li>\n<li>MOS Note OUD &#8211; How To Configure the Default JVM and Java Arguments with Environment Variables or by Modification of the java.properties File <em><a href=\"https:\/\/support.oracle.com\/epmos\/faces\/DocumentDisplay?id=2220584.1\" rel=\"noopener\" target=\"_blank\">2220584.1<\/a><\/em><\/li>\n<li>My genuine Docker build scripts for Oracle Unified Directory on GitHub <a href=\"https:\/\/github.com\/oehrlis\/docker\" target=\"_blank\" rel=\"noopener\">(oehrlis\/docker)<\/a><\/li>\n<li>Oracle Docker build scripts for Oracle Unified Directory on GitHub <a href=\"https:\/\/github.com\/oracle\/docker-images\/tree\/master\/OracleUnifiedDirectory\" target=\"_blank\" rel=\"noopener\">(oracle\/docker-images)<\/a> yep from me too \ud83d\ude42<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>A couple of days ago I did update my Oracle Unified Directory Docker images with the latest bundle patch for OUD as well the latest java version. With the new Docker images I was about to reproduce a use case from a customer. Everything actually worked at first glance, but after a while I did [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"Oracle Unified Directory SSLHandshakeException with Java 1.8.0_181","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[142],"tags":[130,18],"class_list":["post-2761","post","type-post","status-publish","format-standard","hentry","category-oud","tag-trivadis","tag-trivadiscontent"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p1aErb-Ix","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":2674,"url":"https:\/\/www.oradba.ch\/wordpress\/2018\/07\/doag-2018-sig-security-oracle-unified-directory-on-docker\/","url_meta":{"origin":2761,"position":0},"title":"DOAG 2018 SIG Security &#8211; Oracle Unified Directory on Docker","author":"Stefan","date":"4. July 2018","format":false,"excerpt":"A couple of days ago I did had the opportunity to give a presentation on Oracle Unified Directory on Docker at the DOAG SIG Security day in Stuttgart. It was a great opportunity to discuss how OUD engineering can be simplified using Docker. As proof how easy this can be,\u2026","rel":"","context":"In &quot;DOAG&quot;","block_context":{"text":"DOAG","link":"https:\/\/www.oradba.ch\/wordpress\/category\/doag\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.oradba.ch\/wordpress\/wp-content\/uploads\/IMG_1575-300x225.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":2456,"url":"https:\/\/www.oradba.ch\/wordpress\/2017\/12\/oracle-unified-directory-on-docker\/","url_meta":{"origin":2761,"position":1},"title":"Oracle Unified Directory on Docker","author":"Stefan","date":"13. December 2017","format":false,"excerpt":"A bit a while ago I've started to use Docker for miscellaneous purposes. Not really an early adopter, but I still hope I caught the train just in time. :-) In one of my customer project, I did have to set up a couple of OUD instance to develop and\u2026","rel":"","context":"In &quot;Docker&quot;","block_context":{"text":"Docker","link":"https:\/\/www.oradba.ch\/wordpress\/category\/docker\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.oradba.ch\/wordpress\/wp-content\/uploads\/OUD_Moby-300x209.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":2693,"url":"https:\/\/www.oradba.ch\/wordpress\/2018\/07\/oudbase-environment-scripts-for-oracle-unified-directory-part-1\/","url_meta":{"origin":2761,"position":2},"title":"OUDbase environment scripts for Oracle Unified Directory Part 1","author":"Stefan","date":"16. July 2018","format":false,"excerpt":"Almost two years ago I started writing environment scripts for my Oracle Unified Directory installations. At the beginning there were only 2-3 scripts, from which at some point a small project on GitHub emerged. A lot has changed since my blog post Environment Scripts for OUD. The current version of\u2026","rel":"","context":"In &quot;Oracle Unified Directory&quot;","block_context":{"text":"Oracle Unified Directory","link":"https:\/\/www.oradba.ch\/wordpress\/category\/oud\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.oradba.ch\/wordpress\/wp-content\/uploads\/Screen-Shot-2018-07-16-at-23.43.18-300x95.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.oradba.ch\/wordpress\/wp-content\/uploads\/Screen-Shot-2018-07-16-at-23.43.18-300x95.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.oradba.ch\/wordpress\/wp-content\/uploads\/Screen-Shot-2018-07-16-at-23.43.18-300x95.png?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":3065,"url":"https:\/\/www.oradba.ch\/wordpress\/2019\/05\/soug-day-2019-oracle-database-in-docker\/","url_meta":{"origin":2761,"position":3},"title":"SOUG Day 2019 &#8211; Oracle Database in Docker","author":"Stefan","date":"22. May 2019","format":false,"excerpt":"Today I did have the opportunity to give a presentation on Oracle Database in Docker at the SOUG day in Olten. It was a great opportunity to discuss how Oracle database engineering can be simplified using Docker. Besides the demo the following topics were discussed: Docker images, container and volumes\u2026","rel":"","context":"In &quot;18c&quot;","block_context":{"text":"18c","link":"https:\/\/www.oradba.ch\/wordpress\/category\/oracle-database\/18c\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.oradba.ch\/wordpress\/wp-content\/uploads\/D7KVdlnXsAAg0aX-300x225.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":2431,"url":"https:\/\/www.oradba.ch\/wordpress\/2017\/11\/install-oracle-unified-directory-12c-the-smart-way\/","url_meta":{"origin":2761,"position":4},"title":"Install Oracle Unified Directory 12c the smart way","author":"Stefan","date":"23. November 2017","format":false,"excerpt":"Installing Oracle Unified Directory has always been easy. The installation guide for OUD 11c as well OUD 12 is simple and straight forward. Additionally Oracle does provide a couple of MOS notes for different deployment scenarios. Nevertheless there is always room for improvement :-) During my work on OUD to\u2026","rel":"","context":"In &quot;Howto&quot;","block_context":{"text":"Howto","link":"https:\/\/www.oradba.ch\/wordpress\/category\/howto\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2689,"url":"https:\/\/www.oradba.ch\/wordpress\/2019\/02\/doag-red-stack-magazin-oracle-unified-directory-in-docker\/","url_meta":{"origin":2761,"position":5},"title":"DOAG Red Stack Magazin &#8211; Oracle Unified Directory in Docker","author":"Stefan","date":"18. February 2019","format":false,"excerpt":"Mid June I wrote an article for the DOAG Red Stack magazin about my work on Oracle Unified Directory in Docker. Just about the same time I did my DOAG SIG Security presentation on the same topic. In the meantime the article has been published in the latest release of\u2026","rel":"","context":"In &quot;DOAG&quot;","block_context":{"text":"DOAG","link":"https:\/\/www.oradba.ch\/wordpress\/category\/doag\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/posts\/2761","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/comments?post=2761"}],"version-history":[{"count":9,"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/posts\/2761\/revisions"}],"predecessor-version":[{"id":2773,"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/posts\/2761\/revisions\/2773"}],"wp:attachment":[{"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/media?parent=2761"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/categories?post=2761"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.oradba.ch\/wordpress\/wp-json\/wp\/v2\/tags?post=2761"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}