GNU/Linux >> Linux Esercitazione >  >> Linux

Come ottenere la data di scadenza della password dell'utente da Active Directory?

Ciò dipende dalla configurazione del controller di dominio. Puoi provare:

net ads user info [email protected] -S DC_SERVER_NAME -U USERNAME

dove [email protected] è l'account da cui raccogliere informazioni, DC_SERVER_NAME è il nome host del tuo controller di dominio e USERNAME è il tuo nome utente.

Ti verrà richiesta la password del tuo dominio.

Ora ottieni informazioni sul tuo account, inclusa la data di scadenza della tua password o ottieni

ads_pull_uint32 failed

in questo caso, il controller di dominio non è configurato per fornire informazioni sull'account a sistemi simili a UNIX.

Puoi contattare il tuo amministratore di dominio per convincerlo a installare e configurare Microsoft Windows Services per UNIX in modo che questo comando ti fornisca le informazioni necessarie.

Questa risposta potrebbe essere frustrante. È per me perché mi trovo nella stessa situazione e ho studiato molto l'argomento.

La mia soluzione alternativa:ho impostato un promemoria del calendario 80 giorni in futuro, quando imposto la mia password di dominio (smbpasswd -U USERNAME -r DC_SERVER_NAME), poiché scade ogni 90 giorni. Non perfetto, ma realizzabile.

[AGGIORNAMENTO] Ho trovato un modo per determinare la data di scadenza della tua password di dominio con rpcclient, ecco il mio script:

#!/bin/bash
# author: Tim Wahrendorff 2016
# licence: Public Domain - https://wiki.creativecommons.org/wiki/Public_domain
# 
# To use this script you need at least: 
# sudo apt-get install libnotify-bin rpcclient
#
# Please set your account, password and domaincontroller to use this script


USER="username" # Domain accountname
PASS="Pa$$W0rd" # Domain password
DC="vmdc01"     # Domaincontroller

### START RPCCLIENT query
if [ "x$USERDCID" == "x" ]; then
    RPCLOOKUPID=$(rpcclient -U $USER%$PASS -c "lookupnames $USER" $DC 2> ./rpc_errFile)

    USERDCID=$(echo "$RPCLOOKUPID" | grep -e '[0-9]\{4,9\} ' -o)
fi

QUERYUSER=$(rpcclient -U $USER%$PASS -c "queryuser $USERDCID" $DC 2> ./rpc_errFile)

EXPDATE=$(echo "$QUERYUSER" | grep 'Password must change Time' | grep -e '[a-Z]\{2\}, [0-9]\{2\} [a-Z]\{3\} [0-9]\{4\} [0-9]\{2\}:[0-9]\{2\}' -o)

## Load rpc error Message
RPCERR=$(<./rpc_errFile)

## send notifications to Unity Desktop
if [ "x$RPCERR" != "x" ]; then
    notify-send -i /usr/share/icons/gnome/48x48/status/dialog-error.png "Error while fetching expiration date of your domain password" "$RPCERR"    
else
    notify-send -i /usr/share/icons/gnome/48x48/status/dialog-information.png "your domain password expires at " "$EXPDATE h"
fi

### END RPCCLIENT query

Ho configurato questo script per l'esecuzione all'avvio automatico, mi mostra quando la mia password di dominio scadrà in una notifica Unity. Sentiti libero di estendere, migliorare e ripubblicare questo script, è di pubblico dominio.

[/AGGIORNARE]


Su Linux puoi usare pdbedit

pdbedit -L -v -u <username>

E cerca la riga:La password deve cambiare


Linux
  1. Come modificare le autorizzazioni dall'utente root a tutti gli utenti?

  2. Reimposta una password utente di Active Directory

  3. Come ottenere la dimensione della directory in Linux

  4. come cercare una directory dal terminale in ubuntu

  5. Come usare realmd in Ubuntu 14.04 LTS per entrare in un dominio di Active Directory?

Come reimpostare la password utente amministratore weblogic

Come modificare la password utente di MySQL da cPanel?

Come modificare la password utente del database MS SQL da SolidCP?

Come modificare la password utente del database MS SQL da WebsitePanel 2.1?

Procedura:configurazione di Active Directory in Windows Server 2012

Come ottenere il nome di dominio in Windows usando il comando?