Bonjour à la communauté,
Je teste actuellement l'offre MongoDB en bêta sur Public Cloud.
Via MongoCompass ou Mongo Shell, aucun problème pour se connecter à la base de données.
En revanche, via MongoDB Driver, j'obtiens l'erreur suivante :
`Exception:No suitable servers found (`serverSelectionTryOnce` set)`
D'après ce post GitHub (https://github.com/mongodb/mongo-php-driver/issues/484#issuecomment-266119413), il s'agirait d'un paramétrage SELinux.
Comment pourrais-je réaliser ce paramétrage ou accéder autrement à la base via Mongo Driver ?
Bonne journée,
Ok, pour régler le problème, il faut bien spécifier `/admin?tls=true` à la fin de la connexion déclarée.
Ex :
`$mng = new MongoDB\Driver\Manager("mongodb://:@.database.cloud.ovh.net/admin?tls=true");`
Bon, finalement, ce complément ne fonctionne qu'en local. Une fois en production (sur une offre Cloud Web OVH), j'obtiens à nouveau la même erreur.
J'ai résolu le problème, après d'âpres recherches.
Dans Public Cloud > Databases > Votre DB > IPs autorisées, vous pouvez configurer la white-list (soit la liste des adresses IP autorisées à interroger la base de données).
Si vous entrez votre adresse IP, vous n'aurez aucun problème pour vous connecter en local. Cependant, depuis un serveur mutualisé, vous ne pouvez pas déclarer l'IP de sortie utilisée par OVH (vous ne connaissez que l'IP d'entrée). Donc deux solutions possibles :
- Passer sur un serveur dédié avec IP connue
- Autoriser toutes les adresses IP à se connecter à votre base Mongo avec les deux masques suivant : 0.0.0.0/1 et 255.255.255.255/1
Voilà !
(vous ne connaissez que l'IP d'entrée).
Faux.
C'est documenté ici https://docs.ovh.com/fr/hosting/liste-des-adresses-ip-des-clusters-et-hebergements-web/ (cherche le gateway ou passerelle de sortie)
0.0.0.0/1 et 255.255.255.255/1
Même pas peur ? c'est clairement une invitation au hack...