De forma predeterminada, puedes acceder a la IU de Edge a través de HTTP mediante la dirección IP del nodo del servidor de administración y el puerto 9000. Por ejemplo:
http://ms_IP:9000
Como alternativa, puedes configurar el acceso a TLS a la IU de Edge para poder acceder a ella de la siguiente manera:
https://ms_IP:9443
En este ejemplo, configuras el acceso a TLS para usar el puerto 9443. Sin embargo, Edge no requiere ese número de puerto. Puedes configurar el servidor de administración para que use otros valores de puerto. El único requisito es que el firewall permita el tráfico a través del puerto especificado.
Asegúrate de que el puerto TLS esté abierto
El procedimiento de esta sección configura TLS para que use el puerto 9443 en el servidor de administración. Independientemente del puerto que uses, debes asegurarte de que esté abierto en el servidor de administración. Por ejemplo, puedes usar el siguiente comando para abrirlo:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9443 -j ACCEPT --verbose
Configura TLS
Usa el siguiente procedimiento para configurar el acceso TLS a la IU de administración:
- Genera el archivo JKS del almacén de claves que contiene tu certificación TLS y clave privada, y cópialo en el nodo del servidor de administración. Si deseas obtener más información, consulta Configura TLS/SSL para Edge On-Local.
- Ejecuta el siguiente comando para configurar TLS:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl
- Ingresa el número de puerto HTTPS, por ejemplo, 9443.
- Especifica si quieres inhabilitar el acceso HTTP a la IU de administración. De forma predeterminada, se puede acceder a la IU de administración a través de HTTP en el puerto 9000.
- Ingresa el algoritmo del almacén de claves. El valor predeterminado es JKS.
- Ingresa la ruta de acceso absoluta al archivo JKS del almacén de claves.
La secuencia de comandos copia el archivo en el directorio
/opt/apigee/customer/conf
del nodo del servidor de administración y cambia la propiedad del archivo a "apigee". - Ingresa la contraseña del almacén de claves en texto no encriptado.
- Luego, la secuencia de comandos reinicia la IU de administración de Edge. Después del reinicio, la IU de administración admite el acceso a través de TLS.
Puedes ver esta configuración en
/opt/apigee/etc/edge-ui.d/SSL.sh
.
Usa un archivo de configuración para configurar TLS
Como alternativa al procedimiento anterior, puedes pasar un archivo de configuración al comando en el paso 2 del procedimiento. Deberás usar este método si quieres configurar propiedades TLS opcionales.
Para usar un archivo de configuración, crea un archivo nuevo y agrega las siguientes propiedades:
HTTPSPORT=9443 DISABLE_HTTP=y # Set type to PKCS12 if you are using a PKCS12 keystore KEY_ALGO=JKS KEY_FILE_PATH=/opt/apigee/customer/application/mykeystore.jks KEY_PASS=clearTextKeystorePWord
Guarda el archivo en un directorio local con el nombre que quieras. Luego, usa el siguiente comando para configurar TLS:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
En el comando anterior, configFile es la ruta de acceso completa al archivo que guardaste.
Cómo usar un almacén de claves PKCS12 para sistemas operativos habilitados con FIPS
Si usas Edge para una nube privada en un sistema operativo compatible con FIPS, debes usar un almacén de claves PKCS12. Puedes generar un almacén de claves PKCS12 con comandos estándar de OpenSSL. Cuando uses un almacén de claves PKCS12, establece KEY_ALGO=PKCS12
en el archivo de configuración.
Configurar la IU de Edge cuando TLS finalice en el balanceador de cargas
Si tienes un balanceador de cargas que reenvía solicitudes a la IU de Edge, puedes finalizar la conexión TLS en el balanceador de cargas y, luego, hacer que el balanceador de cargas reenvíe las solicitudes a la IU de Edge a través de HTTP. Esta configuración es compatible, pero debes configurar el balanceador de cargas y la IU de Edge según corresponda.
La configuración adicional es obligatoria cuando la IU de Edge envía correos electrónicos a los usuarios para que establezcan su contraseña cuando se crea el usuario o cuando este solicita restablecer una contraseña perdida. Este correo electrónico contiene una URL que el usuario selecciona para establecer o restablecer una contraseña. De forma predeterminada, si la IU de Edge no está configurada para usar TLS, la URL del correo electrónico generado usa el protocolo HTTP, no HTTPS. Debes configurar el balanceador de cargas y la IU de Edge para que generen una dirección de correo electrónico que use HTTPS.
Para configurar el balanceador de cargas, asegúrate de que establece el siguiente encabezado en las solicitudes que se reenvían a la IU de Edge:
X-Forwarded-Proto: https
Para configurar la IU de Edge, haz lo siguiente:
- Abre el archivo
/opt/apigee/customer/application/ui.properties
en un editor. Si no existe el archivo, créalo:vi /opt/apigee/customer/application/ui.properties
- Configura la siguiente propiedad en
ui.properties
:conf/application.conf+trustxforwarded=true
- Guarda los cambios en
ui.properties
. - Reinicia la IU de Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Cómo configurar propiedades TLS opcionales
La IU de Edge admite propiedades de configuración de TLS opcionales que puedes usar para establecer lo siguiente:
- Protocolo TLS predeterminado
- Lista de protocolos TLS compatibles
- Algoritmos de TLS compatibles
- Algoritmos de cifrado TLS admitidos
Estos parámetros opcionales solo están disponibles cuando estableces la siguiente propiedad de configuración en el archivo de configuración, como se describe en Cómo usar un archivo de configuración para configurar TLS:
TLS_CONFIGURE=y
En la siguiente tabla, se describen estas propiedades:
Propiedad | Descripción |
---|---|
TLS_PROTOCOL
|
Define el protocolo TLS predeterminado para la IU de Edge. De forma predeterminada, es TLS 1.2. Los valores válidos son TLSv1.2, TLSv1.1 y TLSv1. |
TLS_ENABLED_PROTOCOL
|
Define la lista de protocolos habilitados como un array separado por comas. Por ejemplo: TLS_ENABLED_PROTOCOL=[\"TLSv1.2\", \"TLSv1.1\", \"TLSv1\"] Observa que se debe escapar el carácter ".
De forma predeterminada, todos los protocolos están habilitados. |
TLS_DISABLED_ALGO
|
Define los conjuntos de algoritmos de cifrado inhabilitados y también se puede usar para evitar que se usen tamaños de claves pequeños para el protocolo de enlace TLS. No hay un valor predeterminado. Los valores que se pasan a
TLS_DISABLED_ALGO=EC\ keySize\ <\ 160,RSA\ keySize\ <\ 2048 |
TLS_ENABLED_CIPHERS
|
Define la lista de cifrados de TLS disponibles como un array separado por comas. Por ejemplo: TLS_ENABLED_CIPHERS=[\"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\", \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"] Observa que se debe escapar el carácter ".
La lista predeterminada de algoritmos de cifrado habilitados es la siguiente: "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", "TLS_RSA_WITH_AES_256_CBC_SHA", "TLS_RSA_WITH_AES_128_CBC_SHA", "SSL_RSA_WITH_RC4_128_SHA", "SSL_RSA_WITH_RC4_128_MD5", "TLS_EMPTY_RENEGOTIATION_INFO_SCSV" Encuentra la lista de algoritmos de cifrado disponibles aquí. |
Inhabilita los protocolos TLS
Para inhabilitar los protocolos TLS, debes editar el archivo de configuración, que se describe en Cómo usar un archivo de configuración para configurar TLS, de la siguiente manera:
- Abre el archivo de configuración en un editor.
- Para inhabilitar un solo protocolo TLS, por ejemplo, TLSv1.0, agrega lo siguiente al archivo de configuración:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1"
Para inhabilitar varios protocolos, por ejemplo, TLSv1.0 y TLSv1.1, agrega lo siguiente al archivo de configuración:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1, tlsv1.1"
- Guarda los cambios en el archivo de configuración.
- Ejecuta el siguiente comando para configurar TLS:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
En el ejemplo anterior, configFile es la ruta de acceso completa al archivo de configuración.
- Reinicia la IU de Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Usa cookies seguras
Apigee Edge para la nube privada admite la adición de la marca secure
al encabezado Set-Cookie
para las respuestas de la IU de Edge. Si esta marca está presente, la cookie solo se puede enviar a través de canales habilitados para TLS. Si no está presente, la cookie se puede enviar a cualquier canal, sea seguro o no.
Las cookies sin la marca secure
pueden permitir que un atacante capture y
reutilice la cookie o usurpe una sesión activa. Por lo tanto, se recomienda habilitar este parámetro de configuración.
Para establecer la marca secure
para las cookies de la IU de Edge, haz lo siguiente:
- Abre el siguiente archivo en un editor de texto:
/opt/apigee/customer/application/ui.properties
Si el archivo no existe, créalo.
- Establece la propiedad
conf_application_session.secure
entrue
en el archivoui.properties
, como se muestra en el siguiente ejemplo:conf_application_session.secure=true
- Guarda los cambios.
- Reinicia la IU de Edge con la utilidad
apigee-serice
, como se muestra en el siguiente ejemplo:/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Para confirmar que el cambio funciona, verifica los encabezados de respuesta de la IU de Edge con una utilidad como curl
; por ejemplo:
curl -i -v https://edge_UI_URL
El encabezado debe contener una línea que se vea de la siguiente manera:
Set-Cookie: secure; ...
Inhabilita TLS en la IU de Edge
Para inhabilitar TLS en la IU de Edge, usa el siguiente comando:
/opt/apigee/apigee-service/bin/apigee-service edge-ui disable-ssl