Puncte:0

Certificatul pentru Gitlab-Server este nevalid pentru numele alternativ al subiectului

drapel it

Firma mea are un certificat pentru https://data.ddl.at, care are, printre altele, un SAN (Subject Alternative Name) pentru gitlab.ddl.at. Acest Gitlab-Server este intern, iar numele domeniului este rezolvat doar de serverul nostru DNS intern. Pentru referință, există și SAN https://sicher.ddl.at, care este public și este valid într-un browser.

Am configurat acest certificat pe Gitlab-Server și când merg la gitlab.ddl.at, certificatul este validat de browser și considerat valabil.

Problemele apar, odată ce încerc să folosesc un Gitlab-Runner. Am unul instalat și înregistrat pe o altă mașină și, după ce am avut câteva probleme la început, l-am făcut să se conecteze la instanța principală, dar joburile încă nu pot verifica submodulele, runnerul primește Verificarea certificatului de server a eșuat.

Acum, aici pentru ceea ce cred că este un simptom principal al problemei: Dacă fug openssl s_client -connect data.ddl.at:443, Eu iau:

CONECTAT(00000005)
adâncime=2 OU = GlobalSign Root CA - R3, O = GlobalSign, CN = GlobalSign
verifica returnarea:1
adâncime=1 C = BE, O = GlobalSign nv-sa, CN = GlobalSign Extended Validation CA - SHA256 - G3
verifica returnarea:1
depth=0 businessCategory = Private Organization, serialNumber = FN 374566h, jurisdictionC = AT, jurisdictionL = Wels, jurisdictionST = Oberoesterreich, C = AT, ST = Oberoesterreich, L = Ruestorf, street = Erwin Greiner-Str. 4, OU = GIS, O = DDL GmbH, CN = data.ddl.at
verifica returnarea:1
---
Lanț de certificate
 0 s:businessCategory = Private Organization, serialNumber = FN 374566h, jurisdictionC = AT, jurisdictionL = Wels, jurisdictionST = Oberoesterreich, C = AT, ST = Oberoesterreich, L = Ruestorf, street = Erwin Greiner-Str. 4, OU = GIS, O = DDL GmbH, CN = data.ddl.at
   i:C = BE, O = GlobalSign nv-sa, CN = GlobalSign Extended Validation CA - SHA256 - G3
 1 s:C = BE, O = GlobalSign nv-sa, CN = GlobalSign Extended Validation CA - SHA256 - G3
   i:OU = GlobalSign Root CA - R3, O = GlobalSign, CN = GlobalSign
---
Certificat de server
[...]

Iar la final: Verificați codul de returnare: 0 (ok)

Acum când alerg openssl s_client -connect gitlab.ddl.at:443, Eu iau:

CONECTAT(00000005)
depth=0 businessCategory = Private Organization, serialNumber = 374566h, jurisdictionC = AT, jurisdictionL = Wels, jurisdictionST = Oberoesterreich, C = AT, ST = Oberoesterreich, L = Ruestorf, street = Erwin Greiner-Stra\C3\9Fe 4, OU = GIS, O = DDL GmbH, CN = data.ddl.at
verify error:num=20:nu se poate obține certificatul de emitent local
verifica returnarea:1
depth=0 businessCategory = Private Organization, serialNumber = 374566h, jurisdictionC = AT, jurisdictionL = Wels, jurisdictionST = Oberoesterreich, C = AT, ST = Oberoesterreich, L = Ruestorf, street = Erwin Greiner-Stra\C3\9Fe 4, OU = GIS, O = DDL GmbH, CN = data.ddl.at
verify error:num=21:nu se poate verifica primul certificat
verifica returnarea:1
---
Lanț de certificate
 0 s:businessCategory = Organizație privată, serialNumber = 374566h, jurisdictionC = AT, jurisdictionL = Wels, jurisdictionST = Oberoesterreich, C = AT, ST = Oberoesterreich, L = Ruestorf, street = Erwin Greiner-Stra\C3\9Fe 4, OU = GIS, O = DDL GmbH, CN = data.ddl.at
   i:C = BE, O = GlobalSign nv-sa, CN = GlobalSign Extended Validation CA - SHA256 - G3
---
Certificat de server
[...]

Cu prima eroare fiind nu pot obține certificatul de emitent local.

Am încercat acest lucru și cu cel accesibil publicului sicher.ddl.at, cu aceeași eroare ca gitlab.ddl.at.

Certificatul pe care îl primește este pentru data.ddl.at, dar are SAN gitlab.ddl.at, nu ar trebui asta să o facă valabilă? ce fac greșit?

Puncte:0
drapel us

Se pare că serverul la gitlab.ddl.at lipsește certificatul de emitent.

Dacă clientul și serverul nu au certificatele rădăcină și intermediare adecvate, atunci puteți întâlni erori de validare.

Mă asigur întotdeauna că instalez lanțul complet pe server pentru a mă asigura că toți clienții pot obține toate certificatele din lanț.

Ai câteva opțiuni.

  1. Exportați întregul lanț de la data.ddl.at și apoi importați-l în gitlab.ddl.at.

  2. Utilizați un instrument precum OpenSSL pentru a combina lanțul într-un singur certificat, apoi instalați în gitlab.ddl.at

  3. Instalați toate certificatele din lanț la server.

drapel it
Opțiunea numărul 1 a fost soluția mea, odată ce am avut întregul lanț de certificate în fișierul CRT și am repornit serverul, eroarea a dispărut. Mulțumesc mult @AutoGnome!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.