Intégrer un client linux sur un domaine windo

diminou42 Messages postés 42 Statut Membre -  
 Serge -
Bonjour,
est t-il possible d'intégrer un poste client linux mandriva dans un domaine windows 2003 server
Configuration: Windows XP
Internet Explorer 7.0

14 réponses

  1. serge
     
    Salut,

    en effet, il peut être gênant de ne pas voir les machines Linux depuis un ou plusieurs contrôleurs de domaine.

    Et, oui, il est tout à fait possible d'intégrer ta station Mandriva dans l'Active Directory d'un domaine.

    L'exemple ci-dessous provient d'une Mandriva 2007 qui tourne sur Virtual PC 2007 au sein d'une forêt qui regroupe plusieurs domaines. Ma station tourne sous Windows XP Pro et le contrôleur du domaine sous Windows 2003.

    Voici une méthode minimale pour le faire :

    Préalable :

    S'assurer que l'heure de la machine Linux est synchronisée avec un serveur NTP du domaine.
    La validité d'un ticket Kerberos dépend de l'heure.
    Installer les logiciels Samba client, krb5-user, winbind

    Attention dans les exemples suivants, il est important de respecter la casse, mondomaine ou MONDOMAINE.

    1) Mise en place d'un nom de domaine pleinement qualifié en modifiant le fichier /etc/hosts
    Y placer la ligne suivante :
    127.0.0.1 mondomaine localhost Nom_du_Pc

    2) Modifier le fichier /etc/krb5.conf comme suit :

    [logging]
    default = FILE:/var/log/kerberos/krb5libs.log
    kdc = FILE:/var/log/kerberos/krb5kdc.log
    admin_server = FILE:/var/log/kerberos/kadmind.log

    [libdefaults]
    ticket_lifetime = 24000
    default_realm = MONDOMAINE
    default_tgs_enctypes = des3-hmac-sha1 des-cbc-crc
    default_tkt_enctypes = des3-hmac-sha1 des-cbc-crc
    permitted_enctypes = des3-hmac-sha1 des-cbc-crc
    dns_lookup_realm = false
    dns_lookup_kdc = false
    kdc_req_checksum_type = 2
    checksum_type = 2
    ccache_type = 1
    forwardable = true
    proxiable = true

    [realms]
    MONDOMAINE = {
    kdc = CONTROLEURDOMAINE.mondomaine:88
    admin_server = CONTROLEURDOMAINE.mondomaine
    default_domain = MONDOMAINE
    }

    [domain_realm]
    .mondomaine = MONDOMAINE

    [kdc]
    profile = /etc/kerberos/krb5kdc/kdc.conf

    [pam]
    debug = false
    ticket_lifetime = 36000
    renew_lifetime = 36000
    forwardable = true
    krb4_convert = false

    [login]
    krb4_convert = false
    krb4_get_tickets = false

    3) Tester la configuration

    Taper la commande : kinit nom_utilisateur
    Taper son mot de passe du domaine

    Taper la commande klist et vérifier qu'on obtient un ticket Kerberos valide.

    En réponse, on un texte du genre :
    Ticket cache : FILE:/tmp/krbc5cc_500
    Default principal: nom_utilisateur@MONDOMAINE

    Et aussi la date et l'heure de validité du ticket obtenu et sa date et heure d'expiration

    4) Configurer samba en modifiant le fichier /etc/samba/smb.conf

    Extraits :

    [global]
    # 1. Server Naming Options:
    # workgroup = NT-Domain-Name or Workgroup-Name
    workgroup = MONDOMAINE
    realm = MONDOMAINE
    password server = .mondomaine
    client use spnego = yes

    # netbios name is the name you will see in "Network Neighbourhood",
    # but defaults to your hostname
    netbios name = <LinuxVirtuel>

    # server string is the equivalent of the NT Description field
    #server string = Samba Server %v
    server string =

    # 4. Security and Domain Membership Options:
    security = ads

    # Use password server option only with security = server or security = domain
    # When using security = domain, you should use password server = *
    # password server = <NT-Server-Name>
    password server = CONTROLEURDOMAINE.mondomaine

    encrypt passwords = no

    # Domain Master specifies Samba to be the Domain Master Browser. This
    # allows Samba to collate browse lists between subnets. Don't use this
    # if you already have a Windows NT domain controller doing this job
    domain master = no

    Puis

    Créer les répertoires pour l'utilisateur et en modifier les permissions

    mkdir /home/MONDOMAINE
    chmod 777 /home/MONDOMAINE

    Redémarrer les services samba et winbind

    Joindre le domaine Windows 2003 à l'aide de la commande :

    sudo net join -U nom_utilisateur -S (IP du controleur de domaine) sans les parenthèses

    A ce stade, la machine doit être visible dans l'Active Directory :

    5) Modifier l'ordre de recherche des sources de données en éditant le fichier /etc/nsswitch.conf

    # For more information, please read the nsswitch.conf.5 manual page.
    #

    passwd: compat winbind
    shadow: compat
    group: compat winbind

    hosts: files dns wins
    networks: files

    services: files
    protocols: files
    rpc: files
    ethers: files
    netmasks: files
    netgroup: files
    publickey: files

    bootparams: files
    automount: files
    aliases: files

    6) Tester la connexion :

    Au préalable, redémarrer les services samba et winbind,

    Vérifier la connexion au domaine à l'aide de la commande wbinfo -u
    On obtient une liste des utilisateurs du domaine

    Avec la commande wbinfo -g on visualise les groupes.

    Il est possible de voir les bases de données passwd et group avec les commandes :
    sudo getent passwd
    sudi getent group

    On doit retrouver dans la liste des identifiants du domaine Windows 2003, si c'est le cas, Kerberos est correctement configuré.

    Il me reste à tester la configuration de PAM (Pluggable Authentication Modules) pour gérer l'authentification sous Linux pour que Kerberos soit accepté en parallèle à l'authentification Linux normale.

    Il y aura sans doute des modifications à prévoir dans le fichier smb.conf pour autoriser la gestion de PAM
    (obey pam restrictions = yes) et la création à la volée des répertoires pour l'utilisateur qui se connecte en vérifiant si la commande service=system-auth-winbind est présente dans le fichier /etc/pam.d/samba

    Voilà, bon travail, et ne te décourage pas si tu croises encore un gars qui te dis : "y a qu'à utiliser Samba" ;)

    Serge
    22
    1. ericstifler Messages postés 40 Statut Membre
       
      bonjour désolé de vous déranger mais jai un problème urgent à régler avec ma config de krb5 . enfet je veux faire intégrer ma machine linux dans un domaine windows . jai suivi les config de serges et merci déjà mais jai un message d'erreur quand je fait kinit technique j'ai le message d'erreur suivant cannot resolvenetwork adress for kdc in requested realm while getting initial credentials

      mon fichier /etc/hostame

      ccm5

      mon fichier /etc/hosts

      127.0.0.1 CONNECTY localhost ccm5
      127.0.0.1 localhost

      # The following lines are desirable for IPv6 capable hosts
      ::1 ip6-localhost ip6-loopback
      fe00::0 ip6-localnet
      ff00::0 ip6-mcastprefix
      ff02::1 ip6-allnodes
      ff02::2 ip6-allrouters
      ff02::3 ip6-allhosts

      mon fichier /etc/krb5.conf

      [libdefaults]
      ticket_lifetime = 24000
      default_realm = CONNECTY
      # The following krb5.conf variables are only for MIT Kerberos.
      dns_lookup_realm = false
      kdc_req_checksum_type = 2
      krb4_config = /etc/krb.conf
      krb4_realms = /etc/krb.realms
      kdc_timesync = 1
      checksum_type = 2
      ccache_type = 1
      forwardable = true
      proxiable = true

      # The following encryption type specification will be used by MIT Kerberos
      # if uncommented. In general, the defaults in the MIT Kerberos code are
      # correct and overriding these specifications only serves to disable new
      # encryption types as they are added, creating interoperability problems.

      default_tgs_enctypes = aes256-cts arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc des-cbc-md5
      default_tkt_enctypes = aes256-cts arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc des-cbc-md5
      permitted_enctypes = aes256-cts arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc des-cbc-md5

      [realms]
      CONNECTY = {
      kdc = SERVYDE.connecty:88
      admin_server = SERVYDE.connecty
      default_domain = CONNECTY
      }


      [pam]
      debug = false
      ticket_lifetime = 36000
      renew_lifetime = 36000
      forwardable = true
      krb4_convert = false

      [login]
      krb4_convert = false
      krb4_get_tickets = false


      jespère que yaura kelkun pour me venir en aide merci davance
      0