もっと詳しく

ITの世界では、インフラストラクチャアプリケーションとドメインを保護することが重要です。 また、理想的なレベルのセキュリティを実現するには、SSL証明書が必要です。 しかし、どのようにしてSSL証明書を取得しますか? 最も簡単で費用効果の高い方法の1つは、作成することです 自己署名証明書 あなたのシステムで。

自己署名証明書は、認証局によって発行されるのではなく、ユーザーが自分で生成できる公開鍵証明書です。 また、このチュートリアルでは、WindowsマシンとLinuxマシンの両方で自己署名証明書を生成する方法を学習します(無料)。

読んで、アプリとインフラストラクチャの保護を開始してください!

前提条件

このチュートリアルは、実践的なデモンストレーションになります。 フォローしたい場合は、次のものがあることを確認してください。

Ubuntuでの自己署名証明書の生成

自己署名証明書をテストする最も簡単な方法はWebサーバー上であり、最も広く使用されているWebサーバーの1つはApacheです。 それでは、UbuntuマシンにすでにインストールされているApacheサーバーを構成して、このチュートリアルを開始しましょう。

1.お気に入りのSSHクライアントを使用してUbuntuVMにSSHで接続します。

2.を実行します aptupdateコマンド 以下で、Ubuntuに最新のパッケージソースがすべて含まれていることを確認します。

3.次に、お気に入りのWebブラウザーを開き、次の場所に移動します。 :80 ApacheホームページはHTTPポートでのみ開きます(安全ではありません)。

Apacheのデフォルトページを確認する
Apacheのデフォルトページを確認する

4.次に、以下の各コマンドを実行して、という名前のディレクトリを作成します 〜/証明書 証明書を保存するディレクトリに移動します。

mkdir ~/certificates
cd ~/certificates

5.次に、以下を実行します openssl 生成するコマンド 証明書署名要求(CSR) および秘密鍵。

openssl req -x509 -newkey rsa:4096 -keyout apache.key -out apache.crt -days 365 -nodes

コマンドを実行したら、以下に示すように詳細を入力します。

CSRと秘密鍵の生成
の生成 CSR および秘密鍵

UbuntuでSSL証明書を使用してApacheサーバーを保護する

証明書を生成したら、証明書を使用するようにApacheサーバーを構成する必要があります。 ただし、最初に、証明書を保持するための専用ディレクトリが必要です。 後でSSLモジュールを有効にして、Apacheサーバーの保護に証明書が機能するかどうかをテストします。

1.次のコマンドを実行してディレクトリ(/ etc / apache2 / ssl)を作成し、証明書を〜/certificates/ディレクトリから/etc / apache2/sslディレクトリに移動します。

