문서의 이전 판입니다!


BLFS NSS-3.98

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

이 패키지는 LFS 12.1 플랫폼을 사용하여 빌드하고 제대로 작동하는 것으로 알려져 있습니다.

패키지 정보

추가 다운로드

NSS 종속성

필수
권장

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

patch -Np1 -i ../nss-3.98-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)
테스트를 실행하려면 다음 명령을 실행합니다:
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에서 확인할 수 있습니다.
  • 일부 인텔 머신에서는 알 수 없는 이유로 몇 가지 테스트가 실패할 수 있습니다.

이제 루트 사용자로서

명령 설명 BUILD_OPT=1: 이 옵션을 전달하면 바이너리에 디버깅 심볼을 빌드하지 않고 기본 컴파일러 최적화가 사용되도록 빌드가 수행됩니다.

NSPR_INCLUDE_DIR=/usr/include/nspr: 이 옵션은 nspr 헤더의 위치를 설정합니다.

USE_SYSTEM_ZLIB=1: 이 옵션은 libssl3.so 라이브러리가 인트리 버전이 아닌 시스템에 설치된 zlib에 링크되도록 하기 위해 전달됩니다.

ZLIB_LIBS=-lz: 이 옵션은 시스템 zlib에 링크하는 데 필요한 링커 플래그를 제공합니다.

$([ $(uname -m) = x86_64 ] && echo USE_64=1): USE_64=1 옵션은 x86_64에서 필수이며, 그렇지 않으면 make가 32비트 오브젝트를 생성하려고 시도하지만 실패합니다. ($(uname -m) = x86_64 ] 테스트는 32비트 시스템에 영향을 미치지 않는지 확인합니다.

([ -f /usr/include/sqlite3.h ] && echo NSS_USE_SYSTEM_SQLITE=1): 이 명령은 sqlite가 설치되어 있는지 테스트하고 설치되어 있는 경우 NSS_USE_SYSTEM_SQLITE=1 옵션을 에코하여 libsoftokn3.so가 시스템 버전의 sqlite에 대해 링크되도록 합니다.

NSS_DISABLE_GTESTS=1: NSS 테스트 스위트를 실행할 필요가 없는 경우 make 명령에 이 옵션을 추가하면 테스트 컴파일을 방지하고 빌드 시간을 절약할 수 있습니다.

NSS 구성 p11-kit-0.25.3이 설치되어 있는 경우, p11-kit 신뢰 모듈(/usr/lib/pkcs11/p11-kit-trust.so)을 /usr/lib/libnssckbi.so의 드롭인 대체로 사용하여 시스템 CA를 NSS 인식 애플리케이션에서 투명하게 사용할 수 있도록 /usr/lib/libnssckbi.so에서 제공하는 정적 라이브러리가 아닌 /usr/lib/libnssckbi.so를 대신하여 사용할 수 있습니다. 루트 사용자로 다음 명령을 실행합니다:

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를 생성할 수 있습니다.

내용 설치된 프로그램: certutil, nss-config, pk12util 설치된 라이브러리: libcrmf.a, libfreebl3.so, libfreeblpriv3.so, libnss3.so, libnssckbi.so, libnssckbi-testlib.so, libnssdbm3.so, libnsssysinit.so, libnssutil3.so, libpkcs11testmodule.so, libsmime3.so, libsoftokn3.so, 및 libssl3.so. 설치 디렉터리 /usr/include/nss 간단한 설명 certutil

은 Mozilla 인증서 데이터베이스 도구입니다. 이 도구는 넷스케이프 커뮤니케이터 cert8.db 및 key3.db 데이터베이스 파일을 만들고 수정할 수 있는 명령줄 유틸리티입니다. 또한 cert8.db 파일 내에서 인증서를 나열, 생성, 수정 또는 삭제하고, 비밀번호를 생성 또는 변경하고, 새 공개 및 개인 키 쌍을 생성하고, 키 데이터베이스의 내용을 표시하거나, key3.db 파일 내에서 키 쌍을 삭제할 수 있습니다.

nss-config

는 설치된 NSS 라이브러리의 NSS 라이브러리 설정을 결정하는 데 사용됩니다.

pk12util

은 pkcs #12 파일에서 인증서 및 키를 가져오기 위한 도구입니다. * Translated with www.DeepL.com/Translator (free version) *

  • beyondlinuxfromscratch/installedpackages/nss-3.98.1714793784.txt.gz
  • 마지막으로 수정됨: 2024/05/04 03:36
  • 저자 baecy