Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Puedes asegurar la puerta de enlace de entrada con HTTPS si utilizas un protocolo TLS simple y habilitas las conexiones HTTPS a páginas web específicas. Además, puedes redireccionar las conexiones HTTP a HTTPS.
HTTPS crea un canal seguro en una red insegura, protege contra ataques de intermediarios y encripta el tráfico entre el cliente y el servidor. A fin de preparar un servidor web para que acepte conexiones HTTPS, un administrador debe crear un certificado de clave pública para el servidor. Este certificado debe estar firmado por una autoridad certificada de confianza para que un navegador web lo acepte sin advertencia.
Edita la puerta de enlace llamada external-gateway en el espacio de nombres kf con el editor de Kubernetes integrado:
kubectl edit gateway -n kf external-gateway
Suponiendo que tienes un certificado y una clave para tu servicio, crea un secreto de Kubernetes para la puerta de enlace de entrada. Asegúrate de que el nombre del secreto no comience con istio ni prometheus. En este ejemplo, el secreto se llama myapp-https-credential.
En servers:
Agrega una sección para el puerto 443.
En tls:, configura credentialName como el nombre del secreto que acabas de crear.
En hosts:, agrega el nombre de host del servicio que quieres proteger con HTTPS. Se puede establecer en un dominio completo mediante un comodín (p. ej., *.example.com) o con un solo nombre de host (p. ej., myapp.example.com).
Ya debería haber una sección en servers: para el puerto 80 de HTTP. Mantén esta sección en la definición de la puerta de enlace si deseas que todo el tráfico ingrese como HTTP.
Para redireccionar HTTP a HTTPS, agrega el valor httpsRedirect: true en tls en la sección del servidor HTTP. Consulta la documentación de la puerta de enlace de Istio para obtener información de referencia. Ten en cuenta que agregar esto en la sección donde hosts se configura como *, implica que todo el tráfico se redirecciona a HTTPS. Si solo deseas redireccionar HTTP a HTTPS para una sola aplicación o un solo dominio, agrega una sección HTTP separada que especifique el redireccionamiento.
A continuación, se muestra un ejemplo de un spec de puerta de enlace que configura HTTPS para myapp.example.com y redirecciona HTTP a HTTPS para ese host:
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-04 (UTC)"],[],[],null,["# Set up HTTPS ingress\n\nYou can secure the ingress gateway with HTTPS by using simple TLS, and enable HTTPS connections to specific webpages. In addition, you can redirect HTTP connections to HTTPS.\n\nHTTPS creates a secure channel over an insecure network, protecting against man-in-the-middle attacks and encrypting traffic between the client and server. To prepare a web server to accept HTTPS connections, an administrator must create a public key certificate for the server. This certificate must be signed by a trusted certificate authority for a web browser to accept it without warning.\n| **Note:** These instructions supplement the Istio instructions to [configure a TLS ingress gateway](https://istio.io/latest/docs/tasks/traffic-management/ingress/secure-ingress), and assume that a valid certificate and private key for the server have already been created.\n\nEdit the gateway named external-gateway in the `kf` namespace using the built-in Kubernetes editor: \n\n```\nkubectl edit gateway -n kf external-gateway\n```\n\n1. Assuming you have a certificate and key for your service, create a Kubernetes secret for the ingress gateway. Make sure the secret name does not begin with `istio` or `prometheus`. For this example, the secret is named `myapp-https-credential`.\n2. Under `servers:`\n 1. Add a section for port 443.\n 2. Under `tls:`, set the `credentialName` to the name of the secret you just created.\n 3. Under `hosts:`, add the host name of the service you want to secure with HTTPS. This can be set to an entire domain using a wildcard (e.g. `*.example.com`) or scoped to just one hostname (e.g. `myapp.example.com`).\n3. There should already be a section under `servers:` for port 80 HTTP. Keep this section in the Gateway definition if you would like all traffic to come in as HTTP.\n4. To redirect HTTP to HTTPS, add the value `httpsRedirect: true` under `tls` in the HTTP server section. See the [Istio Gateway documentation](https://istio.io/latest/docs/reference/config/networking/gateway/) for reference. Note that adding this in the section where `hosts` is set to `*` means that **all** traffic is redirected to HTTPS. If you only want to redirect HTTP to HTTPS for a single app/domain, add a separate HTTP section specifying the redirect.\n\nShown below is an example of a Gateway `spec` that sets up HTTPS for `myapp.example.com` and redirects HTTP to HTTPS for that host: \n\n spec:\n selector:\n istio: ingressgateway\n servers:\n - hosts:\n - myapp.example.com\n port:\n name: https\n number: 443\n protocol: HTTPS\n tls:\n credentialName: myapp-https-credential\n mode: SIMPLE\n - hosts:\n - myapp.example.com\n port:\n name: http-my-app\n number: 80\n protocol: HTTP\n tls:\n httpsRedirect: true\n - hosts:\n - '*'\n port:\n name: http\n number: 80\n protocol: HTTP"]]