NSS-3.115
      
      
        
          Introdução ao NSS
        
        
          O pacote Network Security Services (NSS) é um conjunto de bibliotecas projetadas
          para suportar o desenvolvimento em plataforma cruzada de
          aplicativos cliente e servidor habilitados para segurança.
          Aplicativos construídos com NSS podem suportar SSL v2 e v3, TLS,
          PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, certificados X.509 v3
          e outros padrões de segurança. Isso é útil para implementar SSL e
          S/MIME ou outros padrões de segurança da Internet em um aplicativo.
        
        
          Esse pacote é conhecido por construir e funcionar corretamente
          usando uma plataforma LFS 12.4.
        
        
          Informação do Pacote
        
        
          
            - 
              
                Transferência (HTTP): 
                https://archive.mozilla.org/pub/security/nss/releases/NSS_3_115_RTM/src/nss-3.115.tar.gz
              
             
            - 
              
                Transferência (FTP): 
              
             
            - 
              
                Soma de verificação MD5 da transferência:
                3780ea47a89bccee86feb9d378cdb54e
              
             
            - 
              
                Tamanho da transferência: 73 MB
              
             
            - 
              
                Espaço em disco estimado exigido: 307 MB (adicionar 151 MB
                para os testes)
              
             
            - 
              
                Tempo de construção estimado: 0,8 UPC (com paralelismo=4;
                adicionar 42 UPC para testes em Ryzens da AMD ou ao menos 27
                UPC em máquinas Intel)
              
             
          
         
        
          Transferências Adicionais
        
        
        
          Dependências do NSS
        
        
          Exigidas
        
        
          NSPR-4.37
        
        
          Recomendadas
        
        
          SQLite-3.50.4 e p11-kit-0.25.5 (tempo de
          execução)
        
        
          
          
            Nota
          
          
            Uma conexão com a Internet é necessária para alguns testes desse
            pacote. A loja de certificados do sistema pode necessitar ser
            configurada com make-ca-1.16.1 antes de se testar esse
            pacote.
          
         
        
          Observações de Editor(a): https://wiki.linuxfromscratch.org/blfs/wiki/nss
        
       
      
        
          Instalação do NSS
        
        
          Instale NSS executando os
          seguintes comandos:
        
        patch -Np1 -i ../nss-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)
        
          Para executar os testes, execute os seguintes comandos:
        
        cd tests &&
