서버에서 허용되는 클라이언트 SSH 키 유형을 지정합니다.

서버에서 허용되는 클라이언트 SSH 키 유형을 지정합니다.

ed25519 키만 허용하는 다음 sshd_config가 있는 서버(openssh 8.1p1-2 실행)가 있습니다.

PubkeyAcceptedKeyTypes [email protected],ssh-ed25519

이는 우리 팀에 매우 효과적입니다. 우리 모두는 ed25519 키만 사용합니다. 다른 키 유형이 거부되므로 지시문은 제대로 작동합니다.

그러나 이제 (제어할 수 없는 정책에 따라) rsa 키 유형만 사용할 수 있는 사람들이 일시적으로 연결되도록 허용해야 합니다.

다음과 같이 변경했습니다.

PubkeyAcceptedKeyTypes ssh-rsa,[email protected],[email protected],ssh-ed25519

...그리고 sshd를 다시 시작하세요.

systemctl restart sshd

sshd 상태 에 따르면 systemctl status sshd오류가 없습니다. 그러나 이 사람이 연결을 시도하면 서버 로그에 다음이 표시됩니다.

sshd[12345]: userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedKeyTypes [preauth]

클라이언트 측의 오류는 간단합니다.

No more authentication methods to try. user@ip: Permission denied (publickey).

ssh-rsaPubkeyAcceptedKeyTypes에 있기 때문에 문제를 이해하지 못합니다 . 내가 무엇을 놓치고 있나요?

답변1

방금 이 문제가 발생했습니다...ssh-rsa 대신 키 유형 rsa-sha2-512를 추가해야 합니다. (필요하지 않은 rsa-sha2-256도 있습니다.)

저는 Arch에서 OpenSSH_8.2p1을 사용하고 있습니다.

답변2

나는 오늘 아침에 Oracle Linux 상자에서 이 문제로 너무 오랫동안 어려움을 겪었습니다.

동일하거나 다른 RedHat 기반 배포판에서 실행 중인 경우 sshd_config설정이 시스템 기본 암호화 정책 설정으로 재정의되는지 확인하세요. update-crypto-policies자세한 내용은 매뉴얼 페이지를 참조하십시오 crypto-policies.

/etc/crypto-policies/back-ends/opensshserver.config현재 적용된 OpenSSH 서버 정책 설정이 표시되어야 합니다.

관련 정보