

# RDS for Oracle DB インスタンスで SSL を使用するように SQL\$1Plus を設定する
<a name="Appendix.Oracle.Options.SSL.ClientConfiguration"></a>

Oracle SSL オプションを使用する RDS for Oracle DB インスタンスに接続する前に、SQL\$1Plus を設定する必要があります。

**注記**  
適切なクライアントからの DB インスタンスへのアクセスを許可するには、セキュリティグループが適切に設定されていることを確認します。詳細については、「[セキュリティグループによるアクセス制御](Overview.RDSSecurityGroups.md)」を参照してください。さらに、この手順は、SQL\$1Plus および Oracle ホームを直接使用するその他のクライアント向けです。JDBC 接続については、「[JDBC を介した SSL 接続のセットアップ](Appendix.Oracle.Options.SSL.JDBC.md)」を参照してください。

**SSL を使用して RDS for Oracle DB インスタンスに接続するように SQL\$1Plus を設定するには**

1. `ORACLE_HOME` 環境可変を Oracle ホームディレクトリの場所に設定します。

   Oracle ホームディレクトリへのパスは、インストールによって異なります。次の例では、`ORACLE_HOME` 環境可変を設定します。

   ```
   prompt>export ORACLE_HOME=/home/user/app/user/product/19.0.0/dbhome_1
   ```

   Oracle 環境可変の設定については、Oracle ドキュメントの「[SQL\$1Plus 環境可変](http://docs.oracle.com/database/121/SQPUG/ch_two.htm#SQPUG331)」を参照してください。オペレーティングシステムについては、Oracle インストールガイドを参照してください。

1. `$ORACLE_HOME/lib` を `LD_LIBRARY_PATH` 環境可変に追加します。

   LD\$1LIBRARY\$1PATH 環境可変を設定する例を以下に示します。

   ```
   prompt>export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib 
   ```

1. `$ORACLE_HOME/ssl_wallet` に Oracle Wallet のディレクトリを作成します。

   以下は、Oracle Wallet のディレクトリを作成する例です。

   ```
   prompt>mkdir $ORACLE_HOME/ssl_wallet
   ```

1. すべての AWS リージョン で動作する証明書バンドルをダウンロードし、そのファイルを ssl\$1wallet ディレクトリに置きます。詳細については、「[SSL/TLS を使用した DB インスタンスまたはクラスターへの接続の暗号化](UsingWithRDS.SSL.md)」を参照してください。

1. `$ORACLE_HOME/network/admin` ディレクトリで、`tnsnames.ora` ファイルを変更または作成して以下のエントリを含めます。

   ```
   net_service_name = 
     (DESCRIPTION = 
       (ADDRESS_LIST = 
         (ADDRESS = 
           (PROTOCOL = TCPS) 
           (HOST = endpoint) 
           (PORT = ssl_port_number)
         )
       )
       (CONNECT_DATA = 
         (SID = database_name)
       )
       (SECURITY = 
         (SSL_SERVER_CERT_DN = "C=US,ST=Washington,L=Seattle,O=Amazon.com,OU=RDS,CN=endpoint")
       )
     )
   ```

1. 同じディレクトリで、sqlnet.ora ファイルを変更または作成して以下のパラメータを含めます。
**注記**  
TLS でセキュリティ保護された接続を介してエンティティと通信するために、Oracle は認証用の必要な証明書を持つウォレットを必要とします。ステップ 7 に示すように、Oracle の ORAPKI ユーティリティを使用して Oracle ウォレットを作成して管理できます。詳細については、Oracle ドキュメントで「[ORAPKI を使用した Oracle ウォレットの設定](https://docs.oracle.com/cd/E92519_02/pt856pbr3/eng/pt/tsvt/task_SettingUpOracleWalletUsingORAPKI.html)」を参照してください。

   ```
   WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = $ORACLE_HOME/ssl_wallet))) 
   SSL_CLIENT_AUTHENTICATION = FALSE 
   SSL_VERSION = 1.0 
   SSL_CIPHER_SUITES = (SSL_RSA_WITH_AES_256_CBC_SHA) 
   SSL_SERVER_DN_MATCH = ON
   ```
**注記**  
`SSL_VERSION` はより高い値に設定できます (DB インスタンスでサポートされている場合)。

1. 以下のコマンドを実行して Oracle Wallet を作成します。

   ```
   prompt>orapki wallet create -wallet $ORACLE_HOME/ssl_wallet -auto_login_only
   ```

1. OS ユーティリティを使用して、.pem バンドルファイル内の各証明書を個別の .pem ファイルに抽出します。

1. 個別の `orapki` コマンドを使用して各証明書をウォレットに追加し、`certificate-pem-file` を.pem ファイルの絶対ファイル名に置き換えます。

   ```
   prompt>orapki wallet add -wallet $ORACLE_HOME/ssl_wallet -trusted_cert -cert
         certificate-pem-file -auto_login_only
   ```

   詳細については、「[SSL/TLS 証明書のローテーション](UsingWithRDS.SSL-certificate-rotation.md)」を参照してください。