Note:
- Este tutorial requiere acceso a Oracle Cloud. Para registrarse para obtener una cuenta gratuita, consulte Introducción a la cuenta gratuita de Oracle Cloud Infrastructure.
- Utiliza valores de ejemplo para credenciales, arrendamiento y compartimentos de Oracle Cloud Infrastructure. Al finalizar la práctica, sustituya estos valores por otros específicos de su entorno en la nube.
Creación y configuración del enrutamiento de paquetes de confianza cero de Oracle Cloud Infrastructure
Introducción
El enrutamiento de paquetes de confianza cero de Oracle Cloud Infrastructure (OCI) evita el acceso no autorizado a los datos mediante la gestión de políticas de seguridad de red independientes de la arquitectura de red subyacente. Mediante un lenguaje de políticas fácil de entender y basado en intenciones, los administradores de seguridad pueden definir rutas de acceso específicas para los datos. El tráfico que no está permitido explícitamente por la política no puede recorrer la red, mejorando la seguridad y simplificando el trabajo de los equipos de seguridad, red y auditoría.
En el siguiente tutorial se proporcionan detalles sobre cómo configurar OCI Zero Trust Packet Routing para aplicar controles de seguridad para controlar la comunicación en toda la red dentro de un arrendamiento de Oracle Cloud Infrastructure (OCI). Para este tutorial, se ha desplegado la siguiente arquitectura.
En esta arquitectura, se han configurado los siguientes recursos:
-
financeprod
es una instancia de Oracle Autonomous Database, configurada como base de datos de producción, alojada en una red privada, a la que se puede acceder desde la subred privada a través de un punto final privado. -
client-prod
es una instancia informática que simula una aplicación empresarial en el entorno de producción. Para este escenario, se trata de una instancia de Oracle Linux que ejecuta Oracle Instant Client. -
client-dev
es una instancia informática que simula una aplicación empresarial en el entorno de desarrollo. Al igual que con client-prod, se trata de una instancia de Oracle Linux que ejecuta Oracle Instant Client.
Además, se ha configurado una VCN independiente (so-vcn-pt
) para este caso de uso, que incluye:
-
subnet-public
es la subred pública que contiene las instancias informáticas. -
subnet-private
es la subred privada que contiene la base de datos. -
sl-allow-public
es una lista de seguridad que permite el acceso SSH desde Internet. También se ha configurado una regla de salida para permitir el tráfico saliente. Se asigna asubnet-public
. -
sl-allow-private
es una lista de seguridad que permite el tráfico de Oracle Instant Client (puerto1522
) desdesubnet-public
. También se ha configurado una regla de salida para permitir el tráfico saliente. Esta lista de seguridad se asigna asubnet-private
. -
route-public
es la tabla de rutas para enrutar todo el tráfico al gateway de internet. Se asigna asubnet-public
. -
route-private
es la tabla de rutas para enrutar todo el tráfico al gateway de NAT. Se asigna asubnet-private
. -
gw-internet
es el gateway de Internet utilizado enroute-public
. -
gw-nat
es el gateway de NAT utilizado enroute-private
.
Objetivos
-
Configure nuevos atributos de seguridad para OCI Zero Trust Packet Routing.
-
Cree políticas de enrutamiento de paquetes de confianza cero de OCI para controlar el flujo de tráfico de red.
-
Asigne atributos de seguridad de enrutamiento de paquetes OCI Zero Trust a los recursos.
-
Pruebe las políticas de enrutamiento de paquetes OCI Zero Trust.
Requisitos
-
Una suscripción de pago para el arrendamiento de OCI con los permisos adecuados para gestionar los recursos de enrutamiento de paquetes de confianza cero de OCI.
-
La estructura de red como se define en la arquitectura.
-
Dos instancias informáticas según la arquitectura, desplegadas en la subred pública.
-
Instalar y configurar Oracle Instant Client (incluido el cliente SQL*Plus) en ambas instancias informáticas.
Nota: Descargue e instale Oracle Instant Client desde aquí: Instalación de Oracle Instant Client mediante RPM.
-
Cree una instancia de Oracle Autonomous Database según la arquitectura y despliéguela con un punto final privado en la subred privada.
-
Configure el acceso a la base de datos desde Oracle Instant Client en ambas instancias informáticas.
Tarea 1: Confirmación del acceso a la base de datos desde clientes
En esta tarea, confirmaremos que ambas instancias informáticas pueden acceder a la base de datos a través de Oracle Instant Client.
-
Conéctese a la instancia informática client-prod mediante SSH como usuario
opc
. -
Ejecute el comando
sqlplus
para conectarse a la base de datos autónoma.De acuerdo con los requisitos previos, se debe instalar y configurar Oracle Instant Client. A continuación, se muestra un resumen de los pasos de configuración:
-
Descargue e instale Oracle Instant Client.
-
Configure Oracle Instant Client.
-
Descargue la cartera de conexión de su base de datos autónoma desde OCI.
-
Extraiga la cartera en una carpeta.
-
Configure el archivo
sqlnet.ora
en la carpeta de cartera para que apunte a la ubicación de la cartera. -
Exporte la variable
TNS_ADMIN
para que apunte a la ubicación de cartera extraída. Por ejemplo,export TNS_ADMIN=/opt/wallet
. -
Ejecute el comando
sqlplus
, por ejemplo,sqlplus admin@financeprod_low
, e introduzca la contraseña cuando se le solicite.
Si Oracle Instant Client funciona correctamente y se han cumplido todos los requisitos, debe conectarse correctamente a la base de datos y poder ejecutar comandos. Ejecute el comando
show user;
para ver los usuarios. -
-
Repita la prueba de conexión a la base de datos desde client-dev.
Si Oracle Instant Client funciona correctamente y se han cumplido todos los requisitos, debe conectarse correctamente a la base de datos y poder ejecutar comandos. Ejecute el comando
show user;
para ver los usuarios.
Tarea 2: Activación del enrutamiento de paquetes de confianza cero de OCI
Si es la primera vez que utiliza el enrutamiento de paquetes OCI Zero Trust dentro de su arrendamiento, deberá estar activado.
-
Conéctese a la consola de OCI como usuario con los permisos adecuados para gestionar los recursos de enrutamiento de paquetes OCI Zero Trust y los demás recursos utilizados en este tutorial.
-
Vaya a Identity and Security y haga clic en Zero Trust Packet Routing.
-
Haga clic en Activar ZPR, el botón aparecerá atenuado y se podrá acceder a los menús de enrutamiento de paquetes OCI Zero Trust.
Tarea 3: Configuración de los atributos de seguridad de enrutamiento de paquetes OCI Zero Trust
Para configurar el enrutamiento de paquetes de OCI Zero Trust, necesitamos configurar los atributos de seguridad que se utilizarán en las políticas de enrutamiento de paquetes de OCI Zero Trust.
En esta tarea, crearemos tres nuevos atributos de seguridad que representen la red, las bases de datos y las aplicaciones. Crearemos valores predefinidos para estos atributos de seguridad.
-
Vaya a Zero Trust Packet Routing y haga clic en Security Attribute Namespace.
-
En Ámbito de lista, seleccione el compartimento
root
. Se nos presentará el espacio de nombres predefinidooracle-zpr
. -
Haga clic en
oracle-zpr
, verá el atributo de seguridadsensitivity
predefinido. No utilizaremos el atributo en este tutorial. -
Seleccione Crear atributo de seguridad para crear un nuevo atributo de seguridad.
-
En Crear atributo de seguridad, introduzca la siguiente información.
- Nombre: introduzca
app
. - Description: introduzca
Security attribute representing applications
. - Tipo de valor de atributo de seguridad: seleccione Una lista de valores.
- Valores: introduzca
prod
ydev
(en líneas independientes).
- Nombre: introduzca
-
Haga clic en Crear para crear el nuevo atributo.
-
Repita los pasos 5 y 6 para crear dos atributos de seguridad más.
-
Cree un atributo de seguridad para las bases de datos con la siguiente información:
- Nombre: introduzca
db
. - Description: introduzca
Security attribute representing databases
. - Tipo de valor de atributo de seguridad: seleccione Una lista de valores.
- Valores: introduzca
prod
ydev
(en líneas independientes).
- Nombre: introduzca
-
Cree un atributo de seguridad para redes con la siguiente información:
- Nombre: introduzca
network
. - Description: introduzca
Security attribute representing networks
. - Tipo de valor de atributo de seguridad: seleccione Una lista de valores.
- Valores: introduzca
prod
ydev
(en líneas independientes).
- Nombre: introduzca
Una vez completado, debería ver la lista de atributos de seguridad, incluido el atributo predefinido
sensitivity
. -
Tarea 4: Creación de políticas de enrutamiento de paquetes de confianza cero de OCI
Hemos definido los atributos de seguridad, ahora necesitamos crear las políticas para controlar el flujo de información a través de la red.
Para este caso de uso, necesitamos una política que permita a la aplicación de producción comunicarse con la base de datos de producción. En esta tarea, configuraremos la política de enrutamiento de paquetes OCI Zero Trust para lograrlo.
-
Vaya a la consola de OCI, vaya a Identity and Security, Zero Trust Packet Routing y haga clic en Policies.
-
Haga clic en Crear política para crear una nueva política de enrutamiento de paquetes de OCI Zero Trust.
-
Introduzca la siguiente información y haga clic en Agregar Sentencias de Política para agregar una sentencia de política a la política.
- Nombre: introduzca
prod_policy
. - Description: introduzca
Policy to allow production clients in the production network to access production databases
.
- Nombre: introduzca
-
Examine las tres opciones para crear sentencias de política, seleccione Creador de políticas manual, introduzca la siguiente sentencia de política y haga clic en Agregar para guardar la sentencia de política.
- Sentencias de política: introduzca
in network:prod VCN allow app:prod endpoints to connect to db:prod endpoints with protocol = 'tcp/1522'
.
Nota: La sentencia de política es fácil de entender, incluso sin una explicación. Sin embargo, para mayor claridad, le está indicando a OCI Zero Trust Packet Routing que desea que cualquier recurso que tenga el atributo de seguridad
app:prod
asignado, pueda comunicarse con cualquier recurso que tenga el atributo de seguridaddb:prod
asignado, dentro de la VCNnetwork:prod
a través del protocolo TCP 1522.La política finalizada debe ser similar a:
- Sentencias de política: introduzca
-
Haga clic en Crear política para completar la creación de
prod_policy
.Nota: Una vez que asigne atributos de seguridad a sus recursos, se aplicará la política de enrutamiento de paquetes de confianza cero de OCI y solo se permitirá el tránsito de la red al tráfico que coincida con una política de enrutamiento de paquetes de confianza cero de OCI. Dado que asignará atributos de seguridad a sus dos instancias informáticas, perderá el acceso SSH a esas instancias informáticas, ya que no hay ninguna política de enrutamiento de paquetes de confianza cero de OCI para permitir el acceso SSH a sus clientes. Por lo tanto, debe corregir esto mediante la creación de dos políticas adicionales.
-
Repita los pasos del 2 al 5 para crear dos políticas adicionales de enrutamiento de paquetes OCI Zero Trust, para permitirle conectarse a sus instancias informáticas a través de SSH.
-
Política para permitir el acceso SSH a client-prod:
- Nombre: introduzca
prod_client_access_policy
. - Description: introduzca
Policy to allow SSH access to the production clients in the production network
. - Sentencias de política: introduzca
in network:prod VCN allow 'x.x.x.x/32' to connect to app:prod endpoints with protocol='tcp/22'
.
- Nombre: introduzca
-
Política para permitir el acceso SSH a client-dev:
- Nombre: introduzca
dev_client_access_policy
. - Description: introduzca
Policy to allow dev clients in the production network to access production databases
. - Sentencias de política: introduzca
in network:prod VCN allow 'x.x.x.x/32' to connect to app:dev endpoints with protocol='tcp/22'
.
Nota:
-
Sustituya
x.x.x.x
por su dirección IP. -
En un escenario de producción, el acceso a los clientes normalmente se realizará a través de un host de OCI Bastion. Sin embargo, para mantener este tutorial simple, el acceso es directo. Por lo tanto, se debe incluir la dirección IP externa del equipo de origen que se conecta a los clientes mediante SSH.
- Nombre: introduzca
Las políticas completadas deben tener el aspecto siguiente:
-
Tarea 5: Asignación de atributos de seguridad a los recursos
En esta tarea, para configurar OCI Zero Trust Packet Routing, asignaremos los atributos de seguridad a los recursos necesarios.
Asociaremos un atributo de seguridad db
a la base de datos, un atributo de seguridad app
a los dos clientes y un atributo de seguridad network
a la VCN.
Nota: Al asignar atributos de seguridad, se puede realizar desde las pantallas de enrutamiento de paquetes OCI Zero Trust o desde los recursos individuales. En este tutorial se mostrarán ambos métodos.
-
Asigne el atributo de seguridad a la base de datos.
-
Vaya a la consola de OCI y vaya a Oracle Database y Autonomous Database.
Nota: Asegúrese de que está en el compartimento en el que ha creado la base de datos, debería verla en la lista.
-
Seleccione la base de datos (por ejemplo,
Finance-PROD
) de la lista de bases de datos disponibles. -
Haga clic en Atributos de seguridad. Verá que está vacío actualmente sin ningún atributo de seguridad asignado.
-
Haga clic en Agregar atributos de seguridad e introduzca la siguiente información.
- Espacio de nombres: seleccione
oracle-zpr
. - Clave: seleccione
db
. - Valor: seleccione
prod
.
- Espacio de nombres: seleccione
-
Haga clic en Agregar atributos de seguridad para asignar el atributo de seguridad a la base de datos. La base de datos se actualizará y se asignará el atributo.
-
-
Asigne los atributos de seguridad a las instancias informáticas.
-
Vaya a la consola de OCI y vaya a Compute e Instances.
Nota: Asegúrese de que está en el compartimento en el que ha creado las instancias informáticas, debería ver ambas en la lista.
-
Seleccione la instancia client-prod de la lista de instancias disponibles.
-
Haga clic en Seguridad. Está vacío porque aún no se ha asignado ningún atributo de seguridad a la instancia.
-
Haga clic en Agregar atributos de seguridad e introduzca la siguiente información.
- Espacio de nombres: introduzca
oracle-zpr
. - Clave: introduzca
app
. - Valor: introduzca
prod
.
- Espacio de nombres: introduzca
-
Haga clic en Agregar atributos de seguridad para asignar el atributo de seguridad a la base de datos. La instancia informática se actualizará y se asignará el atributo.
-
Vaya a la consola de OCI y vaya a Compute e Instances.
-
Seleccione la instancia client-dev de la lista de instancias disponibles.
-
Haga clic en Seguridad.
-
Haga clic en Agregar atributos de seguridad e introduzca la siguiente información.
- Espacio de nombres: seleccione
oracle-zpr
. - Clave: seleccione
app
. - Valor: seleccione
dev
.
- Espacio de nombres: seleccione
-
Haga clic en Agregar atributos de seguridad para asignar el atributo de seguridad a la base de datos. La instancia informática se actualizará y se asignará el atributo.
-
-
Asigne los atributos de seguridad a la VCN.
-
Vaya a la consola de OCI, vaya a Networking y Virtual Cloud Networks.
Nota: Asegúrese de que se encuentra en el compartimento en el que ha creado la VCN, debería verla en la lista.
-
Seleccione la VCN so-vcn-pt de la lista de VCN disponibles.
-
Haga clic en Seguridad.
Nota: Para asignar este atributo de seguridad, lo asignará mediante el menú OCI Zero Trust Packet Routing, en lugar de hacerlo desde el recurso. Esto muestra las dos formas diferentes de asignar atributos de seguridad de enrutamiento de paquetes de confianza cero de OCI.
-
Vaya a la consola de OCI, vaya a Identity and Security, Zero Trust Packet Routing y haga clic en Protected Resources.
Verá la lista existente de recursos que se han protegido, por ejemplo, que tienen atributos de seguridad asignados.
-
Haga clic en Agregar atributo de seguridad a recursos.
-
Para filtrar la lista, seleccione el compartimento en el que ha creado la VCN y el tipo de recurso como
Vcn
. -
Seleccione la VCN (so-vcn-pt) y haga clic en Siguiente.
-
Introduzca la siguiente información.
- Espacio de nombres de atributo de seguridad: seleccione
oracle-zpr
. - Atributo de seguridad: seleccione
network
. - Valor de atributo de seguridad: seleccione
prod
.
- Espacio de nombres de atributo de seguridad: seleccione
-
Haga clic en Siguiente y revise el resumen.
-
Haga clic en Enviar y Cerrar para salir de la Solicitud de trabajo. Después de un par de minutos, la solicitud de trabajo se completará y la VCN aparecerá en los recursos protegidos. También podemos proteger la VCN para garantizar que se ha asignado el atributo de seguridad.
-
Repita los pasos del 1 al 3 para ver el atributo de seguridad asignado a la VCN.
-
Tarea 6: Prueba de la Política
Ahora, se ha completado la configuración de enrutamiento de paquetes de confianza cero de OCI, la tarea final es probar la política. En este tutorial, tenemos dos casos de prueba.
-
El primer caso de prueba es asegurarse de que client-prod aún pueda acceder a la base de datos financeprod.
-
Conéctese a la instancia informática client-prod mediante SSH como usuario
opc
.La política de enrutamiento de paquetes de confianza cero de OCI permite esta conexión desde la máquina local y, por lo tanto, la conexión SSH debe ser correcta.
-
Ejecute el comando
sqlplus
para conectarse a la base de datos autónoma.La política de enrutamiento de paquetes de confianza cero de OCI permite esta conexión desde el cliente de producción (client-prod) a la base de datos de producción (financeprod) y, por lo tanto, debe conectarse correctamente a la base de datos y poder ejecutar el comando
show user;
.
-
-
El segundo caso de prueba es asegurarse de que client-dev ya no pueda acceder a la base de datos financeprod.
-
Conéctese a la instancia informática client-dev mediante SSH como usuario
opc
.La política de enrutamiento de paquetes de confianza cero permite esta conexión desde la máquina local y, por lo tanto, la conexión SSH debe ser correcta.
-
Ejecute el comando
sqlplus
para conectarse a la base de datos autónoma.Dado que no hay ninguna política de enrutamiento de paquetes de confianza cero de OCI que permita esta conexión desde el cliente de desarrollo (client-dev) a la base de datos de producción (financeprod), la conexión se bloqueará.
-
Enlaces relacionados
Agradecimientos
- Autores: Paul Toal (CISO de campo, director sénior)
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de formación gratuita en el canal YouTube de Oracle Learning. Además, visita education.oracle.com/learning-explorer para convertirte en un Oracle Learning Explorer.
Para obtener documentación sobre el producto, visite Oracle Help Center.
Create and Configure Oracle Cloud Infrastructure Zero Trust Packet Routing
G17487-01
October 2024