Thanks  a lot Ismael :)

Was able to get pass it.


Now trying to figure out from broker logs :


INFO [KafkaApis] [kafka-request-handler-0] [kafka-server] [] [KafkaApi-0]
Auto creation of topic testToic_1 with 8 partitions and replication factor
1 is successful!
[KafkaApis] [kafka-request-handler-0] [kafka-server] [] [KafkaApi-0] Error
when handling request Name: TopicMetadataRequest; Version: 0;
CorrelationId: 0; ClientId: producer-1; Topics: testToic_1
kafka.common.BrokerEndPointNotAvailableException: End point SSL not found
for broker 0





Thanks,

Mayuresh

On Thu, May 12, 2016 at 2:40 PM, Ismael Juma <ism...@juma.me.uk> wrote:

> Hi Mayuresh,
>
> You need to enable client authentication by setting `ssl.client.auth` to
> `required` or `requested` (I suggest the former).
>
> Ismael
>
> On Thu, May 12, 2016 at 10:35 PM, Mayuresh Gharat <
> gharatmayures...@gmail.com> wrote:
>
> > HI I am trying to establish an SSL connection from kafkaProducer and send
> > certificate to the Kafka Broker.
> >
> >
> > I deploy my kafka broker locally running 2 ports :
> > *listeners = PLAINTEXT://:9092,SSL://:16637 *
> >
> > *My KafkaBroker SSL configs look like this :*
> >
> > ssl.protocol = TLS
> > ssl.trustmanager.algorithm = SunX509
> > ssl.keymanager.algorithm = SunX509
> > ssl.keystore.type = VALUE1
> > ssl.keystore.location = /a/b/c
> > ssl.keystore.password = xyz
> > ssl.key.password = xyz
> > ssl.truststore.type = JKS
> > ssl.truststore.location = /u/v/w
> > ssl.truststore.password = 123
> >
> > I run my producer locally on the same linux box as my KafkaBroker.
> > My produce command looks like this :
> >
> > *bin/kafka-producer-perf-test.sh  --num-records 10 --topic testToic_1
> > --record-size 10 --throughput 1 --producer-props *
> > bootstrap.servers = localhost://:16637
> > security.protocol = SSL
> > ssl.protocol = TLS
> > ssl.trustmanager.algorithm = SunX509
> > ssl.keymanager.algorithm = SunX509
> > ssl.keystore.type = VALUE1
> > ssl.keystore.location = /a/b/c
> > ssl.keystore.password = xyz
> > ssl.key.password = xyz
> > ssl.truststore.type = JKS
> > ssl.truststore.location = /u/v/w
> > ssl.truststore.password = 123
> >
> >
> > On kafka broker, when I do inside buildPrincipal() api of PricipalBuilder
> >
> > SSLSession session = ((SslTransportLayer)transportLayer).sslSession();
> > session.getPeerCertificates()
> >
> > I get:
> > *org.apache.kafka.common.KafkaException:
> > javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated*
> >
> >
> > I ran this command as listed here
> > http://kafka.apache.org/documentation.html#security_ssl :
> >
> > *openssl s_client -debug -connect localhost:16637 -tls1*
> >
> > and was able to see the certificate.
> >
> > I am not able to understand the peer not authenticated exception here.
> > Am I missing any SSL config on producer request?
> >
> >
> >
> > --
> > -Regards,
> > Mayuresh R. Gharat
> > (862) 250-7125
> >
>



-- 
-Regards,
Mayuresh R. Gharat
(862) 250-7125

Reply via email to