Cliente NFS do Windows 7 usando Kerberos e Linux KDC

7

Estou tentando configurar um cliente do Windows 7 Enterprise para montar um compartilhamento NFSv4 em um servidor Linux NFS usando o Kerberos e um KDC Linux.

A configuração é:

  • Servidor IPA (SO: Scientific Linux 6.4, Pacote: ipa-server)
  • Servidor NFS (SO: Scientific Linux 6.4, Pkg: nfs-utils)
  • Cliente do Windows 7 (SO: Enterprise de 64 bits, Recurso: Client for NFS)

Etapas:

  1. No IPA Server, crie um principal para o cliente windows, com uma senha:

    ipa host-add --ip-address=10.10.0.100 win7ent-client.contoso.com
    ipa-getkeytab -s ipa.contoso.com -p host/win7ent-client.contoso.com -k win7ent-client.keytab -P
    ^
    | 
    This will create a principal and register the client with IPA server
    Set a random password - e.g. - jU96e3Urp6
    

    Adicione o serviço NFS ao cliente:

    ipa service-add nfs/win7ent-client.contoso.com

  2. No cliente do Windows:

    ksetup /setdomain CONTOSO.COM
    ksetup /setmachpassword <password set on step 1>
    ksetup /addrealmflags CONTOSO.COM sendaddress delegate
    ksetup /mapuser * *
    

    Reinicie o Windows Client

    Executar:

    ksetup.exe /DumpState

    Isso mostra a configuração atual:

    default realm = CONTOSO.COM (external)
    CONTOSO.COM:
        (no kdc entries for this realm)
        Realm Flags = 0x5 SendAddress Delegate
    Mapping all users (*) to a local account by the same name (*).
    

    No cliente Windows, crie um usuário local, uma senha não é necessária, com um nome que exista no servidor IPA. Ou então você obterá o erro - 1332: Nenhum mapeamento entre os nomes de conta e as identificações de segurança foi feito

    Teste que você pode conseguir um ingresso como usuário:

    runas /user:[email protected] cmd

    Na nova janela de comando, execute:

    klist

    Isso gerará as informações atuais do ticket:

    Current LogonId is 0:0x6c70e

    Cached Tickets: (1)
    
    #0> Client: joe @ CONTOSO.COM
        Server: krbtgt/CONTOSO.COM @ CONTOSO.COM
        KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
        Ticket Flags 0x40e10000 -> forwardable renewable initial pre_authent name_canonicalize
        Start Time: 2/22/2014 5:22:07 (local)
        End Time:   2/23/2014 5:22:07 (local)
        Renew Time: 3/1/2014 5:22:07 (local)
        Session Key Type: AES-256-CTS-HMAC-SHA1-96
    
  3. Configuração do servidor NFS

    mkdir -p /winshare/joe
    chown -R joe:joe/winshare/joe
    exportfs -o rw,sec=krb5 *:/winshare/joe
    

Ao tentar montar o compartilhamento acima no cliente Windows:

mount -o sec=krb5 nfs.contoso.com:/winshare/joe E:

Eu recebo o seguinte erro:

Network Error - 121

Type 'NET HELPMSG 121' for more information.

C:\Windows\system32>NET HELPMSG 121

The semaphore timeout period has expired.

Tentativa de usar ms-nfs41-client-x64 também falha:

C:\Users\joe\Desktop\ms-nfs41-client-x64>nfs_mount.exe -o sec=krb5 * nfs.contoso.com:/winshare/joe

WNetUseConnection(*:, \nfs.contoso.com\winshare\joe) failed with error code 1231.
The network location cannot be reached. For information about network troubleshooting, see Windows Help.
  1. compartilhamento NFS usando sec = sys works
  2. Efetuando login no cliente Windows-7 enquanto Joe trabalha.
  3. Putty para o servidor NFS após o log do Windows funcionar (contanto que você instalar primeiro o cliente MIT Kerberos para windows).

A única coisa que não funciona é o NFS ao usar o Kerberos.

    
por Mike 22.02.2014 / 16:36

1 resposta

1

Até onde eu sei, esta etapa provavelmente não é necessária:

Add NFS service for the client:

ipa service-add nfs/win7ent-client.contoso.com

Você precisa do serviço nfs para um servidor.

Se tiver certeza de que precisa do serviço nfs para o cliente Windows, é muito provável que ele use exatamente a mesma senha que o principal do host para esse cliente.

Além disso: você ativou o nfs seguro no servidor? Eu não me lembro de detalhes quando mudei para o CentOS 7 há muito tempo (systemctl (enable | start) nfs-secure são seus amigos lá), mas eu acho que você deveria procurar isso em / etc / sysconfig / nfs.

    
por 09.09.2017 / 23:47