Wystawienie uslugi po https w sieci wewnętrznej - problem z certyfikatem

0

Witam, w jaki sposób firmy z sieciami wewnętrznymi zdobywają zaufany certyfikat ssl/tls ?
W jaki sposób zaufany przez przeglądarki urząd certyfikacyjny weryfikuje domenę ?
Czy może robi to się w jakiś inny sposób niż w sieciach internetu ?

4

W internecie stawiasz własny serwer certyfikacyjny.
W przypadku MS integrujesz to z domeną.
https://docs.microsoft.com/pl-pl/troubleshoot/windows-server/identity/set-up-certificate-based-authentication-across-forest-without-trust

Wtedy webserwer pobiera certyfikat z takiego serwera.

0

@jurek1980: Przez własny serwer certyfikacyjny masz na myśli postawienie serwera z taką samą domeną jaką chcemy mieć w sieci wewnętrznej i na niego zgłosić się po certyfikat ?

1

W przypadku MS albo instalujesz usługę w windows serwer albo stawiasz drugi serwer z taką usługą. To jest rola serwera.
Na Linuxie nigdy nie stawiałem ale jak coś fraza 'linux cerate cert authority' dała miedsynnymi taki wynik:
https://www.google.com/amp/s/www.digitalocean.com/community/tutorials/how-to-set-up-and-configure-a-certificate-authority-ca-on-ubuntu-20-04.amp

0

Wydaje mi się, że chyba nie rozumiem Twojego rozwiązania, może sprecyzuję:
W sieci wewnętrznej stoi windows server. Wystawiam na nim aplikacje przez IIS.
Teraz nie wiem jak zdobyć certyfikat na tą domenę, skoro przeglądarka Chrome zaufa jedynie tym certyfikatom, które ma na swojej liście CA. Dodatkowo w sieci mam telefon z androidem, który też musi zaufać temu certyfikatowi (nie przez przeglądarkę).
Wydaje mi się, że jakikolwiek wytworzony certyfikat przez win serwer w sieci wew nie będzie miał zaufanego dla Chrome CA skoro te CA weryfikują domenę itd. w internecie.
Więc przyszła mi na myśl, aby utworzyć domenę w internecie o takiej samej nazwie co jest w sieci wewnętrznej, uzyskać na nią certyfikat zaufany przez Google i następnie przekopiować go do sieci wewnętrznej. Wtedy myślę, że nie powinno być żadnych problemów gdziekolwiek. Tylko no własnie, tak mi się tylko wydaje :)

1

No ale nawet jak masz telefon w intranecie to dostaje on DNS z domeny i w przeglądarka czy to na telefonie czy innym urządzeniu jest w stanie skomunikować z CA. Jak masz IIS to tam z automatu masz nawet graficzną konsolę do pobierania certyfikatu z CA.

2

Witam, w jaki sposób firmy z sieciami wewnętrznymi zdobywają zaufany certyfikat ssl/tls ?

Nie muszą. Robią swoje CA, instalują na firmowych komputerach certyfikat tego CA jako zaufany i potem mogą sobie generować certyfikaty na dowolne domeny.

0

Czyli jeśli dobrze Was rozumiem to:

  1. Tworzymy w ramach swojej sieci własny urząd certyfikacji
  2. Generujemy CSR i wysyłamy do tego wlasnego CA
  3. Instalujemy podpisany certyfikat na systemie jako zaufany.

Wtedy nawet Chrome będzie akceptował taki certyfikat ? Bo z tego co czytałem to przeglądarka nie sprawdza czy dany certyfikat jest zaufany poprzez zapytanie do tego CA, tylko sprawdza jedynie nazwę CA tego certyfikatu i jeśli jest w jej zaufanym zbiorze to akceptuje. To jeśli jest tak jak napisałem to w jaki sposób taki Chrome w sieci wewnętrznej ma nie rzucać ostrzeżenia ?

2

tylko sprawdza jedynie nazwę CA tego certyfikatu i jeśli jest w jej zaufanym zbiorze to akceptuje

No aż tak dobrze to nie ma xD Przeciez mógłbyś wygenerować swoje własne CA o Nazwie Google :D Instalując w systemie certyfikat swojego CA masz tam klucz publiczny którego używa się w celu weryfikacji prawdziwości certyfikatu wystawionego przez to CA. Nie trzeba wysyłać nigdzie żadnych requestów.

2

Z grubsza zostało to już opisane.
Kwestia wdrożenia w środowisku docelowym. Jeśli Windows i razem z usługami domenowymi to stawiasz na serwerze rolę AD CS, następnie konfigurujesz wszystko co potrzebujesz (CA, certyfikaty na poszczególne serwisy). Za pomocą GPO możesz wypchnąć certyfikaty do automatycznej instalacji na końcówkach. Jeśli Windows ma w magazynie "Główne zaufane urzędy certyfikacyjne" właściwy certyfikat to będzie akceptował bez błędów SSL ruch na serwisy SSL w sieci wewnętrznej.

0

Dzięki za odpowiedzi. Jeśli chodzi o przeglądarki to działa. Problem jest z aplikacją na Androida, zaimportowałem na urządzeniu root CA, ale aplikacja rzuca błędem

java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

W ustawieniach jest lista zaufanych urzędów. Mój zaimportowany jest w zakładce "certyfikaty użytkownika".
Gdzieś wyczytałem, że w przypadku aplikacji na androida to można zdefiniować w ustawieniach (przed buildem apki) czy może ufać certyfikatom nie z tej listy domyślnej.
Macie może jakieś pomysły jak ten przypadek rozwiązać ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1