FIPS etkin RHEL 8.X veya Rocky 8.X üzerinde Private Cloud için Edge

Bu bölümde, RHEL 8'de FIPS modunun etkinleştirilmesiyle ilgili yönergeler verilmektedir. Bu sayede, Private Cloud için Edge'in 4.53.00 veya daha yeni sürümlerinde güvenli ve uyumlu bir ortam sağlanır.

Önceden yükleme

Edge Installation Overview (Edge Kurulumuna Genel Bakış) dokümanında listelenen diğer standart yapılandırma ön koşullarıyla birlikte düğümlerinizde FIPS'nin etkinleştirildiğinden emin olun.

fips-mode-setup --check  
FIPS mode is enabled.  # Command output

FIPS modu şu anda devre dışıysa nasıl etkinleştireceğinizle ilgili talimatlar için resmi Red Hat belgelerine bakın: RHEL 8'i FIPS moduna geçirme.

Java gereksinimleri

Kullandığınız Java'nın, güvenlik modüllerinin FIPS uyumlu olmasını sağlamak için Red Hat'in deposundan indirilmesi gerekir. Bu sayede, Java güvenliği aracılığıyla FIPS'e özgü kısıtlamalar etkinleştirilir.

Kurulum

Edge Yapılandırma Dosyası Referansı'nda her düğümde FIPS_OS=true değerini ayarlayın. Edge for Private Cloud'un genel yükleme adımlarını her zamanki gibi uygulayabilirsiniz.

Özel anahtar biçimi

API proxy'lerinizde veya sanal ana makinelerinizde kullanılmak üzere Apigee anahtar depolarına özel anahtarlar yüklemek için yalnızca PKCS12/PFX biçimi kullanılabilir. Dosya oluşturma konusunda yardım için Sertifikaları desteklenen biçime dönüştürme başlıklı makaleyi inceleyin.

Genel TLS işlemleri

FIPS etkin RHEL 8.X veya Rocky 8.X'te Edge for Private Cloud 4.53.00 veya sonraki sürümler kullanılırken Edge'in TLS ile ilgili bileşen yapılandırmalarının çoğu PKCS12 veya BCFKS biçimli anahtar depoları aracılığıyla yapılmalıdır.

TLS yapılandırması hakkında daha fazla bilgi edinmek için FIPS'e özel dokümanlara veya ilgili makalelerdeki notlara bakın. Ek bölümünde, bu anahtar depolarını oluşturmak için kullanılabilecek bazı faydalı komutlar listelenmiştir.

Varsayılan Java anahtar deposu/güven deposu

Edge for Private Cloud 4.53.00 veya sonraki sürümler FIPS etkin RHEL 8.X ya da Rocky 8.X üzerinde kullanıldığında ileti işlemciniz, yönetim sunucunuz ve diğer edge-* bileşenleriniz ürünle birlikte sağlanan varsayılan güven deposuna ve anahtar deposuna bağlıdır.

