보안 질문으로 SSH 로그인을 하시겠습니까?

보안 질문으로 SSH 로그인을 하시겠습니까?

이것이 가능한지 모르겠습니다. 하지만 Ubuntu 서버에 루트로 로그인한 후 실행할 스크립트를 만들거나 무엇이든 설치할 수 있습니까?! Ex, 3가지 보안 질문이 포함된 스크립트

전.

질문:네 생일이 언제 니?!

ㅏ :10.10.10 // if not die ban4Life

이것이 가능한가?! 고마워요, 그리고 미안해요"무지"

답변1

사전 생각: 기존의 비밀번호 기반 인증이나 더 나은 인증을 고수하는 것이 어떻습니까?공개키 인증다른 사람들처럼? 귀하의 솔루션은 기본적으로 일반 텍스트로 저장된 비밀번호를 추측하기 쉬운 초입니다. 사용자 정의 인증 체계는 보안을 강화하는 경우가 거의 없으며 심지어 보안을 약화시키는 경우도 많습니다.


PAM이 마음에 들지 않으면 SSH에 특정 로그인 스크립트를 사용하도록 구성할 수 있습니다 root. 다음과 같이 보일 수 있습니다.

#!/bin/sh
set -eu

while read -rp 'What is your birthday?!' REPLY
do
    case "$REPLY" in
        '')
            # empty input; ask again
            ;;

        '10.10.10')
            # Run original command if available or simply the user's log-in shell
            exec ${SSH_ORIGINAL_COMMAND-$SHELL -l};;

        *)
            break;;
    esac
done

echo "You're not welcome here. Go away!" >&2
exit 1

스크립트를 , 예를 들어 /root/login-with-birthday.sh실행 가능하게 만들고 비밀( chmod 0700)이 포함되어 있으므로 일반 사용자가 파일을 읽을 수 없도록 하십시오. 그런 다음 sshd다음에 규칙을 추가하여 로그인 명령으로 사용하도록 지시합니다 /etc/ssh/sshd_config.

Match user root
    ForceCommand /root/login-with-birthday.sh

관련 정보