mkdir /etc/apache2/ssl
mv ~/certificates/* /etc/apache2/ssl/.

2.デフォルトのSSLApacheサイト構成ファイル(/etc/apache2/sites-available/default-ssl.conf)を開き、以下の行を追加します。 必ずをサーバーの実際の名前に置き換えてください。

以下のコードでは、以前に証明書をコピーした場所(証明書キーとファイル)を指定します。

ServerName <my-server-name>
SSLCertificateFile    /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
ProxyPreserveHost On
デフォルトのSSLApacheサイト構成ファイルを更新しています
デフォルトのSSLApacheサイト構成ファイルを更新しています

3.次に、以下の各コマンドを実行してSSLモジュールを有効にし、変更したサイトを有効にして(ステップ4)、Apacheサービスを再起動します。

# Enable the SSL module so that you can work with SSL connections.
sudo a2enmod ssl proxy proxy_http proxy_balancer
# Enable the site you modified (step four)
sudo a2ensite default-ssl.conf
# Restart the Apache service
sudo service apache2 restart
Apache Webサーバーのモジュールとサイトを更新し、Apacheサービスを再起動します
Apache Webサーバーのモジュールとサイトを更新し、Apacheサービスを再起動します

4.最後に、Apacheサーバーに再度移動します。 ただし、今回は、以下に示すように、HTTPSを使用します。

ご覧のとおり、ApacheはHTTPSポートでSSL接続を使用して正常に開いています。 安全でないメッセージを表示する警告記号が表示されても心配しないでください。 自己署名証明書(自分で作成したもの)を使用しているため、警告が表示されます。 証明する機関

[に進む(安全ではない)]をクリックして、Apacheサーバーへのアクセスを続行します。

HTTPURLでApacheWebサーバーにアクセスする
HTTPURLでApacheWebサーバーにアクセスする

下のページと同じページが表示されますか? おめでとう! これで、自己署名証明書を使用してApacheサーバーを正常に保護できました。

安全なApacheサーバーアクセスの確認
安全なApacheサーバーアクセスの確認

WindowsでのSSL証明書の生成

以前は、自己署名証明書を使用して、UbuntuマシンでホストされているApacheサーバーを保護していました。 同様に、WindowsOSでApacheサーバーを保護することもできます。

WindowsでApacheサーバーを保護するには:

1. Apache構成ファイルを開きます(httpd.conf)C: Apache24 conf 以下の行を見つけてコメントを外します。

次の行は、WindowsマシンでSSLモジュールを有効にし、ApacheがHTTPSポートで動作できるようにします。

LoadModule rewrite_module modules/mod_rewrite.so

2.次に、管理者としてPowerShellを開き、次のコマンドを実行します openssl 生成するコマンド 証明書署名要求(CSR) および秘密鍵。

openssl req -x509 -newkey rsa:4096 -keyout Apache.key -out Apache.crt -days 365 -nodes

コマンドを実行した後、以下に示すように、証明書の詳細を入力します。

CSRと秘密鍵の生成
の生成 CSR および秘密鍵

3. OpenSSLインストールbinディレクトリに移動します(C: ProgramFiles OpenSSL-Win64 bin)そして、以下のApache証明書とキーを確認します。

Windowsマシンで生成された証明書の検証
Windowsマシンで生成された証明書の検証

SSL証明書を使用するようにApacheサーバーを構成する

Apacheサーバー接続を保護するための証明書とキーを生成しました。 ただし、Ubuntuと同様に、証明書とキーを保持し、SSLモジュールを有効にするための専用フォルダーが必要です。

1. SSL証明書ファイルをコピーします(apache.crt)および秘密鍵ファイル(apache.key)に C: Apache24 conf フォルダ。

2. Apache SSL構成ファイルを編集します(C:/Apache24/conf/httpd.conf)、次の行を追加するか、すでに存在する場合はコメントを解除します。

以下の行はSSLモジュールを有効にし、ApacheがHTTPSポートで動作できるようにします。

LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

3.次に、Apache SSLファイルを編集します(C:/Apache24/conf/extra/httpd-ssl.conf)そして次の行を追加します。 このファイルはによって呼び出されます httpd.conf で定義されているように内部的にファイル httpd.conf ファイル(conf / extra / httpd-ssl.confをインクルードします)。

SSLCertificateFile "C:Apache24confapache.crt"
SSLCertificateKeyFile "C:Apache24confapache.key"

4. PowerShellで次のコマンドを実行してApacheインストールbinフォルダーに移動し、Apacheサービスを開始します。

# Change the working directory
cd C:ProgramFilesOpenSSL-Win64bin
# Start the Apache service
./httpd.exe
WindowsマシンでのApacheサーバーの起動
WindowsマシンでのApacheサーバーの起動

5.最後に、に移動します https:// localhost Apacheサーバーを検証します。

ページに同じ(動作します!)メッセージが表示されます。これは、ApacheサーバーがWindowsマシンで自己署名証明書を使用して実行されていることを確認するものです。

ポートHTTPSのWindowsでApacheを確認する
ポートHTTPSのWindowsでApacheを確認する

結論

このチュートリアルでは、UbuntuとWindowsの両方のオペレーティングシステムでApache Webサーバーを構成し、Apacheインスタンスに安全にアクセスできることを確認する方法を学習しました。

では、Apacheでゲームをどのように強化する予定ですか? おそらくWeb展開を自動化しますか? または、Jenkins CI CDパイプラインを作成して、ソフトウェア開発プロセスを改善しますか?

The post WindowsとLinuxで自己署名証明書をマスターする appeared first on Gamingsym Japan.