Protección de la red en Oracle® Solaris 11.2

Salir de la Vista de impresión

Actualización: Septiembre de 2014
 
 

Cómo solucionar problemas de sistemas cuando se está ejecutando IPsec

En los sistemas en ejecución que están intercambiando o intentando intercambiar paquetes mediante el uso de IKE, puede usar el comando ikeadm para ver estadísticas, reglas claves compartidas previamente y otros. También puede utilizar los archivos log y las herramientas seleccionadas, como la aplicación Wireshark.

  1. Investigue los siguientes elementos:
    • Verifique que policy y los servicios de gestión de claves adecuados estén activados.

      En el siguiente sistema de prueba, el servicio manual-key se usa para la gestión de claves:

      % svcs -a  | grep ipsec
      online         Feb_04   svc:/network/ipsec/manual-key:default
      online         Feb_04   svc:/network/ipsec/ipsecalgs:default
      online         Feb_04   svc:/network/ipsec/policy:default
      disabled       Feb_28   svc:/network/ipsec/ike:ikev2
      disabled       Feb_28   svc:/network/ipsec/ike:default

      Si el servicio está desactivado, actívelo.

      Puede utilizar ambos servicios IKE simultáneamente. También puede utilizar claves manuales e IKE simultáneamente, pero esta configuración puede generar problemas difíciles de solucionar.

    • Vea el final del archivo log para el servicio IKEv2.
      # svcs -xL ikev2
      svc:/network/ipsec/ike:ikev2 (IKEv2 daemon)
       State: disabled since October  10, 2013 10:10:40 PM PDT
      Reason: Disabled by an administrator.
         See: http://support.oracle.com/msg/SMF-8000-05
         See: in.ikev2d(1M)
         See: /var/svc/log/network-ipsec-ike:ikev2.log
      Impact: This service is not running.
         Log:
      Oct 01 13:20:20: (1)  Property "debug_level" set to: "op"
      Oct 01 13:20:20: (1)  Errors and debug messages will be written to: 
                              /var/log/ikev2/in.ikev2d.log
      [ Oct 10 10:10:10 Method "start" exited with status 0. ]
      [ Oct 10 10:10:40 Stopping because service disabled. ]
      [ Oct 10 10:10:40 Executing stop method (:kill). ]
      
         Use: 'svcs -Lv svc:/network/ipsec/ike:ikev2' to view the complete log.
    • (Opcional) Puede definir un valor temporal para el nivel de depuración del daemon en ejecución.
      # ikeadm set debug verbose /var/log/ikev2/in.ikev2d.log
      Successfully changed debug level from 0x80000000 to 0x6204
      Debug categories enabled:
              Operational / Errors
              Config file processing
              Interaction with Audit
              Verbose Operational
  2. Verifique que la salida del comando ipsecconf coincida con el contenido del archivo de la política.
    # ipsecconf 
    #INDEX 14 
    ...
    {  laddr 10.133.66.222 raddr 10.133.64.77 }
    	ipsec   { encr_algs aes(256) encr_auth_algs sha512 sa shared } 
    ...
    {  laddr 10.134.66.122 raddr 10.132.55.55 }
    	ipsec   { encr_algs aes(256) encr_auth_algs sha512 sa shared } 
    
    # cat /etc/inet/ipsecinit.conf
    ...
    {  laddr 10.133.66.222 raddr 10.133.64.77 }
    	ipsec   { encr_algs aes(256) encr_auth_algs sha512 sa shared } 
    
    {  laddr 10.134.66.122 raddr 10.132.55.55 }
    	ipsec   { encr_algs aes(256) encr_auth_algs sha512 sa shared } 
    

    Notas -  Las direcciones comodín pueden evitar que se encuentre una coincidencia, de modo que verifique que las direcciones específicas del archivo ipsecinit.conf estén dentro del rango de direcciones comodín en la salida de ipsecconf.

    Si no se imprime ninguna salida para el comando ipsecconf, verifique que el servicio de la política esté activado y actualice el servicio.

    % svcs policy
    STATE          STIME    FMRI
    online         Apr_10   svc:/network/ipsec/policy:default

    Si la salida muestra un error, edite el archivo ipsecinit.conf para solucionar el problema y, a continuación, actualice el servicio.

  3. Valide su configuración de IKEv2.

    Para las salidas de configuración que puedan requerir arreglos, consulte el Example 11–1 and Example 11–2. La salida del siguiente ejemplo indica que la configuración es válida.

    # /usr/lib/inet/in.ikev2d -c
    Feb 04 12:08:25: (1)    Reading service properties from smf(5) repository.
    Feb 04 12:08:25: (1)    Property "config_file" set to: "/etc/inet/ike/ikev2.config"
    Feb 04 12:08:25: (1)    Property "debug_level" set to: "all"
    Feb 04 12:08:25: (1)    Warning: debug output being written to stdout.
    Feb 04 12:08:25: (1)    Checking IKE rule #1: "Test 104 to 113"
    Feb 04 12:08:25: (1)    Configuration file /etc/inet/ike/ikev2.config is valid.
    Feb 04 12:08:25: (1)    Pre-shared key file /etc/inet/ike/ikev2.preshared is valid.

    Notas -  La advertencia sobre la salida de depuración no cambia incluso después de que especifica un archivo log de depuración. Si especifica un valor para la propiedad del servicio debug_logfile, la advertencia significa que la salida de la depuración se está entregando a ese archivo. De lo contrario, la salida de la depuración se entrega a la consola.
    • En las líneas de Checking IKE rule, verifique que las reglas de IKE conecten las direcciones IP adecuadas. Por ejemplo, las entradas siguientes coinciden. El valor de laddr del archivo ipsecinit.conf coincide con el valor local_addr del archivo ikev2.config y las direcciones remotas coinciden.

      {  laddr 10.134.64.104 raddr 10.134.66.113 }      /** ipsecinit.conf **/
                       ipsec {encr_algs aes encr_auth_algs sha512 sa shared}
      
      	local_addr   10.134.64.104                          /** ikev2.config **/
      	remote_addr  10.134.66.113                          /** ikev2.config **/
      

      Si las entradas no se corresponden, corrija la configuración para identificar las direcciones IP correctas.


      Notas -  Las reglas pueden tener direcciones comodín como 10.134.0.0/16 que abarcan un rango de direcciones. Verifique el rango con direcciones específicas.
    • Si la línea Pre-shared key file indica que el archivo no es válido, solucione el problema.

      Compruebe que no haya errores tipográficos. Además, en IKEv2, compruebe que el valor de la etiqueta de la regla ikev2.config coincida con el valor de etiqueta del archivo ikev2.preshared. A continuación, si utiliza dos claves, verifique que la clave compartida previamente en un sistema coincida con la clave remota compartida previamente en su par y que la clave remota coincida con la calve local en el par.

      Si la configuración todavía no funciona, consulte Resolución de problemas semánticos de IPsec e IKE.

