sishの設定(SSL化の処理)

sishのGitHubのサイトに行きます。

Cloud Shell |  Google Cloudに行きます。

変更前

gcloud compute instances create-with-container sish \
    --zone="us-central1-a" \
    --tags="sish" \
    --container-mount-host-path="host-path=/mnt/stateful_partition/sish/ssl,mount-path=/ssl" \
    --container-mount-host-path="host-path=/mnt/stateful_partition/sish/keys,mount-path=/keys" \
    --container-mount-host-path="host-path=/mnt/stateful_partition/sish/pubkeys,mount-path=/pubkeys" \
    --container-image="antoniomika/sish:latest" \
    --machine-type="e2-micro" \
    --container-arg="--domain=YOURDOMAIN" \
    --container-arg="--ssh-address=:2222" \
    --container-arg="--http-address=:80" \
    --container-arg="--https-address=:443" \
    --container-arg="--https=true" \
    --container-arg="--https-certificate-directory=/ssl" \
    --container-arg="--authentication-keys-directory=/pubkeys" \
    --container-arg="--private-keys-directory=/keys" \
    --container-arg="--bind-random-ports=false" \
    --container-arg="--bind-random-subdomains=false" \
    --container-arg="--bind-random-aliases=false" \
    --container-arg="--tcp-aliases=true" \
    --container-arg="--service-console=true" \
    --container-arg="--log-to-client=true" \
    --container-arg="--admin-console=true" \
    --container-arg="--verify-ssl=false" \
    --container-arg="--https-ondemand-certificate=false" \
    --container-arg="--https-ondemand-certificate-accept-terms=false" \
    --container-arg="--https-ondemand-certificate-email=certs@YOURDOMAIN" \
    --container-arg="--idle-connection=false" \
    --container-arg="--ping-client-timeout=2m"

HTTPSでサイトに接続するために設定を変更するには、以下の手順に従ってください。この設定は、Let’s Encryptを介して自動的にSSL証明書を取得し、サイトをHTTPSで安全に公開することを目的としています。

  1. ドメインの更新: コマンド内のYOURDOMAINを、あなたが実際に所有しているドメイン名に変更してください。これは--domain--https-ondemand-certificate-emailの両方で必要です。
  2. HTTPSの有効化: --https=trueを設定して、HTTPS通信を有効にします。
  3. SSL証明書ディレクトリの指定: --https-certificate-directory=/sslは既に設定されており、これによりSSL証明書の保存場所を指定しています。
  4. 自動SSL証明書の取得を有効にする:
    • --https-ondemand-certificate=trueを設定して、要求時にSSL証明書を自動取得する機能を有効にします。
    • --https-ondemand-certificate-accept-terms=trueを設定して、Let’s Encryptの利用規約を自動的に承諾します。
    • --https-ondemand-certificate-email=certs@YOURDOMAINは、あなたのドメインに適したメールアドレスに更新してください。これはLet’s Encryptからの通知を受け取るために使用されます。
  5. DNSレコードの設定: ドメインのDNS設定で、Aレコード(または適宜CNAMEレコード)を使用して、ドメイン名をGoogle CloudインスタンスのIPアドレスにポイントするように設定します。

修正後のコマンド例は以下のようになります(YOURDOMAINcerts@YOURDOMAINを適切な値に置き換えてください):

変更後

gcloud compute instances create-with-container sish \
    --zone="us-central1-a" \
    --tags="sish" \
    --container-mount-host-path="host-path=/mnt/stateful_partition/sish/ssl,mount-path=/ssl" \
    --container-mount-host-path="host-path=/mnt/stateful_partition/sish/keys,mount-path=/keys" \
    --container-mount-host-path="host-path=/mnt/stateful_partition/sish/pubkeys,mount-path=/pubkeys" \
    --container-image="antoniomika/sish:latest" \
    --machine-type="e2-micro" \
    --container-arg="--domain=YOURDOMAIN" \
    --container-arg="--ssh-address=:2222" \
    --container-arg="--http-address=:80" \
    --container-arg="--https-address=:443" \
    --container-arg="--https=true" \
    --container-arg="--https-certificate-directory=/ssl" \
    --container-arg="--authentication-keys-directory=/pubkeys" \
    --container-arg="--private-keys-directory=/keys" \
    --container-arg="--bind-random-ports=false" \
    --container-arg="--bind-random-subdomains=false" \
    --container-arg="--bind-random-aliases=false" \
    --container-arg="--tcp-aliases=true" \
    --container-arg="--service-console=true" \
    --container-arg="--log-to-client=true" \
    --container-arg="--admin-console=true" \
    --container-arg="--verify-ssl=false" \
    --container-arg="--https-ondemand-certificate=true" \
    --container-arg="--https-ondemand-certificate-accept-terms=true" \
    --container-arg="--https-ondemand-certificate-email=certs@YOURDOMAIN" \
    --container-arg="--idle-connection=false" \
    --container-arg="--ping-client-timeout=2m"

変更前:

  • --https-ondemand-certificate=false
  • --https-ondemand-certificate-accept-terms=false
  • --https-ondemand-certificate-email=certs@YOURDOMAIN (このオプション自体は変更前のコマンドにも存在しますが、YOURDOMAINを実際のドメイン名に置き換える必要があります。)

変更後:

  • --https-ondemand-certificate=true:HTTPS通信時にSSL証明書の自動取得を有効にします。
  • --https-ondemand-certificate-accept-terms=true:Let’s Encryptの利用規約を自動的に承諾します。
  • --https-ondemand-certificate-email=certs@YOURDOMAIN:実際に使用しているドメイン名にYOURDOMAINを置き換え、Let’s Encryptからの通知を受け取るためのメールアドレスを設定します。

これらの変更により、HTTPSでのセキュアな接続を実現し、Let’s EncryptからSSL証明書を自動的に取得し、更新することが可能になります。ドメイン名と証明書に関連するメールアドレスを適切に設定することが重要です。

Bio

田端厚賢

名前:田端厚賢(Atsuyoshi Tabata)

WordPressを中心に企業様から委託を受けてサイトやサーバーの保守・管理、システム開発を行っています。

2024年4月より東大の松尾研でLLLMの開発プロジェクトに参加しています。

プロフィール詳細
Web制作依頼の詳細
お問い合わせはコチラ