Estabelecimento de criptografia em trânsito para compartilhamentos de arquivos regionais

Estabeleça conexões de montagem criptografadas para compartilhamentos de arquivos regionais usando o Transport Layer Security ( TLS ) 1.2 + com o stunnel.

É possível estabelecer uma conexão de montagem criptografada entre o host de computação e um compartilhamento de arquivos regional criando uma conexão TLS 1.2 + com o stunnel. É possível ativar a criptografia segura de ponta a ponta ao usar compartilhamentos de arquivos com o modo de controle de acesso baseado em grupos de segurança e montar alvos com interfaces de rede virtuais (VNI). Quando esse destino de montagem é anexado e o compartilhamento é montado, o VNI verifica a política de grupo de segurança para garantir que somente instâncias autorizadas possam se comunicar com o compartilhamento.

O Stunnel é um aplicativo de código aberto, multifuncional e multiplataforma que oferece um serviço universal de tunelamento TLS / SSL. Ele utiliza a biblioteca OpenSSL para implementar o protocolo TLS subjacente. O Stunnel utiliza criptografia de chave pública com certificados digitais do tipo “ X.509 ” para proteger a conexão, e os clientes podem, opcionalmente, ser autenticados por meio de um certificado.

A cifra utilizada na conexão stunnel é o Advanced Encryption Standard de 128 bits no modo Galois/Counter ( AES-128-GCM ) ( TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 ), caso seja estabelecida por meio do utilitário Mount Helper. Para obter mais informações sobre conjuntos de criptografia aceitáveis, consulte o tópico “ IBM Cloud Framework for Financial Services ” – “Criptografia de dados em trânsito ”.

A instalação e a manutenção do aplicativo cliente stunnel são de sua responsabilidade. Para obter mais informações, consulte os recursos a seguir:

Pré-requisitos para a criptografia em trânsito com o Stunnel

É necessário atender aos seguintes requisitos antes de usar esse recurso:

  • O compartilhamento de arquivos deve se basear no perfil rfs e ser configurado com o modo de acesso Security Group.

  • O destino de montagem deve ser criado com uma interface de rede virtual. O host de computação e o destino de montagem devem ser membros do mesmo grupo de segurança. Para obter mais informações, consulte Criação de compartilhamentos de arquivos e alvos de montagem.

  • A criptografia de dados em trânsito deve estar ativada. No console, é possível ativar a criptografia em trânsito ao criar o destino de montagem. A propriedade API transit_encryption aceita o valor stunnel para ativar o recurso.

  • O Stunnel deve estar instalado no servidor. O serviço de arquivos IBM Cloud® oferece o utilitário Mount Helper para automatizar as tarefas necessárias no host de computação, como baixar, configurar e iniciar o aplicativo stunnel.

Montagem do compartilhamento de arquivos com o stunnel

  1. Use a seguinte sintaxe de comando para montar o compartilhamento. Substitua o caminho de montagem pelas informações específicas do seu compartilhamento de arquivos.

    mount -t ibmshare -o stunnel 10.0.0.1:/MOUNT_PATH /mnt/MOUNT_PATH
    

    Consulte o exemplo a seguir.

    ++ mount -v -o stunnel -t ibmshare 10.240.64.24:/EAD9B8582BC84FDAB57B7A315BCA1210 /mnt/EAD9B8582BC84FDAB57B7A315BCA1210
    Debug - Locked ok:/var/lock/ibm_mount_helper.lck
    Debug - File unlocked:/var/lock/ibm_mount_helper.lck
    Debug - Locked ok:/var/lock/ibm_mount_helper.lck
    Debug - RunCmd: ListNfsMounts (mount -t nfs,nfs4)
    Debug - Existing nfs/nfs4 mounts found:0
    Debug - RunCmd: ListNfsMounts (mount -t nfs,nfs4)
    Debug - Existing nfs/nfs4 mounts found:0
    Debug - Local port 10001 will be used for setting up next stunnel
    Debug - Starting stunnel for mounting /EAD9B8582BC84FDAB57B7A315BCA1210
    Debug - Stunnel conf file created /etc/stunnel/ibmshare_EAD9B8582BC84FDAB57B7A315BCA1210.conf
    Debug - Attempting to start stunnel using /etc/stunnel/ibmshare_EAD9B8582BC84FDAB57B7A315BCA1210.conf
    Debug - Attempting mount of /EAD9B8582BC84FDAB57B7A315BCA1210 on the local host
    Debug - RunCmd: Mount using stunnel  (mount -t nfs4 -o sec=sys,nfsvers=4.1,rw,port=10001 127.0.0.1:/EAD9B8582BC84FDAB57B7A315BCA1210 /mnt/EAD9B8582BC84FDAB57B7A315BCA1210 -v)
    Debug - Stunnel mount was successful
    Debug - File unlocked:/var/lock/ibm_mount_helper.lck
    
  2. Verifique a conexão verificando os logs do sistema para confirmar que o stunnel está em execução e que a conexão foi estabelecida com êxito. Você também pode executar o seguinte comando para visualizar o sistema de arquivos anexado:

    df -h
    

Implementando no_root_squash para NFS (opcional)

Por padrão, o NFS faz downgrade de quaisquer arquivos que foram criados com as permissões raiz para o usuário nobody. Esse é um recurso de segurança que impede que os privilégios sejam compartilhados, a menos que solicitados.

Ao configurar no_root_squash, os clientes com privilégios de root podem manter essas permissões no compartilhamento de arquivos remoto NFS.

Para o NFSv4.1, configure o domínio nfsv4 para: slnfsv4.com e inicie o rpcidmapd ou um serviço semelhante que seja usado por seu S.O.

  1. No servidor, defina a configuração do domínio em /etc/idmapd.conf.

    $ vi /etc/idmapd.conf
    [General]
    #Verbosity = 0
    #The following should be set to the local NFSv4 domain name
    #The default is the host's DNS domain name.
    Domain = slnfsv4.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    
  2. Execute o nfsidmap -c.