답변:
이 블로그 게시물 제목을 살펴보십시오. 데스크톱에서 Google 2 단계 인증이란 무엇입니까?
sudo apt-get install libpam-google-authenticator
google-authenticator
블로그 게시물에 따르면 포함 된 PAM 모듈을 환경에 추가 할 때 Google OTP를 활용할 수있는 2 단계 인증이 포함 된 lightdm-kde 버전이 있습니다.
auth required pam_google_authenticator.so
GUI 로그인 결과는 다음과 같습니다.
다음과 같이 Google OTP 모듈을 설치하십시오.
sudo apt-get install libpam-google-authenticator
이제 google-authenticator
Google OTP를 사용하려는 모든 사용자에 대해 (터미널 내부)를 실행 하고 지침을 따르십시오. 스마트 폰 (또는 링크) 및 비상 코드로 스캔 할 수있는 QR 코드가 제공됩니다.
Google OTP를 활성화하려면 /etc/pam.d/ 디렉토리를 살펴보십시오 . 컴퓨터를 인증하는 모든 방법을위한 파일이 있습니다. Google OTP와 함께 사용하려는 모든 서비스에 대한 구성 파일을 편집해야합니다. SSH와 함께 사용하려면 sshd를 편집 하고 LightDM에서 사용하려면 lightdm을 편집 하십시오 . 해당 파일 에서 다음 행 중 하나 를 추가하십시오 .
auth required pam_google_authenticator.so nullok
auth required pam_google_authenticator.so
사용자를 여전히 Google OTP로 마이그레이션하는 동안 첫 번째 줄을 사용하십시오. 구성하지 않은 사용자는 여전히 로그인 할 수 있습니다. 두 번째 줄은 Google OTP 사용을 강제합니다. 계정이없는 사용자는 더 이상 로그인 할 수 없습니다. sshd의 경우 암호에 대한 무차별 대입 공격을 방지하기 위해 파일 맨 위에 줄을 두는 것이 매우 중요 합니다.
LightDM에 추가하려면 다음을 수행하십시오.
echo "auth required pam_google_authenticator.so nullok" | sudo tee -a /etc/pam.d/lightdm
이제 로그인하면 비밀번호와 2 단계 인증 코드를 별도로 요청 받게됩니다.
홈 암호화 (ecryptfs)를 사용하는 경우 $ HOME / .google_authenticator 파일 은 PAM 모듈에서 읽을 수 없습니다 (아직 암호화되어 있기 때문). 이 경우 다른 곳으로 옮기고 PAM에게 어디서 찾을 수 있는지 알려주십시오. 가능한 줄은 다음과 같습니다.
auth required pam_google_authenticator.so secret=/home/.ga/${USER}/.google_authenticator
/home/.ga 에 사용자 이름이있는 모든 사용자에 대한 디렉토리를 작성하고 해당 디렉토리의 소유권을 사용자로 변경해야합니다. 그런 다음 사용자는 google-authenticator
생성 된 .google-authenticator 파일을 실행 하고 해당 디렉토리로 이동할 수 있습니다 . 사용자는 다음 줄을 실행할 수 있습니다.
sudo install -g $(id -rgn) -o $USER -m 700 -d /home/.ga/$USER
google-authenticator
mv $HOME/.google_authenticator /home/.ga/$USER
그러면 모듈이 파일에 액세스 할 수 있습니다.
다른 옵션은 README를 확인하십시오 .
위에서 설명한대로 구성된 ssh에서 2 단계 인증을 사용하면 암호에 대한 무차별 대입 공격이 발생할 수 있습니다. 그것은 이미 첫 번째 요소 인 암호를 손상시킬 수 있습니다. 그래서 개인적으로 나는 바닥에 만에 있지 다음 줄을 추가하기로 결정 상단 의 /etc/pam.d/sshd
이전 클리 어리 언급되지 않은 것처럼 파일 :
auth required pam_google_authenticator.so
그러면 먼저 인증 코드를 입력 한 다음 암호를 입력하라는 메시지가 표시됩니다 (확인 코드를 올바르게 입력했는지 여부에 관계없이). 이 구성을 사용하면 인증 코드 또는 비밀번호를 잘못 입력 한 경우 다시 입력해야합니다. 나는 조금 더 성가신 일이지만 동의합니다. 보안 또는 보안 감각을 원하십니까?