JavaScript is required to for searching.
Omitir Vínculos de navegación
Salir de la Vista de impresión
Administración de Oracle Solaris: servicios IP     Oracle Solaris 10 1/13 Information Library (Español)
search filter icon
search icon

Información del documento

Prefacio

Parte I Introducción a la administración del sistema: servicios IP

1.  Conjunto de protocolos TCP/IP de Oracle Solaris (descripción general)

Parte II Administración de TCP/IP

2.  Planificación de la red TCP/IP (tareas)

3.  Introducción a IPv6 (descripción general)

4.  Planificación de una red IPv6 (tareas)

5.  Configuración de servicios de red TCP/IP y direcciones IPv4 (tareas)

6.  Administración de interfaces de red (tareas)

7.  Configuración de una red IPv6 (tareas)

8.  Administración de redes TCP/IP (tareas)

9.  Resolución de problemas de red (tareas)

10.  Descripción detallada de TCP/IP e IPv4 (referencia)

11.  IPv6 en profundidad (referencia)

Parte III DHCP

12.  Acerca de DHCP (descripción general)

13.  Planificación del servicio DHCP (tareas)

14.  Configuración del servicio DHCP (tareas)

15.  Administración de DHCP (tareas)

16.  Configuración y administración del cliente DHCP

17.  Solución de problemas de DHCP (referencia)

18.  Comandos y archivos DHCP (referencia)

Parte IV Seguridad IP

19.  Arquitectura de seguridad IP (descripción general)

20.  Configuración de IPsec (tareas)

21.  Arquitectura de seguridad IP (referencia)

22.  Intercambio de claves de Internet (descripción general)

23.  Configuración de IKE (tareas)

Configuración de IKE (mapa de tareas)

Configuración de IKE con claves previamente compartidas (mapa de tareas)

Configuración de IKE con claves previamente compartidas

Cómo configurar IKE con claves previamente compartidas

Cómo actualizar las claves IKE previamente compartidas

Cómo ver las claves IKE previamente compartidas

Cómo agregar una clave IKE previamente compartida para una nueva entrada de directiva en ipsecinit.conf

Verificación de que las claves IKE previamente compartidas sean idénticas

Configuración de IKE con certificados de clave pública (mapa de tareas)

Configuración de IKE con certificados de clave pública

Cómo configurar IKE con certificados de clave pública autofirmados

Cómo configurar IKE con certificados firmados por una autoridad de certificación

Cómo generar y almacenar certificados de clave pública en el hardware

Cómo administrar una lista de revocación de certificados

Configuración de IKE para sistemas portátiles (mapa de tareas)

Configuración de IKE para sistemas portátiles

Cómo configurar IKE para sistemas remotos

Configuración de IKE para buscar el hardware conectado (mapa de tareas)

Configuración de IKE para buscar el hardware conectado

Cómo configurar IKE para buscar la placa de Sun Crypto Accelerator 1000

Cómo configurar IKE para buscar la placa de Sun Crypto Accelerator 4000

Cómo configurar IKE para buscar la placa Sun Crypto Accelerator 6000

Cambio de los parámetros de transmisión de IKE (mapa de tareas)

Cambio de los parámetros de transmisión de IKE

Cómo cambiar la duración de la negociación de claves IKE de fase 1

24.  Intercambio de claves de Internet (referencia)

25.  Filtro IP en Oracle Solaris (descripción general)

26.  Filtro IP (tareas)

Parte V IPMP

27.  Introducción a IPMP (descripción general)

28.  Administración de IPMP (tareas)

Parte VI Calidad de servicio IP (IPQoS)

29.  Introducción a IPQoS (descripción general)

30.  Planificación para una red con IPQoS (tareas)

31.  Creación del archivo de configuración IPQoS (tareas)

32.  Inicio y mantenimiento de IPQoS (tareas)

33.  Uso de control de flujo y recopilación de estadísticas (tareas)

34.  IPQoS detallado (referencia)

Glosario

Índice

Configuración de IKE con certificados de clave pública

Los certificados de clave pública acaban con la necesidad de que los sistemas que se comunican compartan material de claves secreto fuera de banda. A diferencia de las claves previamente compartidas, un certificado de clave pública se puede utilizar en un equipo portátil o en un sistema cuya numeración podría cambiar.

Los certificados de clave pública también podrían guardarse en el hardware conectado. Para conocer el procedimiento, consulte Configuración de IKE para buscar el hardware conectado.

Cómo configurar IKE con certificados de clave pública autofirmados

En este procedimiento, se crea un par de certificados. La clave privada se almacena en un disco en la base de datos local de certificados y puede consultarse con el subcomando certlocal. La parte pública del certificado se almacena en la base de datos pública de certificados. Puede consultarse con el subcomando certdb. Con un sistema equivalente, puede intercambiarse la parte pública. La combinación de dos certificados se utiliza para autenticar las transmisiones IKE.

