FreeBSD에서 SSH를 통해 인증되지 않은 로그인을 허용하는 방법은 무엇입니까?

FreeBSD에서 SSH를 통해 인증되지 않은 로그인을 허용하는 방법은 무엇입니까?

ckursFreeBSD 10 워크스테이션에 계정을 만들었습니다. 이 계정은 사용자 정의 쉘 스크립트를 로그인 쉘로 사용하여 사용자를 읽기 전용 모드로 tmux 세션에 연결합니다. 나는 그것이 안전하다고 스스로 확신했습니다.

ckurs어떤 형태의 인증도 제공하지 않고(비밀번호, 키, 아무것도 없음) 다른 사용자가 사용자로 로그인 할 수 있도록 하고 싶습니다 . 이전에는 이 계정에 대해 간단한 비밀번호를 설정했지만 사용자가 비밀번호를 올바르게 입력하면 항상 혼란이 발생하므로 이를 피하고 싶습니다.

먼저 를 사용하여 빈 비밀번호를 설정했습니다 pw usermod ckurs -w none. 이것은 로컬 로그인에서는 작동 su하지만 SSH를 통해 로그인하면 작동하지 않고 대신 비밀번호를 3번 입력하라는 메시지가 표시된 후 인증을 거부합니다.

비밀번호 없는 로그인을 허용하려면 어떤 옵션을 설정해야 합니까? 가장 좋은 구성은 해당 계정 하나에만 적용하는 것입니다.

인증과 관련하여 시스템 구성을 변경하지 않았다고 생각합니다. 시스템은 기본적으로 PAM을 사용하여 사용자를 인증하지만(확실하지는 않습니다), PAM 구성은 FreeBSD 10에서 제공하는 기본값에서 변경되지 않았습니다.

답변1

PAM을 사용하여 SSH를 통해 인증되지 않은 로그인을 허용하려면 다음을 모두 구성해야 합니다.

  • 사용자 계정은 "비밀번호 없음"으로 설정되어야 합니다. 이는 "빈 비밀번호"와 다르며 다음을 통해 달성할 수 있습니다.

    pw usermod <user> -w none
    
  • 에서는 sshd_config설정하기 전에 다음 옵션을 설정해야 합니다. 그렇지 않으면 무시됩니다.UsePAM

    PermitEmptyPasswords yes
    
  • PAM 구성 파일에서 해당 카테고리 의 모듈은 sshd옵션 e를 사용하여 로드되어야 합니다 . G.pam_unixauthnullok

    auth        required    pam_unix.so     no_warn try_first_pass nullok
    

관련 정보