Deci am acest replicaSet mongoDB (3.0.x) găzduit cu un furnizor de cloud numit „NodeChef”.
Din câte știu și cercetând documentația, nu am deloc acces la gazdele de bază.
Vreau să adaug o gazdă pe care o gestionez pe deplin pe cont propriu la setul de replică menționat. Am contactat deja suportul NodeChef și am cerut „setul complet de acreditări” necesar pentru această operațiune. Mi-au răspuns că ar trebui să am deja tot ce trebuie și că știu de clienți care rulează o astfel de configurație.
Acum, în mod ideal, această soluție ar funcționa pentru autentificarea X.509, dar m-aș mulțumi cu storedKey (SCRAM-SHA1), dacă este mai ușor.
Problemă în cazul X.509: Pentru tot ce știu, va trebui să am un certificat (cheie privată) care se potrivește cu certificatul de pe gazdele existente atât în O, cât și în CA de semnare. Pot descărca fișierul cheie publică pentru CA, așa că știu că acesta este LetsEncrypt. Conectarea la cluster folosind openssl s_client în loc de client mongo îmi oferă următoarele:
subiect=/CN=*.nodechef.com emitent=/C=US/O=Let's Encrypt/CN=R3
--- Nume CA de certificate de client acceptabile /O=Digital Signature Trust Co./CN=DST Root CA X3 /C=US/O=Internet Security Research Group/CN=ISRG
Root X1 /C=US/O=Let's Encrypt/CN=R3
Cred că aș putea crea o cerere de semnare pentru asta, dar nu văd cum să o semnez de către autoritatea competentă.
Problemă în cazul fișierului cheie: nu am idee de unde să obțin secretul partajat care trebuie să intre în fișierul cheie, în ciuda faptului că agentul de asistență îmi spune că am acces la toate secretele necesare.
Am adăugat noua gazdă la replicaSet conform acestei documentații: https://docs.mongodb.com/v3.0/reference/method/rs.add/
Mesajul de eroare pe care îl primesc în cazul storedKey este întotdeauna:
ACCES [conn2119] Autentificarea SCRAM-SHA-1 a eșuat pentru __system pe local de la clientul 95.179.166.84; AuthenticationFailed Autentificarea SCRAM-SHA-1 a eșuat, nepotrivire cheie stocată
rs rulează mongoDB 3.0.x.Noua gazdă rulează într-o imagine docker a mongo:3.0.x pe o instanță aws ec2.
Ar fi recunoscător pentru orice indicații.