5.9. 암호로 IPsec NSS 데이터베이스 보호
기본적으로 IPsec 서비스는 처음 시작하는 동안 비어 있는 암호를 사용하여 NSS(Network Security Services) 데이터베이스를 생성합니다. 보안을 강화하기 위해 암호 보호를 추가할 수 있습니다.
이전 RHEL 버전 6.6 버전에서는 NSS 암호화 라이브러리가 FIPS 6443 레벨 2 표준에 대해 인증되었기 때문에 FIPShiera 요구 사항을 충족하는 암호로 IPsec NSS 데이터베이스를 보호해야 했습니다. RHEL 8에서는 NIST 인증 NSS를 이 표준의 수준 1로 인증했으며 이 상태에는 데이터베이스에 대한 암호 보호가 필요하지 않습니다.
사전 요구 사항
-
/etc/ipsec.d/
디렉토리에는 NSS 데이터베이스 파일이 포함되어 있습니다.
절차
Libreswan의
NSS
데이터베이스에 대해 암호 보호를 활성화합니다.# 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:
이전 단계에서 설정한 암호를 포함하는
/etc/ipsec.d/nsspassword
파일을 생성합니다. 예를 들면 다음과 같습니다.# cat /etc/ipsec.d/nsspassword NSS Certificate DB:_<password>_
nsspassword
파일은 다음 구문을 사용합니다.<token_1>:<password1> <token_2>:<password2>
기본 NSS 소프트웨어 토큰은
NSS Certificate DB
입니다. 시스템이 FIPS 모드에서 실행 중인 경우 토큰 이름은NSS FIPS 140-2 Certificate DB
입니다.시나리오에 따라
nsspassword
파일을 완료한 후ipsec
서비스를 시작하거나 다시 시작합니다.# systemctl restart ipsec
검증
NSS 데이터베이스에 비어 있지 않은 암호를 추가한 후
ipsec
서비스가 실행 중인지 확인합니다.# 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)...
검증
저널
로그에 초기화에 성공했는지 확인하는 항목이 포함되어 있는지 확인합니다.# journalctl -u ipsec ... pluto[6214]: Initializing NSS using read-write database "sql:/etc/ipsec.d" pluto[6214]: NSS Password from file "/etc/ipsec.d/nsspassword" for token "NSS Certificate DB" with length 20 passed to NSS pluto[6214]: NSS crypto library initialized ...
추가 리소스
-
시스템의
certutil(1)
도움말 페이지 - 규정 준수 활동 및 정부 표준 지식 베이스 문서의 FIPS 140-2 및 FIPS 140-3.