ssh 인증서를 취소하는 방법 (ssh ID 파일이 아님)


14

다음과 같이 ssh 인증서를 생성했습니다.

  1. ssh-keygen -f ca_key # 인증서로 사용할 ssh 키 쌍 생성
  2. 호스트 키를 생성 ssh-keygen -s ca_key -I cert_identifier -h host_key.pub
  3. 서버의 sshd 구성 파일에서 호스트 키를 지정하십시오. TrustedUserCAKeys /etc/ssh/ssh_cert/host_key.pub
  4. ssh 인증서를 사용하여 호스트에 액세스 할 로컬 인증서를 생성하십시오 ssh-keygen -s ca_key -I cert_identifier user_key.pub. 이것은 user_key-cert.pub를 생성해야합니다

이제 ssh -i user_key user@host(user_key-cert.pub를 사용하는)을 사용 하여 서버에 로그인 할 수 있습니다 . TrustedUserCAKeys 파일을 비활성화하는 것 이외의 인증서를 어떻게 취소 할 수 있습니까?


openssh 목록에 여기 gossamer-threads.com/lists/openssh/dev/… 에 대한 토론이 있습니다 .-인증서를 취소하는 우아한 방법은 없다고 생각합니다.
rorycl

답변:


13

sshd_config에는 RevokedKeys 파일이 있습니다. 여러 키 또는 인증서를 한 줄에 하나씩 나열 할 수 있습니다. 앞으로 OpenSSH는 인증서 일련 번호로 해지를 지원하므로 해지 목록이 훨씬 작아집니다.


-3

이들은 당신에게 관심이있을 수 있습니다 :

CARevocationFile /path/to/bundle.crl이 파일에는 함께 연결된 PEM 형식의 인증서 서명자의 여러 "CRL (Certificate Revocation List)"이 들어 있습니다.

CARevocationPath / path / to / CRLs / 인증서 서명자의 "CRL (Certificate Revocation List)"이있는 "해시 디렉토리" 각 CRL은 이름이 [HASH] .r [NUMBER] 인 별도의 파일에 저장해야합니다. 여기서 [HASH]는 CRL 해시 값이고 [NUMBER]는 0부터 시작하는 정수입니다. 해시는 다음과 같은 명령의 결과입니다. $ openssl crl -in crl_file_name -noout -hash

(처음 3 Google은 "ssh ca revoke"를 검색했습니다 ...)


ssh 인증서는 PEM 형식 인증서를 사용하지 않고 자체 형식을 사용하므로 작동하지 않습니다.
rorycl

OpenSSH는 마지막으로 확인했을 때 CARevocationFile을 구현하지 않습니다 (최근에 변경되었을 수 있음).
Chris S

1
흠, 맞아. 나는 이것이 가능하지 않다고 생각합니다.
draeath
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.