Los certificados autofirmados requieren menos carga que los certificados públicos de una autoridad de certificación, pero no se escalan fácilmente. A diferencia de los certificados emitidos por una autoridad de certificación, los certificados autofirmados deben verificarse fuera de la banda.

  1. En la consola del sistema, asuma el rol de administrador principal o conviértase en superusuario.

    El rol de administrador principal incluye el perfil de administrador principal. Para obtener información sobre cómo crear el rol y asignarlo a un usuario, consulte el Capítulo 2, Trabajo con Solaris Management Console (tareas) de Administración de Oracle Solaris: administración básica.


    Nota - El inicio de sesión remoto expone el tráfico cuya seguridad es crítica a intrusos. Aunque proteja de algún modo el inicio de sesión remoto, la seguridad del sistema se reducirá a la seguridad de la sesión remota. Utilice el comando ssh para un inicio de sesión remota seguro.


  2. Cree un certificado autofirmado en la base de datos ike.privatekeys.
    # ikecert certlocal -ks|-kc -m keysize -t keytype \
    -D dname -A altname \
    [-S validity-start-time] [-F validity-end-time] [-T token-ID]
    -ks

    Crea un certificado autofirmado.

    -kc

    Crea una solicitud de certificado. Para conocer el procedimiento, consulte Cómo configurar IKE con certificados firmados por una autoridad de certificación.

    -m keysize

    Es el tamaño de la clave. keysize puede ser 512, 1024, 2048, 3072 o 4096.

    -t keytype

    Especifica el tipo de algoritmo que utilizar. keytype puede ser rsa-sha1, rsa-md5 o dsa-sha1.

    -D dname

    Es el nombre X.509 distinguido para el tema del certificado. Nombre_d suele tener el formato siguiente: C=country (país), O=organization (organización=, OU=organizational unit (unidad organizativa), CN=common name (nombre común). Las etiquetas válidas son C, O, OU y CN.

    -A altname

    Nombre alternativo del certificado; altname tiene el formato tag=value. Las etiquetas válidas son IP, DNS, email y DN.

    -S validity-start-time

    Proporciona un tiempo de inicio de validez absoluto o relativo para el certificado.

    -F validity-end-time

    Proporciona un tiempo de fin de validez absoluto o relativo para el certificado.

    -T token-ID

    Permite al token de hardware PKCS #11 generar las claves. Los certificados se guardan en el hardware.

    1. Por ejemplo, el comando del sistema partym sería como el siguiente:
      # ikecert certlocal -ks -m 1024 -t rsa-sha1 \
      -D "C=US, O=PartyCo, OU=US-Partym, CN=Partym" \
      -A IP=192.168.13.213
      Creating software private keys.
        Writing private key to file /etc/inet/secret/ike.privatekeys/0.
      Enabling external key providers - done.
      Acquiring private keys for signing - done.
      Certificate: 
       Proceeding with the signing operation.
       Certificate generated successfully (…/publickeys/0)
      Finished successfully.
      Certificate added to database.
      -----BEGIN X509 CERTIFICATE-----
      MIICLTCCAZagAwIBAgIBATANBgkqhkiG9w0BAQQFADBNMQswCQYDVQQGEwJVUzEX
      …
      6sKTxpg4GP3GkQGcd0r1rhW/3yaWBkDwOdFCqEUyffzU
      -----END X509 CERTIFICATE-----

      Nota - Los valores de las opciones de -D y -A son arbitrarios. Los valores se utilizan para identificar el certificado únicamente. No se utilizan para identificar un sistema, como 192.168.13.213. De hecho, dado que estos valores son idiosincrásicos, debe verificar fuera de banda que el certificado correcto esté instalado en los sistemas equivalentes.


    2. El comando del sistema enigma sería como el siguiente:
      # ikecert certlocal -ks -m 1024 -t rsa-sha1 \
      -D "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax" \
      -A IP=192.168.116.16
      Creating software private keys.
        …
      Certificate added to database.
      -----BEGIN X509 CERTIFICATE-----
      MIICKDCCAZGgAwIBAgIBATANBgkqhkiG9w0BAQQFADBJMQswCQYDVQQGEwJVUzEV
      …
      jpxfLM98xyFVyLCbkr3dZ3Tvxvi732BXePKF2A==
      -----END X509 CERTIFICATE-----
  3. Guarde el certificado y envíelo al sistema remoto.

    El certificado se puede pegar en un mensaje de correo electrónico.

    La salida es una versión codificada de la parte pública del certificado. Puede pegar de manera segura este certificado en un correo electrónico. La parte receptora debe verificar fuera de banda que se haya instalado el certificado correcto, como se muestra en el Paso 5.

    1. Por ejemplo, debe enviar la parte pública del siguiente certificado partym al administrador de enigma.
      To: admin@ja.enigmaexample.com
      From: admin@us.partyexample.com
      Message: -----BEGIN X509 CERTIFICATE-----
      MIICLTCCAZagAwIBAgIBATANBgkqhkiG9w0BAQQFADBNMQswCQYDVQQGEwJVUzEX
      …
      6sKTxpg4GP3GkQGcd0r1rhW/3yaWBkDwOdFCqEUyffzU
      -----END X509 CERTIFICATE-----
    2. El administrador de enigma debe enviarle la parte pública del siguiente certificado enigma.
      To: admin@us.partyexample.com
      From: admin@ja.enigmaexample.com
      Message: -----BEGIN X509 CERTIFICATE-----
      MIICKDCCAZGgAwIBAgIBATANBgkqhkiG9w0BAQQFADBJMQswCQYDVQQGEwJVUzEV
      …
      jpxfLM98xyFVyLCbkr3dZ3Tvxvi732BXePKF2A==
      -----END X509 CERTIFICATE-----
  4. En cada sistema, agregue el certificado que reciba.
    1. Copie la clave pública del correo electrónico del administrador.
    2. Escriba el comando ikecert certdb -a y pulse la tecla Intro.

      Al pulsar Intro no aparecerá ningún mensaje.

      # ikecert certdb -a Press the Return key
    3. Pegue la clave pública. A continuación, pulse la tecla Intro. Para finalizar la entrada, pulse Control+D.
      -----BEGIN X509 CERTIFICATE-----
      MIIC…
      …
      ----END X509 CERTIFICATE----- Press the Return key
      <Control>-D
  5. Verifique con el otro administrador que el certificado proceda de dicho administrador.

    Por ejemplo, puede llamar por teléfono al otro administrador para verificar que el hash del certificado público que usted tiene coincida con el hash del certificado privado que únicamente el administrador tiene.

    1. Enumere el certificado almacenado en partym.

      En el ejemplo siguiente, Note 1 (Nota 1) indica el nombre distintivo (DN) del certificado en la ranura 0. El certificado privado en la ranura 0 tiene el mismo hash (ver Note 3 [Nota 3]), de modo que estos certificados son el mismo par de certificados. Para que los certificados públicos funcionen, debe haber una pareja coincidente. El subcomando certdb enumera la parte pública, mientras que el subcomando certlocal enumera la parte privada.

      partym # ikecert certdb -l
      Certificate Slot Name: 0   Type: rsa-sha1 
          Subject Name: <C=US, O=PartyCo, OU=US-Partym, CN=Partym>Note 1
          Key Size: 1024
          Public key hash: 2239A6A127F88EE0CB40F7C24A65B818
      
      Certificate Slot Name: 1   Type: rsa-sha1 
          (Private key in certlocal slot 0)
          Subject Name: <C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax>
          Key Size: 1024
          Public key hash: B2BD13FCE95FD27ECE6D2DCD0DE760E2
      partym # ikecert certlocal -l
      Local ID Slot Name: 0   Key Type: rsa-sha1
          Key Size: 1024
          Public key hash: 2239A6A127F88EE0CB40F7C24A65B818Note 3
      
      Local ID Slot Name: 1   Key Type: rsa-sha1
              Key Size: 1024
              Public key hash: FEA65C5387BBF3B2C8F16C019FEBC388
      ...

      Esta comprobación verificó que el sistema partym tiene un par de certificados válido.

    2. Verifique que el sistema enigma tenga el certificado público de partym.

      El hash de clave pública se puede comunicar por teléfono.

      Compare los hashes de Note 3 (Nota 3) en partym, en el paso anterior, con Note 4 (Nota 4) en enigma.

      enigma # ikecert certdb -l
      Certificate Slot Name: 4   Type: rsa-sha1 
          Subject Name: <C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax>
          Key Size: 1024
          Public key hash: DF3F108F6AC669C88C6BD026B0FCE3A0
      
      Certificate Slot Name: 5   Type: rsa-sha1 
          Subject Name: <C=US, O=PartyCo, OU=US-Partym, CN=Partym>
          Key Size: 1024
          Public key hash: 2239A6A127F88EE0CB40F7C24A65B818Note 4

      El hash de clave pública y el nombre del asunto del último certificado almacenado en la base de datos de certificados públicos de enigma coincide con el hash del certificado privado para partym en el paso anterior.

  6. En cada sistema, confíe en ambos certificados.

    Edite el archivo /etc/inet/ike/config para reconocer los certificados.

    El administrador del sistema remoto proporciona los valores para los parámetros cert_trust, remote_addr y remote_id.

    1. Por ejemplo, en el sistema partym, el archivo ike/config tendría el siguiente aspecto:
      # Explicitly trust the self-signed certs
      # that we verified out of band. The local certificate
      # is implicitly trusted because we have access to the private key.
      cert_trust "192.168.116.16" Remote system's certificate Subject Alt Name
      
      ## Parameters that may also show up in rules.
      
      p1_xform 
        { auth_method preshared oakley_group 5 auth_alg sha encr_alg 3des }
      p2_pfs 5
      
      {
       label "US-partym to JA-enigmax"
       local_id_type dn
       local_id "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
       remote_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
      
       local_addr  192.168.13.213
      
      # We could explicitly enter the peerâs IP address here, but we donât need
      # to do this with certificates, so use a wildcard address. The wildcard
      # allows the remote device to be mobile or behind a NAT box.
      # remote_addr 192.168.116.16
       remote_addr 0.0.0.0/0
      
       p1_xform
         { auth_method rsa_sig oakley_group 2 auth_alg sha1 encr_alg aes }
      }
    2. En el sistema enigma, agregue los valores de enigma para los parámetros locales en el archivo ike/config.

      Para los parámetros remotos, utilice los valores de partym. Asegúrese de que el valor de la palabra clave label sea exclusivo en el sistema local.

      …
      {
       label "JA-enigmax to US-partym"
       local_id_type dn
       local_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
       remote_id "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
      
       local_addr  192.168.116.16
       remote_addr 0.0.0.0/0
      …

Ejemplo 23-4 Especificación de un tiempo de inicio y un tiempo de fin para un certificado

En este ejemplo, el administrador del sistema partym establece las fechas durante las cuales el certificado es válido. El certificado será anterior en dos días y medio, y será válido para 4 años y 6 meses a partir de la fecha de creación.

# ikecert certlocal -ks -m 1024 -t rsa-sha1 \
-D "C=US, O=PartyCompany, OU=US-Partym, CN=Partym" \
-A IP=192.168.13.213 \
-S -2d12h -F +4y6m

El administrador del sistema enigma establece las fechas para la validez del certificado. El certificado será anterior en dos días y será válido hasta las 12 de la noche del 31 de diciembre de 2010.

# ikecert certlocal -ks -m 1024 -t rsa-sha1 \
-D "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax" \
-A IP=192.168.116.16 \
-S -2d -F "12/31/2010 12:00 AM"

Cómo configurar IKE con certificados firmados por una autoridad de certificación

Los certificados públicos de una autoridad de certificación requieren negociar con una organización externa. Los certificados se pueden escalar con gran facilidad para proteger un mayor número de sistemas que se comunican.

  1. En la consola del sistema, asuma el rol de administrador principal o conviértase en superusuario.

    El rol de administrador principal incluye el perfil de administrador principal. Para obtener información sobre cómo crear el rol y asignarlo a un usuario, consulte el Capítulo 2, Trabajo con Solaris Management Console (tareas) de Administración de Oracle Solaris: administración básica.


    Nota - El inicio de sesión remoto expone el tráfico cuya seguridad es crítica a intrusos. Aunque proteja de algún modo el inicio de sesión remoto, la seguridad del sistema se reducirá a la seguridad de la sesión remota. Utilice el comando ssh para un inicio de sesión remota seguro.


  2. Utilice el comando ikecert certlocal -kc para crear una solicitud de certificado.

    Para ver una descripción de los argumentos del comando, consulte el Paso 2 in Cómo configurar IKE con certificados de clave pública autofirmados.

    # ikecert certlocal -kc -m keysize -t keytype \
    -D dname -A altname
    1. Por ejemplo, el comando siguiente crea una solicitud de certificado en el sistema partym:
      # ikecert certlocal -kc -m 1024 -t rsa-sha1 \
      > -D "C=US, O=PartyCompany\, Inc., OU=US-Partym, CN=Partym" \
      > -A "DN=C=US, O=PartyCompany\, Inc., OU=US-Partym"
      Creating software private keys.
        Writing private key to file /etc/inet/secret/ike.privatekeys/2.
      Enabling external key providers - done.
      Certificate Request: 
        Proceeding with the signing operation.
        Certificate request generated successfully (…/publickeys/0)
      Finished successfully.
      -----BEGIN CERTIFICATE REQUEST-----
      MIIByjCCATMCAQAwUzELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFEV4YW1wbGVDb21w
      …
      lcM+tw0ThRrfuJX9t/Qa1R/KxRlMA3zckO80mO9X
      -----END CERTIFICATE REQUEST-----
    2. El comando siguiente crea una solicitud de certificado en el sistema enigma:
      # ikecert certlocal -kc -m 1024 -t rsa-sha1 \
      > -D "C=JA, O=EnigmaCo\, Inc., OU=JA-Enigmax, CN=Enigmax" \
      > -A "DN=C=JA, O=EnigmaCo\, Inc., OU=JA-Enigmax"
      Creating software private keys.
      …
      Finished successfully.
      -----BEGIN CERTIFICATE REQUEST-----
      MIIBuDCCASECAQAwSTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDFBhcnR5Q29tcGFu
      …
      8qlqdjaStLGfhDOO
      -----END CERTIFICATE REQUEST-----
  3. Envíe la solicitud de certificado a una organización de PKI.

    La organización de PKI puede indicar cómo enviar la solicitud de certificado. La mayoría de las organizaciones cuenta con un sitio web con un formulario de envío. El formulario requiere una prueba de que el envío es legítimo. Normalmente, la solicitud de certificado se pega en el formulario. Cuando la organización ha comprobado la solicitud, emite los dos objetos de certificado siguientes y una lista de los certificados revocados:

    • El certificado de clave pública: este certificado se basa en la solicitud que usted ha enviado a la organización. La solicitud que envía forma parte del certificado de clave pública. El certificado le identifica de forma exclusiva.

    • Una autoridad de certificación: la firma de la organización. La autoridad de certificación verifica que el certificado de clave pública sea legítimo.

    • Una lista de revocación de certificados (CRL): la lista de certificados más reciente que ha revocado la organización. La CRL no se envía por separado como objeto de certificado si el acceso a la CRL está integrado en el certificado de clave pública.

      Cuando un URI para la CRL está integrado en el certificado de clave pública, IKE puede recuperar automáticamente la CRL. De modo similar, cuando una entrada DN (nombre de directorio en servidor LDAP) se integra en el certificado de clave pública, IKE puede recuperar la CRL y almacenarla en caché desde un servidor LDAP que se especifique.

      Consulte Cómo administrar una lista de revocación de certificados para ver un ejemplo de URI integrado y una entrada DN integrada en un certificado de clave pública.

  4. Agregue cada certificado al sistema.

    La opción -a de ikecert certdb -a agrega el objeto pegado a la base de datos de certificados pertinente del sistema. Para más información, consulte IKE con certificados de claves públicas.

    1. En la consola del sistema, asuma el rol de administrador principal o conviértase en superusuario.
    2. Agregue el certificado de clave pública que ha recibido de la organización de PKI.
      # ikecert certdb -a
      Press the Return key
      Paste the certificate:
      -----BEGIN X509 CERTIFICATE-----
      …
      -----END X509 CERTIFICATE----
      Press the Return key
      <Control>-D
    3. Agregue la autoridad de certificación de la organización de PKI.
      # ikecert certdb -a
      Press the Return key
      Paste the CA:
      -----BEGIN X509 CERTIFICATE-----
      …
      -----END X509 CERTIFICATE----
      Press the Return key
      <Control>-D
    4. Si la organización de PKI ha enviado una lista de certificados revocados, agregue la CRL a la base de datos certrldb:
      # ikecert certrldb -a
      Press the Return key
      Paste the CRL:
      -----BEGIN CRL-----
      …
      -----END CRL----
      Press the Return key
      <Control>-D
  5. Utilice la palabra clave cert_root para identificar la organización de PKI en el archivo /etc/inet/ike/config.

    Utilice el nombre que proporciona la organización de PKI.

    1. Por ejemplo, el archivo ike/config del sistema partym podría ser similar a:
      # Trusted root cert
      # This certificate is from Example PKI
      # This is the X.509 distinguished name for the CA that it issues.
      
      cert_root "C=US, O=ExamplePKI\, Inc., OU=PKI-Example, CN=Example PKI"
      
      ## Parameters that may also show up in rules.
      
      p1_xform 
        { auth_method rsa_sig oakley_group 1 auth_alg sha1 encr_alg 3des }
      p2_pfs 2
      
      {
       label "US-partym to JA-enigmax - Example PKI"
       local_id_type dn
       local_id  "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
       remote_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
      
       local_addr  192.168.13.213
       remote_addr 192.168.116.16
      
       p1_xform
         { auth_method rsa_sig oakley_group 2 auth_alg sha1 encr_alg aes }
      }

      Nota - Todos los argumentos del parámetro auth_method deben encontrarse en la misma línea.


    2. En el sistema enigma, cree un archivo similar.

      En concreto, el archivo enigma ike/config llevará a cabo las siguientes acciones:

      • Incluirá el mismo valor de cert_root.

      • Utilizará los valores de enigma para los parámetros locales.

      • Utilice los valores de partym para los parámetros remotos.

      • Cree un valor único para la palabra clave label. Este valor debe ser diferente del valor label del sistema remoto.

      …
      cert_root "C=US, O=ExamplePKI\, Inc., OU=PKI-Example, CN=Example PKI"
      …
      {
       label "JA-enigmax to US-partym - Example PKI"
       local_id_type dn
       local_id   "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
       remote_id  "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
       
       local_addr  192.168.116.16
       remote_addr 192.168.13.213
      …
  6. Indique a IKE cómo administrar las CRL.

    Elija la opción adecuada:

    • Ninguna CRL disponible

      Si la organización de PKI no proporciona ninguna CRL, agregue la palabra clave ignore_crls al archivo ike/config.

      # Trusted root cert
      …
      cert_root "C=US, O=ExamplePKI\, Inc., OU=PKI-Example,…
      ignore_crls

      La palabra clave ignore_crls indica a IKE que no debe buscar ninguna CRL.

    • CRL disponible

      Si la organización de PKI proporciona un punto de distribución central para las CRL, puede modificar el archivo ike/config para que haga referencia a esa ubicación.

      Consulte Cómo administrar una lista de revocación de certificados para ver algunos ejemplos.

Ejemplo 23-5 Uso de rsa_encrypt durante la configuración de IKE

Cuando utiliza auth_method rsa_encrypt en el archivo ike/config, debe agregar el certificado equivalente a la base de datos publickeys.

  1. Envíe el certificado al administrador del sistema remoto.

    El certificado se puede pegar en un mensaje de correo electrónico.

    Por ejemplo, el administrador de partym enviaría el siguiente mensaje de correo electrónico:

    To: admin@ja.enigmaexample.com
    From: admin@us.partyexample.com
    Message: -----BEGIN X509 CERTIFICATE-----
    MII…
    ----END X509 CERTIFICATE-----

    El administrador de enigma enviaría el siguiente mensaje de correo electrónico:

    To: admin@us.partyexample.com
    From: admin@ja.enigmaexample.com
    Message: -----BEGIN X509 CERTIFICATE-----
    MII
    …
    -----END X509 CERTIFICATE-----
  2. En cada sistema, agregue el certificado enviado por correo electrónico a la base de datos publickeys local.

    # ikecert certdb -a
    Press the Return key
    -----BEGIN X509 CERTIFICATE-----
    MII…
    -----END X509 CERTIFICATE-----
    Press the Return key
    <Control>-D

El método de autenticación para el cifrado de RSA oculta las identidades de IKE de los intrusos. Dado que el método rsa_encrypt oculta la identidad del equivalente, IKE no puede recuperar su certificado. Como consecuencia de ello, el método rsa_encrypt requiere que los equivalentes de IKE conozcan las claves públicas el uno del otro.

Por tanto, si utiliza un auth_method de rsa_encrypt en el archivo /etc/inet/ike/config, debe agregar el certificado del equivalente a la base de datos publickeys. La base de datos publickeys incluye tres certificados para cada par de sistemas que se comunican:

Resolución de problemas: la carga útil de IKE, que incluye los tres certificados, puede ser demasiado grande para que la cifre rsa_encrypt. Errores como un fallo de autenticación o una carga útil mal formada pueden indicar que el método rsa_encrypt no puede cifrar la carga útil total. Reduzca el tamaño de la carga útil utilizando un método que requiera únicamente dos certificados, por ejemplo rsa_sig.

Cómo generar y almacenar certificados de clave pública en el hardware

La generación y el almacenamiento de certificados de clave pública en hardware es similar a la generación y el almacenamiento de certificados de clave pública en el sistema. En el hardware, los comandos ikecert certlocal e ikecert certdb deben identificar el hardware. La opción -T con el ID de token identifica el hardware para los comandos.

Antes de empezar

  1. En la consola del sistema, asuma el rol de administrador principal o conviértase en superusuario.

    El rol de administrador principal incluye el perfil de administrador principal. Para obtener información sobre cómo crear el rol y asignarlo a un usuario, consulte el Capítulo 2, Trabajo con Solaris Management Console (tareas) de Administración de Oracle Solaris: administración básica.


    Nota - El inicio de sesión remoto expone el tráfico cuya seguridad es crítica a intrusos. Aunque proteja de algún modo el inicio de sesión remoto, la seguridad del sistema se reducirá a la seguridad de la sesión remota. Utilice el comando ssh para un inicio de sesión remota seguro.


  2. Genere un certificado autofirmado o una solicitud de certificado y especifique el ID de token.

    Elija una de las siguientes opciones:


    Nota - Las placas de Sun Crypto Accelerator 4000 y Sun Crypto Accelerator 6000 admiten claves de hasta 2048 bits para RSA. Para DSA, admiten claves de hasta 1024 bits.


    • Para un certificado autofirmado, utilice esta sintaxis.
      # ikecert certlocal -ks -m 1024 -t rsa-sha1 \
      > -D "C=US, O=PartyCompany, OU=US-Partym, CN=Partym" \
      > -a -T dca0-accel-stor IP=192.168.116.16
      Creating hardware private keys.
      Enter PIN for PKCS#11 token: Type user:password

      El argumento para la opción -T es el ID de token de la placa conectada.

    • Para obtener una solicitud de certificado, utilice esta sintaxis.
      # ikecert certlocal -kc -m 1024 -t rsa-sha1 \
      > -D "C=US, O=PartyCompany, OU=US-Partym, CN=Partym" \
      > -a -T dca0-accel-stor IP=192.168.116.16
      Creating hardware private keys.
      Enter PIN for PKCS#11 token: Type user:password

    Para ver una descripción de los argumentos para el comando ikecert, consulte la página del comando man ikecert(1M).

  3. Cuando se le solicite un PIN, escriba el usuario de la placa, dos puntos y la contraseña del usuario.

    Si la placa tiene un usuario ikemgr cuya contraseña es rgm4tigt, debe escribir lo siguiente:

    Enter PIN for PKCS#11 token: ikemgr:rgm4tigt

    Nota - La respuesta de PIN se guarda en el disco como texto sin cifrar.


    Una vez indicada la contraseña, se imprime el certificado:

    Enter PIN for PKCS#11 token: ikemgr:rgm4tigt
    -----BEGIN X509 CERTIFICATE-----
    MIIBuDCCASECAQAwSTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDFBhcnR5Q29tcGFu
    …
    oKUDBbZ9O/pLWYGr
    -----END X509 CERTIFICATE-----
  4. Envíe su certificado para que lo pueda utilizar la otra parte.

    Elija una de las siguientes opciones:

  5. En el sistema, edite el archivo /etc/inet/ike/config para que reconozca los certificados.

    Elija una de las siguientes opciones.

    • Certificado autofirmado

      Utilice los valores que proporciona el administrador del sistema remoto para los parámetros cert_trust, remote_id y remote_addr. Por ejemplo, en el sistema enigma, el archivo ike/config sería similar a:

      # Explicitly trust the following self-signed certs
      # Use the Subject Alternate Name to identify the cert
      
      cert_trust "192.168.116.16"  Local system's certificate Subject Alt Name
      cert_trust "192.168.13.213"  Remote system's certificate Subject Alt name
      
      
      # Solaris 10 1/06 release: default path does not have to be typed in #pkcs11_path
      "/usr/lib/libpkcs11.so" Hardware connection
      
      # Solaris 10 release: use this path
      #pkcs11_path "/opt/SUNWconn/cryptov2/lib/libvpkcs11.so"
      …
      {
       label "JA-enigmax to US-partym"
       local_id_type dn
       local_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
       remote_id "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
      
       local_addr  192.168.116.16
       remote_addr 192.168.13.213
      
       p1_xform
        {auth_method rsa_sig oakley_group 2 auth_alg sha1 encr_alg aes}
      }
    • Solicitud de certificado

      Escriba el nombre que proporciona la organización de PKI como valor para la palabra clave cert_root. Por ejemplo, el archivo ike/config del sistema enigma podría ser similar a:

      # Trusted root cert
      # This certificate is from Example PKI
      # This is the X.509 distinguished name for the CA that it issues.
      
      cert_root "C=US, O=ExamplePKI\, Inc., OU=PKI-Example, CN=Example PKI"
      
      # Solaris 10 1/06 release: default path does not have to be typed in #pkcs11_path
      "/usr/lib/libpkcs11.so" Hardware connection
      
      # Solaris 10 release: use this path
      #pkcs11_path "/opt/SUNWconn/cryptov2/lib/libvpkcs11.so"
      …
      {
       label "JA-enigmax to US-partym - Example PKI"
       local_id_type dn
       local_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
       remote_id  "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
      
       local_addr  192.168.116.16
       remote_addr 192.168.13.213
      
       p1_xform
        {auth_method rsa_sig oakley_group 2 auth_alg sha1 encr_alg aes}
      }
  6. Coloque los certificados de la otra parte en el hardware.

    Responda a la solicitud de PIN del mismo modo que en el Paso 3.


    Nota - Debe agregar los certificados de clave pública al mismo hardware conectado que generó la clave privada.


    • Certificado autofirmado.

      Agregue el certificado autofirmado al sistema remoto. En este ejemplo, el certificado se guarda en el archivo, DCA.ACCEL.STOR.CERT.

      # ikecert certdb -a -T dca0-accel-stor < DCA.ACCEL.STOR.CERT
      Enter PIN for PKCS#11 token: Type user:password

      Si el certificado autofirmado utilizó rsa_encrypt como valor para el parámetro auth_method, agregue el certificado del equivalente al hardware.

    • Certificados de una organización de PKI.

      Agregue el certificado que ha generado la organización a partir de la solicitud de certificado, y agregue la autoridad de certificación.

      # ikecert certdb -a -T dca0-accel-stor < DCA.ACCEL.STOR.CERT
      Enter PIN for PKCS#11 token: Type user:password
      # ikecert certdb -a -T dca0-accel-stor < DCA.ACCEL.STOR.CA.CERT
      Enter PIN for PKCS#11 token: Type user:password

      Para agregar una lista de revocación de certificados (CRL) de la organización de PKI, consulte Cómo administrar una lista de revocación de certificados.

Cómo administrar una lista de revocación de certificados

Una lista de revocación de certificados (CRL) contiene certificados caducados o que suponen un peligro de una autoridad de certificación. Existen cuatro modos de administrar las CRL.

El siguiente procedimiento describe cómo indicar a IKE que utilice las CRL de un punto de distribución central.

  1. Visualice el certificado que ha recibido de la autoridad de certificación.
    # ikecert certdb -lv certspec
    -l

    Enumera los certificados de la base de datos IKE.

    -v

    Enumera los certificados en modo detallado. Utilice esta opción con precaución.

    certspec

    Es un patrón que coincide con un certificado de la base de datos de certificados IKE.

    Por ejemplo, Oracle emitió el certificado siguiente. Los detalles se han modificado.

    # ikecert certdb -lv example-protect.oracle.com
    Certificate Slot Name: 0   Type: dsa-sha1
       (Private key in certlocal slot 0)
     Subject Name: <O=Oracle, CN=example-protect.oracle.com>
     Issuer Name: <CN=Oracle CA (Cl B), O=Oracle>
     SerialNumber: 14000D93
       Validity:
          Not Valid Before: 2002 Jul 19th, 21:11:11 GMT
          Not Valid After:  2005 Jul 18th, 21:11:11 GMT
       Public Key Info:
          Public Modulus  (n) (2048 bits): C575A…A5
          Public Exponent (e) (  24 bits): 010001
       Extensions:
          Subject Alternative Names:
                  DNS = example-protect.oracle.com
          Key Usage: DigitalSignature KeyEncipherment
          [CRITICAL]
       CRL Distribution Points:
          Full Name:
             URI = #Ihttp://www.oracle.com/pki/pkismica.crl#i
             DN = <CN= Oracle CA (Cl B), O=Oracle>
          CRL Issuer: 
          Authority Key ID:
          Key ID:              4F … 6B
          SubjectKeyID:        A5 … FD
          Certificate Policies
          Authority Information Access

    Observe la entrada CRL Distribution Points. La entrada URI indica que la CRL de esta organización está disponible en Internet. La entrada DN indica que la CRL está disponible en un servidor LDAP. Cuando IKE accede a la CRL, ésta se almacena en caché para futuros usos.

    Para acceder a la CRL, debe alcanzar un punto de distribución.

  2. Elija uno de los métodos siguientes para acceder a la CRL desde un punto de distribución central.
    • Utilice el URI.

      Agregue la palabra clave use_http al archivo /etc/inet/ike/config del host. Por ejemplo, el archivo ike/config tendría el siguiente aspecto:

      # Use CRL from organization's URI
      use_http
    • Utilice un proxy web.

      Agregue la palabra clave proxy al archivo ike/config. La palabra clave proxy adopta una dirección URL como argumento, como en el caso siguiente:

      # Use own web proxy
      proxy "http://proxy1:8080"
    • Utilice un servidor LDAP.

      Configure el servidor LDAP como argumento para la palabra clave ldap-list del archivo /etc/inet/ike/config del host. Su organización proporciona el nombre del servidor LDAP. La entrada del archivo ike/config tendría el siguiente aspecto:

      # Use CRL from organization's LDAP
      ldap-list "ldap1.oracle.com:389,ldap2.oracle.com"
      …

    IKE recupera la CRL y almacena en caché la CRL hasta que caduque el certificado.

Ejemplo 23-6 Cómo pegar una CRL en la base de datos certrldb local

Si la CRL de la organización de PKI no está disponible en un punto de distribución central, puede agregar la CRL manualmente a la base de datos certrldb local. Siga las instrucciones de la organización de PKI para extraer la CRL en un archivo y, a continuación, agregue la CRL a la base de datos con el comando ikecert certrldb -a.

# ikecert certrldb -a < Oracle.Cert.CRL