나는 sudo 작업을 위해 호출되는 Linux 용 PAM을 구현하려고하는데, 그 목적은 사용자가 cmd에서 sudo 작업을 수행 할 때 암호를 입력 한 직후에 자신의 모바일로 전송 된 SMS를 요청하는 것입니다.이 암호를 묻는 것 같습니다. Linux의 기본 PAM 인 common-auth PAM에 의해 사용자가 입력 한이 일반 비밀번호는 해시로 변환 한 다음 섀도우 파일의 해시와 비교하여이 common-auth PAM에 의해 유효성을 검사합니다. 이제이 공통 인증 PAM 인증 후에 내 사용자 지정 PAM이 호출되지만 사용자가 입력 한 일반 암호에 대한 액세스 권한을 얻지 못합니다 (사용자의 일반 사용자 이름과 암호로 API 호출을해야하기 때문에 중요합니다. 내 사용자 지정 PAM에서), sudo 후에 사용자가 입력 한 일반 암호에 액세스하려면 어떻게해야합니까? 일반 인증 PAM에서 사용자 지정 PAM으로 일반 암호를 전달할 수 있습니까?
사용자가 SUDO를 시도 할 때 다중 요소 인증 역할을하는 사용자 지정 PAM을 구현하려고합니다. 따라서 이러한 사용자 자격 증명을 내 모바일로 SMS (OTP)를 보내는 API로 보내야합니다. API 요청을 보내는 C 프로그램이 있으며 해당 프로그램에 암호를 전달해야합니다.
"pwd.h"파일에서 사용자 이름에 액세스했습니다. 그러나 암호에 액세스 할 수 없습니다.
PAM 모듈에서 사용자의 인증 토큰을 얻는 방법은 pam_get_authtok
.
그러나 암호를 전달하는 것은 일반적으로 나쁜 생각입니다. SMS 전송 서비스가 실제로 사용자의 비밀번호를 알아야합니까? (나는 대답을 찾는 것이 아니라 단지 그것에 의문을 제기 할 가치가 있다고 제안합니다.)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다