これは、ドメインコントローラーの構成によって異なります。試すことができます:
net ads user info [email protected] -S DC_SERVER_NAME -U USERNAME
ここで、[email protected] は情報を収集するアカウント、DC_SERVER_NAME はドメイン コントローラーのホスト名、USERNAME はユーザー名です。
ドメイン パスワードの入力を求められます。
これで、パスワードの有効期限を含む情報をアカウントに取得するか、取得します
ads_pull_uint32 failed
この場合、ドメイン コントローラーは UNIX 系システムにアカウント情報を提供するように構成されていません。
このコマンドで必要な情報が得られるように、ドメイン管理者に連絡して、Microsoft Windows Services for UNIX をインストールして構成するよう説得してください。
この答えはイライラするかもしれません。私は同じ状況にあり、このトピックについて多くのことを研究したので、それは私のためです。
私の回避策:ドメイン パスワード (smbpasswd -U USERNAME -r DC_SERVER_NAME) を設定するときに、カレンダーのリマインダーを 80 日後に設定しました。これは、90 日ごとに有効期限が切れるためです。完璧ではありませんが、実行可能です。
[更新] rpcclient でドメイン パスワードの有効期限を確認する方法を見つけました。スクリプトは次のとおりです:
#!/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
このスクリプトを自動起動時に実行するように構成しました。Unity 通知で、ドメイン パスワードの有効期限が切れると表示されます。このスクリプトは自由に拡張、改善、再公開してください。パブリック ドメインです。
[/更新]
Linux では pdbedit を使用できます
pdbedit -L -v -u <username>
次の行を探します:Password must change