OpenSSH 서버에 약한(예를 들어<2048비트) RSA 키? 알아요PubkeyAccetedAlgorithms
다음을 포함한 특정 키 유형을 금지할 수 있습니다. rsa-sha2
,전체적으로.
답변1
런타임 구성이 가능하지는 않지만 SSH_RSA_MINIMUM_MODULUS_SIZE
다음의 컴파일 타임 정의를 변경할 수 있습니다.sshkey.h
그리고 다시 컴파일하세요:
#define SSH_RSA_MINIMUM_MODULUS_SIZE 1024
도착하다
#define SSH_RSA_MINIMUM_MODULUS_SIZE 2048
그게 아니면 더 짧은 키를 설치하지 마세요. authorized_keys
적어도 인코딩된 키의 길이를 실제 키 길이의 지표로 받아들인다면 사용자 파일에서 해당 길이보다 짧은 키를 검색할 수 있습니다.
2048비트 RSA 키의 인코딩 길이는 372자이므로 다음과 같은 내용이 더 짧은 키와 일치할 수 있습니다.
grep -E 'ssh-rsa [a-zA-Z0-9+/=]{,371}( |$)' file...
답변2
이것RequiredRSASize
옵션이 추가되었습니다오픈SSH 9.1, 2022년 10월 4일에 게시됨:
ssh(1), sshd(8): 필수RSASize 지시어를 추가하여 최소 RSA 키 길이를 설정합니다. sshd(8)의 사용자 인증 및 호스트 인증의 경우 이 길이 미만의 키는 무시됩니다.
서버에서 제공하는 RSA 키가 이 제한보다 낮으면 SSH 프로토콜에 실패한 키 교환을 재시도하는 기능이 없기 때문에 ssh(1)는 연결을 종료합니다.