OpenSSH: 약한(<2048비트) RSA 키를 금지하는 방법

OpenSSH: 약한(<2048비트) RSA 키를 금지하는 방법

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)는 연결을 종료합니다.

관련 정보