[ https://issues.apache.org/jira/browse/GEODE-420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15273143#comment-15273143 ]
Bruce Schuchardt commented on GEODE-420: ---------------------------------------- This is a response to the above proposal from Jens Deppe: For the current proposal, how would this affect WAN configurations? Given our current SSL mindset wouldn't there also potentially need to be a third locator port for the remote side to communicate with for gateway discovery? That's somewhat of a rhetorical question because I think we should be considering our SSL configuration differently. Instead of a 'cluster-ssl' port and 'server-ssl' port we should just have the ability for the locator to listen on a regular port and/or a SSL port. In addition, we should do away with almost all of the current ssl properties. For the whole cluster we really just need: A single keystore which contains multiple keys - one for each component as necessary A single truststore The ability for each component to use a key (either as client or server) identified by an alias in the keystore A single, cluster wide set of parameters used to configure SSL (cipher and protocols) - Do customers really have a need to configure SSL differently for different secured ways of accessing the same system? So, we'd end up with parameters something like the following (excluding each associated password option): cluster-ssl-keystore cluster-ssl-truststore locator-ssl-alias server-ssl-alias cluster-ssl-alias gateway-ssl-alias jmx-ssl-alias http-ssl-alias Essentially, each component which can listen on a secured port needs an alias and each client socket we set up needs to be able to use an alias This gets away from thinking about each communications subsystem (client-server, p2p, WAN, etc.) as requiring it's own set of configuration. That leads to the current problem where we have overlapping components (locator in this case) suggesting we need separate ports and configuration for each subsystem. Rather, each individual listening component just needs to be able use a specific key. To provide fully authenticated communications (mutual auth) all that someone needs do is make sure their keys are appropriately signed and that the single signing authority be distributed everywhere. --Jens > locator ssl configuration > ------------------------- > > Key: GEODE-420 > URL: https://issues.apache.org/jira/browse/GEODE-420 > Project: Geode > Issue Type: New Feature > Components: locator > Reporter: Darrel Schneider > Assignee: Bruce Schuchardt > > We currently allow separate SSL configuration for cluster, server, gateway, > jmx-manager, and http-service. > The "server" attributes configure the ssl connections from clients to a cache > server. > The "gateway" attributes configure the ssl connections between a gateway > sender and receiver. > The "jmx-manager" attributes configure the ssl connections between an admin > client (for example gfsh) and the jmx-manager. > The "http-service" attributes configure the ssl connections between REST > clients and the http-service. > The "cluster" attributes configure the ssl connections between the members of > a distributed system (peer-to-peer connections) AND to the locators. > Using "cluster" for the connections to a locator can be a problem. > Say you trust all your members of a distributed system since they are running > on your private network. So no need for ssl on the p2p connections. > So you disable cluster-ssl. These means that your peers are locators are all > using unsecure connections. > But some of these members are hosting a cache server and have clients > connecting to them. So you configure "server" ssl for the client to server > connections. But for your clients to find you servers they need to talk to > the locator. Since the clients are coming from the outside world you want > them to use SSL. So you configure "server" ssl on them for when they connect > to the cache server and "cluster" SSL on them for when they connect to the > locator. But your locators are configured with "cluster" SSL disabled so that > the p2p connects on the internal network will not be SSL. > So you are either forced to have you client to locator connections to be > unsecure or you need to secure all the cluster connections forcing the peers > to also use SSL. > I think we should introduce "locator" SSL configuration options that would > allow you to have just the locator and server using SSL and the "cluster" to > have SSL disabled. > Something else to consider would be for the locator to be able to use SSL for > clients but non-SSL for locator-to-locator and peers-to-locator connections. > I think this would be more complicated because we would need to have > different ports that the locator listens on (one for clients and one for > locators and members). > -- This message was sent by Atlassian JIRA (v6.3.4#6332)