Bunlar, uygulamanızın varsayılan olarak güvendiği CA sertifikalarını içerir. CA sertifikaları içeren kendi mağazanızı kullanmak istiyorsanız aşağıdaki prosedürü uygulayın:

  1. Güvenmek istediğiniz tüm CA sertifikalarını içeren bir BCFKS biçimi cacerts dosyası oluşturun. Anahtar deposu şifresi ile anahtar şifresinin aynı olduğundan emin olun. Daha fazla ayrıntı için ek bölümüne bakın.
  2. Dosyayı uygun bir yola yerleştirin ve apigee kullanıcısı tarafından okunabildiğinden emin olun:
    cp my-cacerts.bcfks /opt/apigee/customer/application/my-cacerts.bcfks
    chown apigee:apigee /opt/apigee/customer/application/my-cacerts.bcfks
  3. Çalıştığınız bileşene göre uygun yapılandırma dosyasını oluşturun (veya düzenleyin):
    Bileşen Dosya
    edge-management-server $/opt/apigee/customer/application/management-server.properties
    edge-message-processor $/opt/apigee/customer/application/message-processor.properties
    edge-router $/opt/apigee/customer/application/router.properties
    edge-postgres-server $/opt/apigee/customer/application/postgres-server.properties
    edge-qpid-server $/opt/apigee/customer/application/qpid-server.properties
  4. Dosyaya aşağıdaki satırları ekleyin:
    conf_system_javax.net.ssl.trustStore=<PATH to bcfks cacerts>
    conf_system_javax.net.ssl.trustStorePassword=changeme
    conf_system_javax.net.ssl.keyStore=<PATH to bcfks cacerts>
    conf_system_javax.net.ssl.keyStoreType=BCFKS
    conf_system_javax.net.ssl.keyStorePassword=changeme
  5. Yapılandırma dosyasının apigee kullanıcısına ait olduğundan ve bu kullanıcı tarafından okunabildiğinden emin olun:
    chown apigee:apigee $opt/apigee/customer/application/<file>.properties
  6. Bileşeni yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service <component> restart

Ek

BCFKS anahtar deposu işlemi örnek komutları

Aşağıdaki komut, kendinden imzalı anahtar ve sertifika çifti içeren bir BCFKS anahtar deposu oluşturur:

keytool -genkeypair -keyalg RSA -alias node0 -validity 365 -keystore keystore.node0 \
-storepass keypass -keypass keypass -v \
-dname "EMAILADDRESS=youremail@domain.com, CN=yourcn, OU=yourou, O=youro, L=yourl, C=yourc" \
-storetype BCFKS -providerpath /opt/apigee/edge-gateway/lib/thirdparty/bc-fips-1.0.2.4.jar \
-providerclass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providername BCFIPS

Keytool komutları genellikle kullanılanlarla tutarlı olmaya devam eder ancak keytool komutuna aşağıdaki seçenekler eklenmelidir:

--storetype BCFKS -providerpath /opt/apigee/edge-gateway/lib/thirdparty/bc-fips-1.0.2.4.jar
-providerclass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider 
-providername BCFIPS

Keytool Bağımsız Değişkenleri

Keytool Bağımsız Değişkeni Açıklama
-storetype Mağaza türünü BCFKS olarak ayarlayın.
-providerpath bc-fips-XXXX.jar dosyasının yolunu belirtin. Bu sürüm, gelecekteki OPDK sürümlerinde değişebilir. Apigee tarafından gönderilen sürümü kullanın veya Bouncycastle'ın depolarından indirin. OPDK 4.53 için yol /opt/apigee/edge-gateway/lib/thirdparty/bc-fips-1.0.2.4.jar olmalıdır.
-providerclass Bunu org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider olarak ayarlayın.
-providername Bunu BCFIPS olarak ayarlayın.

BCFKS biçimindeki bir anahtar deposundan veya anahtar deposuna sertifika ve/veya anahtar içe ya da dışa aktarmak için benzer keytool komutları kullanılabilir. BCFKS ile çalışma hakkında daha fazla bilgi için BouncyCastle belgelerini inceleyin.

PKCS12 Store

PKCS12 deposu oluşturmak için openssl komutları kullanılabilir:

# Generate a self-signed private key and certificate
openssl req -x509 -newkey rsa:2048 -keyout private.key -out certificate.pem -sha256 -days 36500 -nodes -subj "/C=yourc/ST=yourst/L=yourl/O=youro/OU=yourou/CN=cn/emailAddress=email"
# Package the above generated key and cert into a PKCS12
openssl pkcs12 -export -clcerts -in certificate.pem -inkey private.key -out keystore.pfx -name myalias

Kendi özel anahtarınız ve sertifikanız varsa ve bunları PKCS12 biçimine dönüştürmeniz gerekiyorsa Sertifikaları desteklenen biçime dönüştürme başlıklı makaleyi inceleyin.