
SSH에 대한 확실한 가이드에서는 다음과 같이 말합니다.
OpenSSH는 서버 인증과 클라이언트 인증을 모두 제공하는 단일 데이터베이스를 유지 관리합니다. 이는 시스템의 Known_hosts 파일( )과 원본 시스템(서버 인증용) 또는 대상 시스템(인증용)의 사용자 파일을
/etc/ssh/ssh_known_hosts
합친 것 입니다.~/.ssh/known_hosts
클라이언트 인증).
클라이언트 인증에 어떻게 /etc/ssh/ssh_known_hosts
, 어떻게 ~/.ssh/known_hosts
사용되나요?
~에 따르면https://security.stackexchange.com/a/20710/, 내 생각 /etc/ssh/ssh_known_hosts
에는 ~/.ssh/known_hosts
서버 인증 전용이고 ~/.ssh/authorized_keys
사용자 인증 전용입니다.
"클라이언트 인증"은 "사용자 인증"과 같은 의미입니까?
감사해요.
답변1
~/.ssh에는 여러 파일(known_hosts,authorized_keys, id_rsa 및 id_rsa.pub)이 있습니다.
머신 A에서 비밀번호 없이 동일한 사용자로 머신 B에 로그인하려는 경우 머신 A의 id_rsa.pub 내용을 머신 B의 ~/.ssh/authorized_keys에 복사할 수 있습니다(권장되지는 않지만). 사용자 인증입니다.
Machine B에 처음 로그인하면 Machine A는 이를 신뢰하도록 요청한 다음 Machine B의 공개 키를 ~/.ssh/known_hosts에 배치합니다. 즉, 클라이언트 인증에서 시스템 A ssh 프로세스는 시스템 B sshd 서비스의 클라이언트입니다.