このドキュメントで説明するソフトウェアは、Extended SupportまたはSustaining Supportのいずれかにあります。 詳細は、https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdfを参照してください。
Oracleでは、このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお薦めします。

機械翻訳について

3.3.1 opensslコマンドについて

opensslパッケージに含まれるopensslコマンドを使用すると、OpenSSLライブラリから次のような様々な暗号化機能を実行できます。

  • 秘密キーと公開キーのペアの作成および管理

  • 公開キー暗号化操作の実行

  • 自己署名証明書の作成

  • 証明書署名リクエスト(CSR)の作成

  • 証明書失効リスト(CRL)の作成

  • 様々な形式間での証明書ファイルの変換

  • メッセージ・ダイジェストの計算

  • ファイルの暗号化および復号化

  • クライアント側およびサーバー側両方のTLS/SSLのHTTPおよびSMTPサーバーでのテスト

  • S/MIME電子メールの検証、暗号化および署名

  • 素数の生成およびテスト、および疑似ランダム・データの生成

次に、opensslコマンドのサンプルをいくつか示します。

暗号化されていない秘密キーをprikey.pemに書き込み、証明書をcert.pemに書き込んで、365日間有効な自己署名X.509証明書を作成します。

# openssl req -x509 -nodes -days 365 -subj '/C=US/ST=Ca/L=Sunnydale/CN=www.unserdom.com' \
  -newkey rsa:1024 -keyout prikey.pem -out cert.pem

ポート443でリスニングするサーバーを起動して、自己署名証明書をテストします。

# openssl s_server -accept 443 -cert cert.pem -key prikey.pem -www

接続のクライアント側をテストします。 このコマンドは証明書などの接続に関する情報を返し、ユーザーはHTTPコマンドを直接入力できます。

# openssl s_client -connect server:443 -CAfile cert.pem

ブラウザでダウンロードするために、ルート証明書をWebサイトに公開できる形式に変換します。

# openssl x509 -in cert.pem -out rootcert.crt

サーバーから証明書を抽出します。

# echo | openssl s_client -connect server:443 2>/dev/null | \
  sed -ne '/BEGIN CERT/,/END CERT/p' > svrcert.pem

X.509証明書に含まれる情報を表示します。

# openssl x509 -text -noout -in svrcert.pem

証明書のSHA1フィンガープリントを表示します。

# openssl x509 -sha1 -noout -fingerprint -in cert.pem

暗号化されていない秘密キーをprikey.pemに書き込み、CAに送信するためにリクエストをcsr.pemに書き込んで、CSRを生成します。 CAは署名して、公開キーを認証する証明書または証明書チェーンを戻します。

# openssl req -new -nodes '/CN=www.unserdom.com/O=Unser Dom, Corp./C=US/ST=Ca/L=Sunnydale' \
  -newkey rsa:1024 -keyout prikey.pem -out csr.pem

CSRに含まれる情報を表示します。

# openssl req -in csr.pem -noout -text

署名機関、署名チェーン、有効期間を含む証明書を検証します。

# openssl verify cert.pem

システムで信頼されているCAの情報を含むディレクトリを表示します。 デフォルトでは、ディレクトリは/etc/pki/tlsです。 /etc/pki/tls/certsサブディレクトリには、信頼できる証明書が含まれます。

# openssl version -d

ファイルのSHA1ダイジェストを作成します。

# openssl dgst -sha1 file

ファイルprikey.pemに格納されている秘密キーを使用して、ファイルのSHA1ダイジェストに署名します。

# openssl dgst -sha1 -sign prikey.pem -out file.sha1 file

ファイルpubkey.pemに格納されている公開キーを使用して、ファイルの署名ダイジェストを検証します。

# openssl dgst -sha1 -verify pubkey.pem -signature file.sha1 file

使用可能なすべての暗号を表示します。

# openssl list-cipher-commands

Blowfishを使用してファイルを暗号化します。

# openssl enc -blowfish -salt -in file -out file.enc

Blowfishで暗号化されたファイルを復号化します。

# openssl enc -d -blowfish -in file.enc -out file.dec

BASE64でエンコードされた証明書(PEMまたはRFC 1421とも呼ばれます)をバイナリDER形式に変換します。

# openssl x509 -in cert.pem -outform der -out certificate.der

BASE64でエンコードされたエンティティとそのCAの証明書を、単一のPKCS7形式の証明書に変換します。

# openssl crl2pkcs7 -nocrl -certfile entCert.cer -certfile CACert.cer -out certificate.p7b 

詳細は、openssl(1)ciphers(1)dgst(1)enc(1)req(1)s_client(1)s_server(1)verify(1)およびx509(1)の各マニュアル・ページを参照してください。