사용자가 유효한 로그인 창을 확장하지 못하게하는 방법


14

RedHat 상자에 대한 일부 보안 강화 절차를 수행하고 있으며 암호가 만료되면 사용자가 암호를 변경하지 못하게 할 수 있는지 알고 싶었습니다.

고객 중 하나의 경우 요구 사항은 임시 계정을 통해서만 서버에 액세스 할 수 있어야한다는 것입니다. 즉, 사용자 자격 증명이 생성되면 비밀번호는 4 시간 내에 만료되고 비밀번호가 만료되면 루트 만 변경할 수 있어야합니다. .

첫 번째 요구 사항 (4 시간 후에 만료되는 암호)의 경우 passwordMaxAge = 144000 설정하면 가능 합니다 . 그러나 암호 만료를 해제하지 않고 사용자가 만료 된 암호를 변경하지 못하게하는 방법을 여전히 찾을 수 없었습니다.

누구든지 도울 수 있습니까?


4
사용자가 기존 로그인 세션을 4 시간 동안 계속 열어도 괜찮습니까? 이미 로그인 한 경우 사용자 암호가 만료 되어도 암호가 나오지 않습니다. 몇 주 동안 SSH 세션을 열어 둘 수 있습니다.
Wyzard

at / cronjobs에 의존하지 않고 시스템 바이너리를 수정하는 대신 간단한 pam 모듈을 작성할 수도 있고, 심지어 pam 모듈이있을 수도 있습니다 (또는 더 많은 옵션을 포함하기 위해 pam_time을 포크 할 수도 있습니다)
PlasmaHH

답변:


21

일반적으로 비밀번호 만료는 사용자가 비밀번호를 변경 하도록 강제 하는 데 사용됩니다 . 원하는 것처럼 보이는 것은 계정 을 잠그는 것이므로 모든 로그인을 막을 수 있습니다.

대신 계정을 만들 때 4 시간 후에 계정을 잠그는 작업을 설정하는 것이 좋습니다.

예를 들면 다음과 같습니다.

useradd temp8143
echo chage -E 0 temp8143 | at now + 4 hours

( chage -E만료 날짜는 며칠 내로 제공 될 것으로 예상되므로 at at job으로 해결할 수 있습니다.)


3
좋은 해결책입니다. 나에게서 +1
Jenny D

2
아, 폭발-이 아이디어 좋아합니다 . 또한 +1. atted 조차 할 수 userdel있습니다.이 임시 계정을 모두 정리하여 영원히 멈추지 않을 수 있습니다.
MadHatter

2
나는 이것이 내 제안보다 낫다고 생각합니다.
Jenny D

나는 passwd -l temp813같은 것을 달성 할 것이라고 생각 chage -E 0 temp8143합니다.
Nate Eldredge

5
@NateEldredge 정확하지 않습니다. passwd -l예를 들어, ssh 키 로그인 또는 지문 로그인을 방지하지는 않습니다 chage -E 0.
Michael Hampton

24

passwd 명령에서 setuid 비트를 제거하면 루트 만 사용할 수 있습니다. 또한 암호 가 만료 되기 전에 사용자가 암호를 변경하지 못하도록합니다. 그렇지 않으면 사용자가 다른 4 시간 동안 계정을 확장 할 수 있습니다.

[jenny@finch ~] sudo chmod -s /usr/bin/passwd
[jenny@finch ~]$ passwd
Changing password for user jenny.
Changing password for jenny.
(current) UNIX password: 
New password: 
Retype new password: 
passwd: Authentication token manipulation error

루트는 여전히 모든 비밀번호를 변경할 수 있습니다.

[jenny@finch ~]$ sudo passwd jenny
Changing password for user jenny.
New password: 
Retype new password: 
passwd: all authentication tokens updated successfully.

5
우아하고 매우 유닉스. 나에게서 +1 @borntohula, "틱"개요를 클릭하여이 답변을 수락하는 것을 잊지 마십시오.
MadHatter

6
이것은 거의 작동합니다. 문제 passwd는 시스템에 의해 업데이트 된 경우 setuid 비트 제거가 취소된다는 것입니다.
Michael Hampton

3
@MichaelHampton True입니다. 고정은 예를 들어 꼭두각시입니다. 또한 모든 업데이트 후에 모든 사람이 시스템에서 새로운 setuid / setgid 비트를 확인하지 않습니까?
Jenny D

1
@JennyD-아마도 setuid / setgid 비트가 변경되었는지 확인 해야 하지만 거의 수행하지 않는 부분은 거의 없습니다.
warren

2
@warren-그 문장에 약간의 풍자적 흔적이있을 수 있습니다. 아주 작은 흔적. 소문자.
Jenny D
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.