Red Hat Training

A Red Hat training course is available for RHEL 8

3.9. Proteger la base de datos IPsec NSS con una contraseña

Por defecto, el servicio IPsec crea su base de datos de Servicios de Seguridad de Red (NSS) con una contraseña vacía durante el primer inicio. Añada la protección con contraseña siguiendo los siguientes pasos.

Nota

En las versiones anteriores de RHEL hasta la versión 6.6, había que proteger la base de datos de IPsec NSS con una contraseña para cumplir los requisitos de FIPS 140-2 porque las bibliotecas criptográficas de NSS estaban certificadas para el estándar FIPS 140-2 Nivel 2. En RHEL 8, el NIST certificó NSS para el nivel 1 de esta norma, y este estado no requiere la protección con contraseña de la base de datos.

Requisito previo

  • El directorio /etc/ipsec.d contiene los archivos de la base de datos NSS.

Procedimiento

  1. Activar la protección por contraseña de la base de datos NSS para Libreswan:

    # certutil -N -d sql:/etc/ipsec.d
    Enter Password or Pin for "NSS Certificate DB":
    Enter a password which will be used to encrypt your keys.
    The password should be at least 8 characters long,
    and should contain at least one non-alphabetic character.
    
    Enter new password:
  2. Cree el archivo /etc/ipsec.d/nsspassword con la contraseña que ha establecido en el paso anterior, por ejemplo:

    # cat /etc/ipsec.d/nsspassword
    NSS Certificate DB:MyStrongPasswordHere

    Tenga en cuenta que el archivo nsspassword utiliza la siguiente sintaxis:

    token_1_name:the_password
    token_2_name:the_password

    El token de software NSS por defecto es NSS Certificate DB. Si su sistema funciona en modo FIPS, el nombre del token es NSS FIPS 140-2 Certificate DB.

  3. Dependiendo de su escenario, inicie o reinicie el servicio ipsec después de terminar el archivo nsspassword:

    # systemctl restart ipsec

Pasos de verificación

  1. Compruebe que el servicio ipsec está funcionando después de haber añadido una contraseña no vacía a su base de datos NSS:

    # systemctl status ipsec
    ● ipsec.service - Internet Key Exchange (IKE) Protocol Daemon for IPsec
       Loaded: loaded (/usr/lib/systemd/system/ipsec.service; enabled; vendor preset: disable>
       Active: active (running)...
  2. Opcionalmente, compruebe que el registro Journal contiene entradas que confirman una inicialización exitosa:

    # journalctl -u ipsec
    ...
    pluto[23001]: NSS DB directory: sql:/etc/ipsec.d
    pluto[23001]: Initializing NSS
    pluto[23001]: Opening NSS database "sql:/etc/ipsec.d" read-only
    pluto[23001]: NSS Password from file "/etc/ipsec.d/nsspassword" for token "NSS Certificate DB" with length 20 passed to NSS
    pluto[23001]: NSS crypto library initialized
    ...

Recursos adicionales

  • La página de manual certutil(1).
  • Para obtener más información sobre las certificaciones relacionadas con FIPS 140-2, consulte el artículo de la base de conocimientos sobre normas gubernamentales.