로컬에서도 valid인 증명서를 사용하고 싶다!



로컬에서 HTTPS 웹 서비스를 개발할 때 존재하지 않는 "자체 서명 인증서 어려움"문제.
  • chrome://flags#allow-insecure-localhost 가상 환경 등 localhost에 서버를 세울 수 없으면 어려움
  • Firefox 인증서 예외 추가 다른 브라우저에없는 기능이기 때문에 어려움

  • 해결합니다.

    요약



  • FiloSottile/mkcert을 설치합니다.
  • $ mkcert -install 치십시오.
  • 브라우저를 다시 시작합니다.
  • $ mkcert 任意のドメイン名(複数個、ワイルドカードOK) 치십시오.
  • 생성 된 키를 서버로 설정하고 다시 시작합니다.
  • 완료



  • 무슨 일이야?



    브라우저가 「이 증명서가 valid인가 어떤가」를 판정하기 위해(때문에), 로컬에 「루트 CA (증명국)」라고 하는 정보를 가지고 있습니다.

    디폴트에서는 각 브라우저 벤더가 승인한 루트 CA 와 거기로부터 트리 구조로 발행의 권한이 양도 되고 있는 중간 CA 가 설정되어 있어, 그러한 CA 로부터 발행된 증명서이면 valid 라고 한다고 한다 판정을 실시하고 있습니다.
    mkcert는이 루트 CA를 생성하고 자신의 브라우저에 등록합니다.

    본래 루트 CA 의 스스로의 등록은 여러가지 설정을 실시해, 여러가지 커멘드를 두드려 겨우 실현할 수 있는 작업입니다만, mkcert (은)는 그러한 귀찮음을 완전히 생략하는 것이 가능합니다. mkcert -install 에 모든 번거로움이 압축되었습니다.

    이제 로컬 mkcert 에서 발행된 인증서는 valid로 간주하면 브라우저가 판단할 수 있게 됩니다.

    물론 이것은 이 환경 이외에서는 valid 는 아니다 (valid 로 간주하는 루트 CA 가 없다) 때문에, 로컬 환경에서만 이용해 주세요.

    웹 서비스를 개발하는 엔지니어는 전원 로컬에 mkcert 에 의한 루트 증명국을 가지는 세계가 되면 좋겠다고 생각합니다.

    증명서 어려움 문제를 안고 있는 모든 엔지니어에게 도착했으면 좋겠다!

    (증명서 주위는 그다지 자세하지 않기 때문에 잘못된 표현도 있다고 생각합니다. 우선 ローカルで簡単に valid な証明書作れる
    ※ sample.com 씨를 참고 자료로서 게재했습니다만, 로컬에서는 실재하지 않는 도메인을 사용합시다!

    좋은 웹페이지 즐겨찾기