0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

SSL設定 備忘録

Last updated at Posted at 2022-01-10

認証レベル

image.png

OpenSSl

opensslは通常、ほとんどのLinuxディストリビューションにデフォルトでインストールされている。

versionの確認

openssl version
ssl -V

ディレクトリ作成

sudo mkdir /etc/apache2/ssl.key
sudo mkdir /etc/apache2/ssl.crt
補足 説明 備考
mkdir /etc/apache2/ssl.key ssl.keyという名前のフォルダができる。
ファイルができるわけではない。

秘密鍵の作成

sudo openssl genrsa -out /etc/apache2/ssl.key/server.key 2048

補足 説明 備考
genrsa 暗号アルゴリズムRSA
-des3 秘密鍵の暗号化トリプルDES サーバーを再起動するたびに聞かれるため今回は使わない
server.key .keyという名称が多い
2048 鍵長。
1024だと認証局から受け付けてもらえない。

権限変更

sudo chmod 400 /etc/apache2/ssl.key/server.key

確認用

sudo cat /etc/apache2/ssl.key/server.key

公開鍵とCSRの作成

  • 公開鍵はCSR生成時に添付される形で作成されるので、公開鍵単独の生成は必要無い。
  • 実際にwebサーバーで指定するのは秘密鍵公開鍵が添付されている認証局が発行した証明書となる。

csr作成

sudo openssl req -new -key /etc/apache2/ssl.key/server.key -out server.csr
補足 説明 備考
-key 上記で作成したkeyを指定する -key /etc/apache2/ssl.key/server.key
-out 拡張子は.csrとする

必要項目の入力

  • 対話形式で入力していく
項目 説明
Country Name (2 letter code) 国名。最大2文字 JP
State or Province Name (full name) [Some-State] 届け出る事業所またはサイト運営組織の都道府県 TOKYO
Organization Name (eg, company) サイトの運営組織の 【正式英語名称】 を指定 Sample.com
Organizational Unit Name (eg, section) 部門・部署名など 【任意の識別名称】 を指定。
ドメイン認証の場合には空欄でも可
Common Name (e.g. server FQDN or YOUR name) サイト閲覧者へ案内しているURLの【ドメイン名】を指定。
SSL接続の際にブラウザで指定するURL(FQDN)
sample.com
Email Address 空欄
Please enter the following 'extra' attributesto be sent with your certificate request A challenge password 空欄
An optional company name 空欄

作成したCSRの中身確認

説明 情報内容 確認コマンド
非暗号状態 国、都道府県、市町村、ドメイン openssl req -noout -text -in server.csr
暗号状態 暗号 cat server.csr

[さくらインターネット]JPRS SSLサーバ証明書

今回はさくらのSSLから JPRSドメイン認証型 990円/年 を申し込み
SAKURA internet URL: https://ssl.sakura.ad.jp/

下記情報を入力する。

  • 支払方法指定
  • 約款に同意
  • CSRの入力
    →catコマンドで中身を確認し下記のような「BEGIN・・・」の行から「END~」の行までをコピペ
     -----BEGIN CERTIFICATE REQUEST-----
     dhakldfieyriuadfatur929~lkr235n4klnioka;lkafjdkl
     adkljfeiotue2348t489pqrugorjrklrglgkl;gatieutoio
     ・
     ・
     ・
     -----END CERTIFICATE REQUEST-----
    

メールに従い手続きを行う

  • [さくらインターネット]JPRS SSLサーバ証明書お申込受付完了のお知らせ(手続きの流れご案内)
  • SSLサーバ証明書 認証ファイルのアップロードのお願い
  • [さくらインターネット]JPRS SSLサーバ証明書発行のお知らせ

SSLサーバ証明書 認証ファイルのアップロード

  1. さくらの会員メニュー>契約中のサービス一覧にアクセス
  2. 「SSL JPRS ドメイン認証型(1年)」から「SSLサーバ証明書 認証ファイル(例:cf123456789abc987654321efgd4a4b7.txt )」をダウンロードする
  3. 「SSLサーバ証明書 認証ファイル」を「/opt/tomcat/apache-tomcat-9.0.52/webapps/.well-known/pki-validation」に設置する
  4. 次項目の「サーバー証明書DL」で「サーバー証明書」と「中間CA証明書」をDLし,サーバーに設置する
  5. 正常に設置できた場合、例:「http://shinseidomain.com/.well-known/pki-validation/cf123456789abc987654321efgd4a4b7.txt 」例のようにアクセスすると、ブラウザにファイルの中身(例:02123456789f82abcdeb123456789d5c)が表示される。
    【--追記-- 表示時間はその時々でばらばら。前回は数分だったが、今回は数時間かかった。】
  6. アップロード後、数分で「[さくらインターネット]JPRS SSLサーバ証明書発行のお知らせ」メールが届く
ポイント 説明 備考
「サーバー証明書」 [ランダムな文字列].txt 中身も[ランダムな文字列]
「サーバー証明書」設置場所 「.well-known/pki-validation」は自分でディレクトリを作成する
「サーバー証明書」の名前や中身を変更しない。 同左

サーバー証明書DL

  1. 「契約情報」>「契約サービスの確認」をクリック
  2. 購入した証明書の「サーバ証明書」ボタンをクリック
  3. 「サーバ証明書DL」ボタンをクリックしてサーバ証明書をダウンロード

中間CA証明書のDL

中間CA証明書のDLおよびインストール

サーバー証明書および中間CA証明書をサーバーへ設置

上記で作成したディレクトリ(etc/apache2/ssl.crt)へ設置する。

SSLに関するモジュールを有効化する

ssl a2enmod ssl

default-ssl.confを修正する

/etc/apache2/sites-available/default-ssl.conf
# 証明書のファイル名
SSLCertificateFile:/etc/apache2/ssl.crt/server.crt

# 秘密鍵のファイル名
SSLCertificateKeyFile:/etc/apache2/ssl.key/server.key

# 中間証明書のファイル名
SSLCertificateChainFile:/etc/apache2/ssl.crt/JPRS_DVCA_G4_PEM.cer

サイト設定を有効化する

sudo a2ensite default-ssl

Apacheの再起動

sudo systemctl restart apache2

443のポートを開放する

 sudo ufw status
 sudo ufw allow 443
 sudo ufw reload

ここまででSSL接続が可能となる。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?