Điểm:0

kinit Password Expire Warning

lá cờ dz

I've a Ubuntu desktop client joined to an Active Directory 2008 R2 domain.

I need to use "kinit" command on Linux to determine when a user password will expire. That's my way to go due to other scripts running on system so can't / don't want to change that approach.

However, as far as I saw, kinit returns password expire warning for 7 days or lower. Can I change this attitude? What makes kinit return the password expire warning message for 7 days or shorter timespan?

Điểm:0
lá cờ cn

Nó có thể phụ thuộc vào cài đặt trong Active Directory - nó được đặt trong Chính sách nhóm, trong: Đăng nhập tương tác: Nhắc người dùng thay đổi mật khẩu trước khi hết hạn.

Vì vậy, hãy kiểm tra với quản trị viên AD. Có thể áp dụng chính sách này cho các đơn vị tổ chức, vì vậy nếu tài khoản của bạn nằm trong một đơn vị tổ chức cụ thể, bạn có thể đặt cảnh báo dài hơn ở đó. Của nó kỹ thuật có thể, ít nhất. Có thể có những hạn chế hoạt động.

Ngoài ra, máy có được kết nối thông qua sssd? Rất đáng để đọc bài viết này để xem có điều gì đó trong sssd.conf điều đó có thể ghi đè giá trị được gửi từ AD. Nếu nó không được đặt trong sssd.conf ở tất cả, nó sẽ chỉ kế thừa những gì AD đang gửi. https://access.redhat.com/articles/3027531

Nếu quản trị viên miền nói rằng nó được đặt thành 7 ngày và sẽ không thay đổi, thì không rõ liệu bạn có thể định cấu hình hay không sssd.conf để cung cấp khoảng thời gian cảnh báo dài hơn - tôi nghi ngờ rằng nó có thể ghi đè lên AD theo cách đó.

Ngoài ra, bạn có thể thực hiện truy vấn LDAP trên tài khoản người dùng AD và lấy thuộc tính có tên msDS-UserPasswordExpiryTimeComputed - giá trị có tick qua ngày kỷ nguyên Windows.

Để tính ngày trên hệ thống Linux, ngày của kỷ nguyên Windows là 1601-01-01T00:00:00Z, tức là 11644473600 giây trước kỷ nguyên *nix (1970-01-01T00:00:00Z). Các dấu tích của Windows tính bằng 100 nano giây. Vì vậy, để tính toán đơn giản:

$tickInterval = 10000000
$unixEpochDiff = 11644473600
# khoảng thời gian được chụp từ msDS-UserPasswordExpiryTimeComputed
$ADPasswordExpiryTime = 132985454614249065 
$unixTime = ($userPasswordExpiryTime / $tickInterval) - $unixEpochDiff

Hiện tại, tôi không có cách nào để kiểm tra truy vấn LDAP từ hệ thống dựa trên Linux sang AD, nhưng có thể đáng để thử nếu không có cách nào khác hữu ích.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.