Re: PHP Connection over SSL

From: Derick Rethans <derick@xxxxxxxxxxx>
To: mongodb-user <mongodb-user@xxxxxxxxxxxxxxxx>
Date: Fri, 6 May 2016 22:52:23 +0100 (BST)
Why ads?
On Fri, 6 May 2016, joe@xxxxxxxxxxxx wrote:

I'm setting up a development environment with PHP creating a 
connection to MongoDB over SSL. The server is using a self-signed cert 
and I'm using the MongoDB PHP extension (Not the older Mongo 
extension). Server is CentOS 7, mongod is 3.2.6. Client is OS X with 
PHP 5.6.10. My mongod.conf has the following:

net:
  ssl:
    mode: requireSSL
    PEMKeyFile: /data/ssl/mongodb.pem
    allowConnectionsWithoutCertificates: true

I verified my connection was working without SSL and verified I can connect 
from the console on the server. My PHP connection looks like this:

$mongo = new MongoDB\Driver\Manager("mongodb://" . $mongo_user . ":" . $mongo_pass . "@" . $mongoHost . "/" . $mongo_db, array(
            'ssl' => true,
            'sslAllowInvalidCertificates' => true,
            'host' => $mongoHost
        )
);

You probably want to use the following option:

$opts = array(
    "ssl" => array(
        "peer_name" => "<your certificate's server name>",
        "verify_peer" => false,
        "verify_peer_name" => false,
        "allow_self_signed" => true,
    )
);

$context = stream_context_create($opts);

$manager = new MongoDB\Driver\Manager($dsn, array(), array("context" => $context));

The SSL "context" options need be set differently in the PHP driver as 
is shown above.

cheers,
Derick

-- 
{
  website: [ "http://mongodb.org", "http://derickrethans.nl" ;],
  twitter: [ "@derickr", "@mongodb" ]
}

-- 
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/alpine.DEB.2.20.1605062249260.3295%40whisky.home.derickrethans.nl.
For more options, visit https://groups.google.com/d/optout.

Why ads?