HOST=localhost DOMSUF=localdomain ./all.sh
cd ../
        
          
          
            Nota
          
          
            Alguma informação relativa aos testes:
          
          
            
              - 
                
                  HOST=localhost e DOMSUF=localdomain são exigidas. Sem essas
                  variáveis, um FQDN é exigido que seja especificado e essa
                  forma genérica deveria funcionar para todos(as), desde que
                  localhost.localdomain
                  esteja definido em /etc/hosts, conforme feito 
                  no livro LFS.
                
               
              - 
                
                  Os testes tomam um tempo longo para executar. Se desejado,
                  existe informação no conjunto de comandos sequenciais
                  all.sh relativa a executar subconjuntos da suíte total de
                  teste.
                
               
              - 
                
                  Ao interromper os testes, a suíte de teste falha ao
                  desligar os servidores de teste que estão executando. Isso
                  leva a um loop infinito nos testes em que a suíte de teste
                  tenta matar um servidor que não mais existe porque extrai o
                  PID errado.
                
               
              - 
                
                  Os resultados da suíte de teste (em formato HTML!) podem
                  ser encontrados em
                  ../../test_results/security/localhost.1/results.html
                
               
              - 
                
                  Uns poucos testes podem falhar em algumas máquinas Intel
                  por razões desconhecidas.
                
               
            
           
         
        
          Agora, como o(a) usuário(a) 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
       
      
        
          Explicações do Comando
        
        
          BUILD_OPT=1: Essa opção é
          passada para make de
          modo que a construção seja realizada sem símbolos de depuração
          embutidos nos binários e as otimizações padrão do compilador sejam
          usadas.
        
        
          NSPR_INCLUDE_DIR=/usr/include/nspr:
          Essa opção configura o local dos cabeçalhos nspr.
        
        
          USE_SYSTEM_ZLIB=1: Essa
          opção é passada para make para garantir que a
          biblioteca libssl3.so esteja
          vinculada ao zlib instalado do
          sistema em vez da versão em árvore.
        
        
          ZLIB_LIBS=-lz: Essa opção
          fornece os sinalizadores de vinculador necessários para vincular ao
          zlib do sistema.
        
        
          $([ $(uname -m) = x86_64 ] &&
          echo USE_64=1): A opção USE_64=1 é exigida em x86_64, caso contrário,
          make tentará (e
          falhará) criar objetos de 32 bits. O teste [ $(uname -m) = x86_64 ]
          garante que não tenha efeito em um sistema de 32 bits.
        
        
          ([ -f /usr/include/sqlite3.h ]
          && echo NSS_USE_SYSTEM_SQLITE=1): Isso
          testa se o sqlite está instalado
          e, se estiver, echo a
          opção NSS_USE_SYSTEM_SQLITE=1 para make, de modo que libsoftokn3.so vinculará à versão do sistema do
          sqlite.
        
        
          NSS_DISABLE_GTESTS=1: Se você não
          precisa executar a suíte de teste NSS, anexe essa opção ao comando
          make, para evitar a
          compilação dos testes e economizar algum tempo de construção.
        
       
      
        
          Configurando NSS
        
        
          Se p11-kit-0.25.5 estiver instalado, o módulo de
          confiança do p11-kit (/usr/lib/pkcs11/p11-kit-trust.so) pode ser usado
          como um substituto imediato para /usr/lib/libnssckbi.so para transparentemente
          tornar as ACs do sistema disponíveis para aplicativos cientes de
          NSS, em vez da biblioteca estática
          fornecida por /usr/lib/libnssckbi.so.
          Como o(a) usuário(a) root, execute
          o seguinte comando:
        
        ln -sfv ./pkcs11/p11-kit-trust.so /usr/lib/libnssckbi.so
        
          Além disso, para aplicativos dependentes que não usam a base de
          dados interna (/usr/lib/libnssckbi.so), o script /usr/sbin/make-ca incluído na página make-ca-1.16.1 pode gerar uma base de dados
          NSS abrangente ao sistema com a chave -n ou modificando o arquivo
          /etc/make-ca/make-ca. conf.
        
       
      
        
          Conteúdo
        
        
          
            
              Aplicativos Instalados:
              certutil, nss-config e pk12util
            
            
              Bibliotecas Instaladas:
              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 e libssl3.so
            
            
              Diretórios Instalados:
              /usr/include/nss
            
           
         
        
          
            Descrições Curtas
          
          
            
              
              
            
            
              
                | 
                   
                    certutil
                   
                 | 
                
                   
                    é a ferramenta de base de dados de certificados da
                    Mozilla. É um utilitário de linha de comando que consegue
                    criar e modificar os arquivos de base de dados cert8.db e
                    key3.db do Netscape Communicator. Ele também consegue
                    listar, gerar, modificar ou deletar certificados dentro
                    do arquivo cert8.db e criar ou mudar a senha, gerar novos
                    pares de chaves públicas e privadas, exibir o conteúdo da
                    base de dados de chaves ou deletar pares de chaves dentro
                    do arquivo key3.db
                   
                 | 
              
              
                | 
                   
                    nss-config
                   
                 | 
                
                   
                    é usado para determinar as configurações da biblioteca
                    NSS das bibliotecas instaladas NSS
                   
                 | 
              
              
                | 
                   
                    pk12util
                   
                 | 
                
                   
                    é uma ferramenta para importar certificados e chaves a
                    partir de arquivos PKCS #12 para o NSS ou exportá-los.
                    Ele também consegue listar certificados e chaves nesses
                    arquivos
                   
                 |