Android 4.3에서 웹 서버에 대한 자체 서명 인증서를 설치하려고합니다. SD 카드의 루트에 .crt 파일이 있습니다 (슬롯에 SD 카드가 없으므로 실제로 에뮬레이션됩니다).
인증서를 설치하려면 설정-> 일반-> 보안-> 자격 증명 저장소-> 장치 저장소에서 설치로 이동하십시오.
인증서 이름 (파일 이름에서 .crt 확장명을 빼고 .crt 확장자를 뺀 값), "VPN 및 앱"을 선택한 상태에서 "사용한"풀다운 및 하단에 텍스트를 표시하는 대화 상자가 나타납니다. "패키지에 하나의 사용자 인증서가 포함되어 있습니다"라는 메시지가 표시됩니다. 모든 것이 정상으로 보이므로 "확인"을 클릭하십시오. 대화창이 사라지고 "[name] installed"와 함께 토스트 메시지가 나타납니다.
그러나 즉시 "신뢰할 수있는 자격 증명"으로 이동하여 "사용자"를 선택하면 아무 것도 없습니다! 새 인증서도 "시스템"아래에 없지만 기대하지는 않습니다.이 후에 브라우저로 이동하여 웹 사이트에서 사이트 인증서를 신뢰할 수 없다는 경고 메시지가 표시되며 재부팅도 시도했지만 차이가 없습니다.
내가 도대체 뭘 잘못하고있는 겁니까? 오류 메시지의 완전한 부족은 도움이되지 않습니다. 인증서가 잘못된 형식 일 수 있습니까? 서버의 ssl 디렉토리에서 .crt 파일을 사용하려고 시도했으며 DER 형식으로 변환하려고했습니다.
업데이트 : 안드로이드가 p12 형식의 인증서가 필요하다는 것을 읽었으므로 다음 명령을 사용하여 Apache2 인증서를 p12로 변환했습니다.
openssl pkcs12 -export -inkey server.key -in server.crt -out ~/server.p12
그런 다음 위의 단계를 반복하고 동일한 성공 메시지를 얻은 후에도 여전히 사용자 자격 증명에 인증서가 표시되지 않고 모바일 브라우저에서 신뢰할 수없는 인증서 오류가 발생합니다.