自己署名証明書について

SSL証明書は、サイトの情報を暗号化し、より安全な接続を作成する方法です。 さらに、証明書は、仮想プライベートサーバーの識別情報をサイト訪問者に示すことができます。 認証局は、サーバーの詳細を検証するSSL証明書を発行できますが、自己署名証明書にはサードパーティによる確証はありません。

設定

このチュートリアルの手順では、ユーザーがVPSに対するroot権限を持っている必要があります。 手順3と4の初期サーバー設定で設定方法を確認できます。

さらに、apacheを仮想サーバーにインストールして実行している必要があります。 そうでない場合は、次のコマンドでダウンロードできます。

sudo pacman -Syu
sudo pacman -S apache

ステップ1-ApacheConfigディレクトリに切り替えます

最初のステップは、メインのApache構成ディレクトリに移動することです。 以降のすべての手順は、ディレクトリ内で実行されます。

cd /etc/httpd/conf

ステップ2—自己署名SSL証明書を作成する

1024rsa秘密鍵を作成することから始めます。 「-des3」オプションは、パスフレーズの必要性を示します。 パスフレーズを設定するとセキュリティが強化されますが、apacheをリロードしようとすると問題が発生します。 Apacheがクラッシュしたり、再起動する必要がある場合は、Webサーバー全体をオンラインに戻すために、常にパスフレーズを再入力する必要があります。

sudo openssl genrsa -des3 -out server.key 1024

次に、証明書署名要求を作成します。 前の手順でパスフレーズを設定した場合は、この手順でもパスフレーズを入力するように求められます。

sudo openssl req -new -key server.key -out server.csr

このコマンドは、入力する必要のあるフィールドのリストを表示するように端末に指示します。

最も重要な行は「共通名」です。 ここに公式ドメイン名を入力するか、まだ持っていない場合はサイトのIPアドレスを入力します。

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:New York
Locality Name (eg, city) []:NYC
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Awesome Inc
Organizational Unit Name (eg, section) []:Dept of Merriment
Common Name (e.g. server FQDN or YOUR name) []:example.com                  
Email Address []:[email protected]

最後に、パスフレーズを削除します。

sudo cp server.key server.key.org
sudo openssl rsa -in server.key.org -out server.key

最後に、365を希望の日数に変更して、証明書の有効期間を指定します。 現状では、この証明書は1年後に期限切れになります。

sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

ステップ3—終了

証明書が作成され、署名されています。 apacheがその構成に含まれていることを確認する必要があるだけです。 先に進み、メインのApache構成ファイルを開きます。

sudo nano /etc/httpd/conf/httpd.conf

そこに到達したら、次の行のコメントを解除します。

Include conf/extra/httpd-ssl.conf

Apacheを再起動して、変更を有効にします。

sudo systemctl restart httpd

ブラウザでhttps:// youraddressと入力すると、新しい自己署名証明書が表示されます。

EtelSverdlov著