Tworzenie loadbalancera SSL Copy

Tworzenie loadbalancera TERMINATED_HTTPS

W usłudze Atman Cloud istnieje możliwość terminacji loadbalancera SSL, którego zasada działania została zaprezentowana na rysunku poniżej.

Proces tworzenia takiego loadbalancera składa się z dwóch faz:

  1. Utworzenie kontenera kluczy, który będzie przechowywał certyfikat oraz klucz prywatny
  2. Utworzenie TERMINATED_HTTPS loadbalancera i przypisanie do niego wcześniej utworzonego kontenera kluczy

1. Tworzenie kontenera kluczy

Utworzenie kontenera kluczy jest możliwe jedynie z poziomu CLI. Nasz użytkownik musi posiadać uprawnienia do tworzenia kluczy(jeżeli nasz użytkownik nie posiada takich uprawnień, należy skontaktować się z opiekunem handlowym). Dodatkowo, musimy posiadać CLI do usługi barbican przystosowanego do obsługi pythona w wersji 3: https://pkgs.org/download/python3-barbicanclient

TLS: certyfikat, klucz oraz łańcuch certyfikatów pośredniczących(intermediate certificate chain) muszą spełniać poniższe założenia:

  • powinny być otrzymane z zewnętrznego CA(Certificate Authority)
  • Klucz oraz certyfikat muszą być zakodowane za pomocą PEM, a łańcuch certyfikatów pośredniczących(intermediate certificate chain) musi być konkatenacją wszystkich certyfikatów pośredniczących, zakodowanych za pomocą PEM
  • Klucz nie może być zahasłowany

Z tak przygotowanymi certyfikatami i kluczem(na potrzeby przykładów nazwijmy certyfikat server.crt, a klucz server.key) tworzymy dwa klucze:

barbican secret store --payload-content-type='text/plain' --name='certificate_terminated_https' --payload="$(cat /ścieżka/do/server.crt)"
barbican secret store --payload-content-type='text/plain' --name='key_terminated_https' --payload="$(cat /ścieżka/do/server.key)"

A na samym końcu tworzymy z nich kontener kluczy:

barbican secret container create --name='tls_container_terminated_https' --type='certificate' --secret="certificate=$(barbican secret list -s opaque | awk '/ certificate_terminated_https / {print $2}')" --secret="private_key=$(barbican secret list -s opaque | awk '/ key_terminated_https / {print $2}')"

2. Tworzenie loadbalancera

Tworzenie loadbalancera odbywa się tak samo jak dotychczas. Jedyną różnicą jest wybór typu listenera. Należy wybrać opcję TERMINATED_HTTPS:

Po wypełnieniu wszystkich pożądanych ustawień, należy wybrać uprzednio stworzony certyfikat SSL:

I utworzyć loadbalancer za pomocą przycisku „Create Load Balancer”