![클라이언트 인증에 "/etc/ssh/ssh_known_hosts" 및 "~/.ssh/known_hosts"를 사용하는 방법은 무엇입니까?](https://linux55.com/image/149799/%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8%20%EC%9D%B8%EC%A6%9D%EC%97%90%20%22%2Fetc%2Fssh%2Fssh_known_hosts%22%20%EB%B0%8F%20%22~%2F.ssh%2Fknown_hosts%22%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
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 서비스의 클라이언트입니다.