Help us understand the problem. What is going on with this article?

*.lvh.meでSSL

More than 1 year has passed since last update.

オレオレ証明書を作る

mkdir ssl
cd ssl
openssl req \
-newkey rsa:4096 \
-keyout lvh.me.key \
-x509 \
-nodes \
-new \
-out lvh.me.crt \
-subj "/CN=*.lvh.me" \
-reqexts SAN \
-extensions SAN \
-config <(cat /System/Library/OpenSSL/openssl.cnf \
<(printf '[SAN]\nsubjectAltName=DNS:lvh.me,DNS:*.lvh.me')) \
-sha256 \
-days 3650

キーチェーンに登録する

1. 作成したlvh.me.crtを開く

open lvh.me.crt

2. キーチェーンアクセスで該当の証明書を選択しコンテキストメニューで「情報を見る」をクリック

3. 「:arrow_forward: 信頼」を開く

4. 「この証明書を使用するとき」を「常に信頼」へ変更

5. 開いているダイアログを閉じて、「証明書信頼設定に変更を加えようとしています。」で許可する。

サンプルコード

main.go
package main

import (
    "fmt"
    "net/http"
)

type myHandler struct{}

func (h *myHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
    fmt.Fprint(w, "Hello World!")
}

func main() {
    handler := &myHandler{}
    server := http.Server{
        Addr:    "127.0.0.1:8080",
        Handler: handler,
    }

    println(fmt.Sprintf("Listening on tcp://%s", server.Addr))
    server.ListenAndServeTLS("./ssl/lvh.me.crt", "./ssl/lvh.me.key")
}
go run ./main.go
Listening on tcp://127.0.0.1:8080

別コンソールで

open https://www.lvh.me:8080

ワイルドカードの自己証明書なので、https://hoge.lvh.me:8080などでもよい。

ppworks
最近は主にrailsです!
http://ppworks.jp
esaLLC
esa.io や pplog.net などのWebサービスを開発・デザイン・運営しています
https://team.esa.io
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away