アンドロイド

自己を作成する

目次:

Anonim

この記事では、opensslツールを使用して自己署名SSL証明書を作成する方法について説明します。

自己署名SSL証明書とは何ですか?

自己署名SSL証明書は、信頼できる認証局ではなく、作成者が署名した証明書です。 自己署名証明書は、信頼できるCA署名SSL証明書と同じレベルの暗号化を持つことができます。

任意のブラウザで有効であると認識された自己署名証明書。 自己署名証明書を使用している場合、WebブラウザーはWebサイトの証明書を検証できないという警告を訪問者に表示します。

自己署名証明書は、主にテスト目的または内部使用に使用されます。 インターネットに公開されている運用システムでは、自己署名証明書を使用しないでください。

前提条件

自己署名証明書を生成するには、opensslツールキットが必要です。

Linuxシステムにopensslパッケージがインストールされているかどうかを確認するには、ターミナルを開いて openssl version と入力し、Enterを押します。 パッケージがインストールされている場合、システムはOpenSSLバージョンを出力します。

システムにopensslパッケージがインストールされていない場合は、次のコマンドを実行してインストールできます。

  • UbuntuおよびDebian

    sudo apt install openssl

    CentosとFedora

    sudo yum install openssl

自己署名SSL証明書の作成

新しい自己署名SSL証明書を作成するには、 openssl req コマンドを使用します。

openssl req -newkey rsa:4096 \ -x509 \ -sha256 \ -days 3650 \ -nodes \ -out example.crt \ -keyout example.key

コマンドを分析して、各オプションの意味を理解しましょう。

  • -newkey rsa:4096 新しい証明書要求と4096ビットRSAキーを作成します。 デフォルトは2048ビットです。 -x509 -X.509証明書を作成します。 -sha256 ビットSHA(Secure Hash Algorithm)を使用します。 -days 3650 証明書を認証する日数。 3650は10年です。 任意の正の整数を使用できます。 -nodes パスフレーズなしでキーを作成します。 -out example.crt 新しく作成された証明書を書き込むファイル名を指定します。 任意のファイル名を指定できます。 -keyout example.key 新しく作成された秘密鍵を書き込むファイル名を指定します。 任意のファイル名を指定できます。

openssl req コマンドオプションの詳細については、OpenSSL reqドキュメントページをご覧ください。

Enterキーを押すと、コマンドは秘密キーを生成し、証明書の生成に使用する一連の質問をします。

Generating a RSA private key…………………………………………………………….++++……..++++ writing new private key to 'example.key' ----- 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. -----

要求された情報を入力し、Enterを押します。

Country Name (2 letter code):US State or Province Name (full name):Alabama Locality Name (eg, city):Montgomery Organization Name (eg, company):Linuxize Organizational Unit Name (eg, section):Marketing Common Name (eg server FQDN or YOUR name):linuxize.com Email Address:[email protected]

指定した場所に証明書と秘密キーが作成されます。 lsコマンドを使用して、ファイルが作成されたことを確認します。

ls

example.crt example.key

それでおしまい! 新しい自己署名SSL証明書が生成されました。

新しい証明書とキーを外部ストレージにバックアップすることをお勧めします。

プロンプトなしで自己署名SSL証明書を作成する

openssl req -newkey rsa:4096 \ -x509 \ -sha256 \ -days 3650 \ -nodes \ -out example.crt \ -keyout example.key \ -subj "/C=SI/ST=Ljubljana/L=Ljubljana/O=Security/OU=IT Department/CN=www.example.com"

Generating a RSA private key…………………………………………………………….++++……..++++ writing new private key to 'example.key' -----

-subj 行で指定されたフィールドは以下のとおりです。

  • C= -国名。 2文字のISO略語。 ST= -州または県の名前。 L= -地域名。 あなたがいる都市の名前。 O= -組織のフルネーム。 OU= -組織単位。 CN= -完全修飾ドメイン名。

結論

このガイドでは、opensslツールを使用して自己署名SSL証明書を生成する方法を示しました。 証明書を取得したので、それを使用するようにアプリケーションを構成できます。

ご質問がある場合は、コメントをお気軽にお寄せください。

bashセキュリティ端末