J'ai des postes de travail Ubuntu gérés de manière centralisée qui authentifient les utilisateurs auprès d'Active Directory et montent les dossiers d'accueil des utilisateurs lors de la connexion avec pam_mount. Cela fonctionne généralement comme prévu, mais parfois, les dossiers de départ ne se montent pas et pour chaque volume à monter, j'obtiens ceci /var/log/auth.log
:
(mount.c:72): Messages from underlying mount program:
(mount.c:76): mount error(115): Operation now in progress
(mount.c:76): Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
(pam_mount.c:522): mount of data/users/username/documents failed
Il se bloque pendant plus de 10 secondes sur chaque volume, donc connectez-vous ou faites su
par exemple peut littéralement prendre quelques minutes. Lorsque j'ouvre un autre terminal pendant ce temps, je reçois exceptionnellement
I have no [email protected]:~$
Je vois ceci dans syslog
:
Jun 11 18:28:16 VP-OH-01L kernel: [35851.544770] Status code returned 0xc000006d NT_STATUS_LOGON_FAILURE
Jun 11 18:28:16 VP-OH-01L kernel: [35851.544787] cifs_vfs_err: 10 callbacks suppressed
Jun 11 18:28:16 VP-OH-01L kernel: [35851.544789] CIFS VFS: Send error in SessSetup = -13
Jun 11 18:28:16 VP-OH-01L kernel: [35851.544912] CIFS VFS: cifs_mount failed w/return code = -13
Jun 11 18:28:26 VP-OH-01L kernel: [35861.554651] CIFS VFS: Error connecting to socket. Aborting operation.
Jun 11 18:28:26 VP-OH-01L kernel: [35861.554822] CIFS VFS: cifs_mount failed w/return code = -115
Jun 11 18:28:36 VP-OH-01L kernel: [35871.564834] CIFS VFS: Error connecting to socket. Aborting operation.
Jun 11 18:28:36 VP-OH-01L kernel: [35871.565010] CIFS VFS: cifs_mount failed w/return code = -115
Il se connecte toujours (et n'avertit pas de la connexion hors ligne qu'il fait lorsqu'il n'y a pas de connexion) donc il y a une connexion entre le poste de travail et le domaine.
Je vais vider toutes mes configurations associées ci-dessous ; désolé pour un mur de texte ! Dans /etc/security/pam_mount.conf.xml
J'ai environ 10 configs comme celle-ci :
<volume user="*" fstype="cifs" server="ou.domain.com" path="data/users/%(USER)/documents" mountpoint="~/Documents" options="uid=%(USER),gid=100,dir_mode=0700,file_mode=0700,nounix,iocharset=utf8,rw,sec=ntlmsspi" />
Dans /etc/pam.d/common-auth
:
auth [success=2 default=ignore] pam_unix.so nullok_secure
auth [success=1 default=ignore] pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass
auth requisite pam_deny.so
auth required pam_permit.so
auth optional pam_mount.so disable_interactive
Dans /etc/pam.d/common-session
:
session [default=1] pam_permit.so
session requisite pam_deny.so
session required pam_permit.so
session optional pam_umask.so
session required pam_unix.so
session optional pam_winbind.so
session optional pam_mount.so disable_interactive
session optional pam_systemd.so
Dans /etc/hosts
:
127.0.0.1 localhost
127.0.1.1 COMPUTER_FQDN COMPUTER_HOSTNAME
Dans /etc/krb5.conf
:
[libdefaults]
default_realm = OU.DOMAIN.COM
ticket_lifetime = 24000
default_tgs_enctypes = rc4-hmac des-cbc-md5
default_tkt_enctypes = rc4-hmac des-cbc-md5
permitted_enctypes = rc4-hmac des-cbc-md5
dns_lookup_realm = true
dns_lookup_kdc = true
dns_fallback = yes
krb4_config = /etc/krb.conf
krb4_realms = /etc/krb.realms
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true
[realms]
OU.DOMAIN.COM = {
kdc = ou.domain.com:88
default_domain = ou.domain.com
}
[domain_realm]
.ou.domain.com = OU.DOMAIN.COM
ou.domain.com = OU.DOMAIN.COM
[login]
krb4_convert = true
krb4_get_tickets = false
Dans /etc/nsswitch.conf
:
passwd: compat winbind
group: compat winbind
shadow: compat
gshadow: files
hosts: files dns wins
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
Dans /etc/security/pam_winbind.conf
:
cached_login = yes
Et enfin, dans /etc/samba/smb.conf
:
[global]
netbios name = COMPUTER_HOSTNAME
security = ADS
workgroup = OU
realm = OU.DOMAIN.COM
encrypt passwords = yes
idmap config *:backend = rid
idmap config *:range = 5000-100000
dedicated keytab file = /etc/krb5.keytab
kerberos method = secrets and keytab
winbind refresh tickets = yes
winbind trusted domains only = no
winbind use default domain = yes
winbind enum users = yes
winbind enum groups = yes
winbind offline logon = yes
client ntlmv2 auth = yes
client ldap sasl wrapping = sign
template shell = /bin/bash
wins server = 192.168.0.70
name resolve order = lmhosts host wins bcast
Les postes de travail ont Ubuntu 16.04. Cela se produit de manière très aléatoire lorsque je démarre l'ordinateur et que je me connecte (ou plus tard su
à un autre utilisateur du domaine) et je n'ai pas trouvé de moyen de le reproduire. Parfois, cela fonctionne comme un charme. Les postes de travail sont connectés au LAN via Ethernet et le DC est dans le même LAN (bonne connexion). Je suis à court d'idées et toute aide ou suggestion sera très appréciée 🙂