본문 바로가기
IT와 코딩

리눅스 유저들 패스워드 변경 없이 암호변경 날짜 바꿔서 연장하는 쉘 스크립트

by 불타는통닭 2024. 5. 4.

쉘스크립트 잘 모르는 데 한번 짜본다고 삽질해서 서버 히트 시켜서 다운시켜버림 ㅜㅜ

 

이야 내가 짤려고 생고생 했었는 데 역시 chat-GPT 한테 물어보니 바로 알려주네

 

유저들 패스워드 날짜 임의 변경하는 방법

UID 를 1000 이상을 찾아서 진짜 유저를 구별해내는 발상을 할 수 있다니 대단하다.

난 상상도 못했네;;; /etc/shadow 에 있는 id를 다 바꿀려고 했는 데

#!/bin/bash

# 어제 날짜를 YYYY-MM-DD 형식으로 가져옵니다.
yesterday=$(date -d "yesterday" +%Y-%m-%d)

# UID가 1000 이상인 사용자들을 찾아서 각 사용자에 대해 실행합니다.
getent passwd | awk -F: '$3 >= 1000 {print $1}' | while read user; do
  echo "사용자 $user의 암호 변경 날짜를 어제로 설정 중입니다."
  sudo chage -d "$yesterday" "$user"
done

echo "모든 사용자의 암호 변경 날짜가 어제로 업데이트되었습니다."

 

쉘스크립트 결과

댓글