목차

DEV-BLFS NSS-3.98

NSS-3.99

NSS 소개

NSS(네트워크 보안 서비스) 패키지는 보안이 지원되는 클라이언트 및 서버 애플리케이션의 크로스 플랫폼 개발을 지원하도록 설계된 라이브러리 세트입니다. NSS로 구축된 애플리케이션은 SSL v2 및 v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 인증서 및 기타 보안 표준을 지원할 수 있습니다. 이 패키지는 SSL 및 S/MIME 또는 기타 인터넷 보안 표준을 애플리케이션에 구현하는 데 유용합니다.

참고 BLFS의 개발 버전이 가장 최근의 안정 버전 이후 LFS 또는 종속성이 업데이트된 경우 일부 패키지를 제대로 빌드하거나 실행하지 못할 수 있습니다.


패키지 정보

추가 다운로드

NSS 종속성

필수

NSPR-4.35

권장

SQLite-3.45.3p11-kit-0.25.3(런타임)

편집자 노트 - NSS

NSS 설치

다음 명령을 실행하여 NSS를 설치합니다:

patch -Np1 -i ../nss-3.99-standalone-1.patch &&

cd nss &&

make BUILD_OPT=1                      \
  NSPR_INCLUDE_DIR=/usr/include/nspr  \
  USE_SYSTEM_ZLIB=1                   \
  ZLIB_LIBS=-lz                       \
  NSS_ENABLE_WERROR=0                 \
  $([ $(uname -m) = x86_64 ] && echo USE_64=1) \
  $([ -f /usr/include/sqlite3.h ] && echo NSS_USE_SYSTEM_SQLITE=1)

테스트를 실행하려면 다음 명령을 실행합니다:1)
cd tests &&
HOST=localhost DOMSUF=localdomain ./all.sh
cd ../

참고 테스트에 대한 몇 가지 정보

  • HOST=localhost 및 DOMSUF=localdomain이 필요합니다. 이러한 변수가 없으면 FQDN을 지정해야 하며, LFS 책에 명시된 대로 myhostname 네임 서비스 스위치 모듈에 localhost.localdomain이 정의되어 있는 경우 이 일반적인 방법이 모든 사용자에게 작동해야 합니다.
  • 실행하는 데 시간이 오래 걸립니다. 원하는 경우 전체 테스트 스위트의 하위 집합 실행에 대한 정보가 all.sh 스크립트에 있습니다.
  • 테스트를 중단할 때 테스트 스위트는 실행 중인 테스트 서버를 스핀다운하지 못합니다. 이로 인해 테스트 스위트가 잘못된 PID를 가져와 더 이상 존재하지 않는 서버를 종료하려고 시도하는 중에 무한 루프가 발생합니다.
  • 테스트 스위트 결과(HTML 형식!)는 ./../test_results/security/localhost.1/results.html에서 확인할 수 있습니다.
  • 일부 인텔 머신에서는 알 수 없는 이유로 몇 가지 테스트가 실패할 수 있습니다.


이제 root 사용자로

cd ../dist                                                          &&

install -v -m755 Linux*/lib/*.so              /usr/lib              &&
install -v -m644 Linux*/lib/{*.chk,libcrmf.a} /usr/lib              &&

install -v -m755 -d                           /usr/include/nss      &&
cp -v -RL {public,private}/nss/*              /usr/include/nss      &&

install -v -m755 Linux*/bin/{certutil,nss-config,pk12util} /usr/bin &&

install -v -m644 Linux*/lib/pkgconfig/nss.pc  /usr/lib/pkgconfig

명령 설명

NSS 설정

p11-kit-0.25.3이 설치되어 있는 경우, p11-kit trust module(/usr/lib/pkcs11/p11-kit-trust.so)을 /usr/lib/libnssckbi.so의 드롭인 대체로 사용하여 NSS을 인식하는 응용 프로그램에서 /usr/lib/libnssckbi.so에서 제공하는 정적 라이브러리 대신 시스템 CA를 사용할 수 있습니다. root 사용자로 다음 명령을 실행합니다:

ln -sfv ./pkcs11/p11-kit-trust.so /usr/lib/libnssckbi.so

또한 내부 데이터베이스(/usr/lib/libnssckbi.so)를 사용하지 않는 종속 애플리케이션의 경우 make-ca-1.13 페이지에 포함된 /usr/sbin/make-ca 스크립트에서 -n 스위치를 사용하거나 /etc/make-ca/make-ca.conf 파일을 수정하여 시스템 전체 NSS DB를 생성할 수 있습니다.

내용

간단한 설명

1)
진행하기 전에 9.2.일반적인 네트워크 설정에 나오는 대로 /etc/hostname, /etc/hosts 파일이 정확하게 생성되어 있는지 확인해야 합니다. 만약 두 파일의 생성되어 있지 않다면 모든 테스트는 실패로 기록됩니다.