Посты по тегу: TLS

Jenkins + LDAPS + самоподписные сертификаты

Проблема

При попытке сконфигурировать Jenkins для подключения к LDAP серверу с использованием шифрования данных получаем ошибку:

Unable to connect to ldaps://ldap.example.com:636 : javax.naming.CommunicationException: anonymous bind failed: ldap.example.com:636 [Root exception is javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target]

javax.naming.CommunicationException: anonymous bind failed: ldap.example.com:636 [Root exception is javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target]
    at com.sun.jndi.ldap.LdapClient.authenticate(LdapClient.java:198)
    at com.sun.jndi.ldap.LdapCtx.connect(LdapCtx.java:2788)
    at com.sun.jndi.ldap.LdapCtx.<init>(LdapCtx.java:319)
    at com.sun.jndi.ldap.LdapCtxFactory.getUsingURL(LdapCtxFactory.java:192)
    at com.sun.jndi.ldap.LdapCtxFactory.getUsingURLs(LdapCtxFactory.java:210)
    at com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxInstance(LdapCtxFactory.java:153)
    at com.sun.jndi.ldap.LdapCtxFactory.getInitialContext(LdapCtxFactory.java:83)

Она говорит нам, что Java не осилила TLS (SSL) из-за того, что у нас самоподписной сертификат.

Лечение

Заходим на сервер с Jenkins (если у вас он в доккере, то делайте все, что описано ниже внутри доккер контейнера).
Читать далее...

https на Tomcat7 за Nginx

Если вы терминируете https на Nginx, а за ним стоит Tomcat7, то стоит проверить как посылаются данные из форм. Скорее всего это будет HTTP.

Чтоб данные отправлялись по https необходимо в Tomcat7 дописать следующий блок:

<Valve className="org.apache.catalina.valves.RemoteIpValve"
       remoteIpHeader="x-forwarded-for"
       remoteIpProxiesHeader="x-forwarded-by"
       protocolHeader="x-forwarded-proto"
/>