'Kafka cluster security for IOT

I am new to the Kafka and want to deploy Kafka Production cluster for IOT. We will be receiving messages from Raspberry Pi over the internet to our Kafka cluster which we will be hosting on AWS.

Now the concern, since we need to open the KAFKA PORT to the outer internet we are opening a way to system threat as it will compromise with the security by opening port to outer world.

Please let me know what can be done so that we can prevent malicious access using KAFKA port over the internet.

Pardon me if I am not clear with the question, do let me know if rephrasing of queation is needed.



Solution 1:[1]

Consider using a REST Proxy in front of your Kafka brokers (such as the one from Confluent). Then you can secure your Kafka cluster just as you would secure any REST API exposed to the public internet. This architecture is proven in production for several very large IoT use cases.

Solution 2:[2]

There are two ways that are most effective for Kafka Security.

  1. Implement SSL Encryption for Kafka.
  2. Authentication using SASL

You can follow this guide. http://kafka.apache.org/documentation.html#security_sasl

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Hans Jespersen
Solution 2 error2007s