Re: PHP Connection over SSL

From: Jeremy Mikola <jmikola@xxxxxxxxxxx>
To: mongodb-user@xxxxxxxxxxxxxxxx
Date: Tue, 10 May 2016 11:09:10 -0400
Why ads?
On Mon, May 9, 2016 at 5:40 PM, <joe@xxxxxxxxxxxx> wrote:



On Monday, May 9, 2016 at 4:14:44 PM UTC-5, Jeremy Mikola wrote:



On Mon, May 9, 2016 at 2:32 PM, <j...@xxxxxxxxxxxx> wrote:


That's great, thank you for your help. I'm running into this now:

'No suitable servers found (`serverselectiontryonce` set): [connection
timeout calling ismaster on '192.168.10.251:27017']'

I can only seem to find issues relating to ipv6 and localhost with this
issue, but those look like they've been fixed (My PECL MongoDB extension is
1.1.6). This is with the mongod.conf file set to 'requireSSL'. With
'preferSSL', everything connects fine, though I am assuming without SSL
encryption.

Is there something else I should be looking at, or does this just seem
to indicate SSL issues?


That likely points to an SSL issue. Unfortunately, we don't yet have
visibility into the exact error on the client (this is pending
CDRIVER-841 <https://jira.mongodb.org/browse/CDRIVER-841>); however, you
may be able to correlate this with an error in the server logs, as was done
in that ticket.

Also, I just want to clarify that "sslAllowInvalidCertificates" (from
your original post) is not a supported URI option in our drivers. I assume
that was adapted from a command line option on various console clients that
ship with MongoDB (e.g. mongo, mongotop).

Sure, that makes sense. And the 'sslAllowInvalidCertificates' was just
stabbing in the dark...

So, server shows:

2016-05-09T16:37:50.562-0500 I NETWORK  [initandlisten] connection
accepted from 192.168.10.100:62899 #1 (1 connection now open)

2016-05-09T16:37:50.563-0500 D -        [conn1] User Assertion: 17189:The
server is configured to only allow SSL connections

2016-05-09T16:37:50.563-0500 I NETWORK  [conn1] AssertionException
handling request, closing client connection: 17189 The server is configured
to only allow SSL connections

Which, I take to mean that the connection coming from PHP is not coming
over SSL. Would you all agree with that? I turned verbosity of system log
up to 3 and that's all I'm really seeing.


One more suggestion would be capturing the driver's internal activity via
the mongodb.debug <http://php.net/manual/en/mongodb.configuration.php> INI
option. You can either specify a directory, which the driver will use to
generate traces named by the process ID (useful for web SAPIs), or
"stderr", which may be more convenient for a PHP CLI script.

This should at least show us that the driver is attempting to setup SSL and
may hopefully capture some additional errors/warnings from libmongoc that
occur before the generic "No suitable servers found" exception is thrown.

-- 
You received this message because you are subscribed to the Google Groups "mongodb-user"
group.

For other MongoDB technical support options, see: https://docs.mongodb.org/manual/support/
--- 
You received this message because you are subscribed to the Google Groups "mongodb-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mongodb-user+unsubscribe@xxxxxxxxxxxxxxxx.
To post to this group, send email to mongodb-user@xxxxxxxxxxxxxxxx.
Visit this group at https://groups.google.com/group/mongodb-user.
To view this discussion on the web visit https://groups.google.com/d/msgid/mongodb-user/CACypnJWwh5rJyF%3DNxD7z9S0988M4rO5Jbf5TxJ7-X5Dirypomw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
Why ads?