Ejemplo 11-1  Corrección de una configuración no válida de IKEv2

En la siguiente salida, la duración de la SA de IKE es demasiado corta.

# /usr/lib/inet/in.ikev2d -c
...
May 08 08:52:49: (1)	WARNING: Problem in rule "Test 104 to 113"
May 08 08:52:49: (1)	 HARD lifetime too small (60 < 100)
May 08 08:52:49: (1)	  -> Using 100 seconds (minimum)
May 08 08:52:49: (1)	Checking IKE rule #1: "config 10.134.13.113 to 10.134.13.104"
...

Este valor se ha establecido de forma explícita en el archivo ikev2.config. Para eliminar la advertencia, cambie el valor de duración a, por lo menos, 100 y actualice el servicio.

# pfedit /etc/inet/ike/ikev2.config
...
## childsa_lifetime_secs   60
childsa_lifetime_secs   100
...
# /usr/lib/inet/in.ikev2d -c
...
# svcadm refresh ikev2
Ejemplo 11-2  Corrección de mensaje de regla no coincidente

En la siguiente salida, se define una clave compartida previamente pero no se usa en una regla.

# /usr/lib/inet/in.ikev2d -c
Feb 4 12:58:31: (1)  Reading service properties from smf(5) repository.
Feb 4 12:58:31: (1)  Property "config_file" set to: "/etc/inet/ike/ikev2.config"
Feb 4 12:58:31: (1)  Property "debug_level" set to: "op"
Feb 4 12:58:31: (1)  Warning: debug output being written to stdout.
Feb 4 12:58:31: (1)  Checking IKE rule #1: "Test 104 to 113"
Feb 4 12:58:31: (1)  Configuration file /etc/inet/ike/ikev2.config is valid.
Feb 4 12:58:31: (1)  No matching IKEv2 rule for pre-shared key ending on line 12
Feb 4 12:58:31: (1)  Pre-shared key file /etc/inet/ike/ikev2.preshared is valid.

    La salida indica que existe solamente una regla.

  • Si la regla necesita una clave previamente compartida, la etiqueta de la clave compartida previamente no coincide con la etiqueta de la regla. Corrija la etiqueta de la regla ikev2.config y la etiqueta de la regla ikev2.preshared para que coincidan.

  • Si la regla utiliza un certificado, puede eliminar o comentar la clave compartida previamente que termina en la línea 12 en el archivo ikev2.preshared para evitar el mensaje No matching.

Ejemplo 11-3  Configuración de un nuevo nivel de depuración en un daemon de IKE en ejecución

En la siguiente salida, la salida de la depuración está establecido en all en el servicio ikev2.

# /usr/lib/inet/in.ikev2d -c
Feb 4 12:58:31: (1)  Reading service properties from smf(5) repository.
...
Feb 4 12:58:31: (1)  Property "debug_level" set to: "all"
...

Si completó el Step 2 in Cómo solucionar problemas de los sistemas antes de la ejecución de IPsec e IKE y la salida de la depuración aún es op en lugar de all, use el comando ikeadm para establecer el nivel de depuración en el daemon IKE en ejecución.

# ikeadm set debug_level all