LinuxサーバーでHTTPSを有効にする
- 重要:
- この手順では、Java
keytool
コマンドを使用します。keytool
の使用については、Javaのドキュメントまたは認証局が提供するドキュメントを参照してください。 - 後でリストアする場合に備えて、これらのファイルのコピーを安全な場所に保存します。
/opt/RICOH/DataCollector/apache-tomcat/conf/server.xml
/opt/RICOH/DataCollector/apache-tomcat/conf/web.xml
/opt/RICOH/DataCollector/config.json
- デジタル証明書を取得して、RICOH Supervisor Data Collectorがインストールされているコンピューターに保存します。
- 認証局によって署名された証明書を使用するには、以下の操作を行います。
- 署名された証明書を取得してキーストアファイルにインポートするには、認証局が提供する指示に従います。
- RICOH Supervisor Data Collectorがインストールされているコンピューターにキーストアファイルをコピーします。キーストアファイルのパスワードを確認しておきます。
- rootユーザーとしてターミナルウインドウを開きます。
- Java keytoolを含むフォルダーに移動します。
cd /opt/RICOH/DataCollector/jre/bin
- RICOH Supervisor Data Collectorが使用するJavaの信頼された証明書ストアにキーストアファイルをインポートします。
keytool -importkeystore -srckeystore "keystore_path" -destkeystore "/opt/RICOH/DataCollector/jre/lib/security/cacerts" -srcstorepass keystore_password -deststorepass changeit
keystore_pathをキーストアファイルへのパスに置き換えます。引用符は残しておきます。
keystore_passwordをキーストアファイルのパスワードに置き換えます。
- 自己署名証明書を作成するには、以下の操作を行います。
- RICOH Supervisor Data Collectorがインストールされているコンピューターで rootユーザーとしてターミナルウインドウを開きます。
- Java keytoolを含むフォルダーに移動します。
cd /opt/RICOH/DataCollector/jre/bin
- ローカルキーストアファイルおよび自己署名証明書を生成します。
keytool -genkey -keyalg RSA -alias ricohsupervisor -keypass keystore_password -keystore "/opt/RICOH/DataCollector/ricohsupervisor-localkeystore.jks" -storepass keystore_password -validity certificate_validity -keysize 2048 -ext san=dns:localhost
keystore_passwordをキーストアファイルに設定したいパスワードに置き換えます。
certificate_validityを証明書の有効日数に置き換えます。たとえば、90日の場合
90
を入力します。 - RICOH Supervisor Data Collectorが使用するJavaの信頼された証明書ストアに生成したキーストアファイルをインポートします。
keytool -importkeystore -srckeystore "/opt/RICOH/DataCollector/ricohsupervisor-localkeystore.jks" -destkeystore "/opt/RICOH/DataCollector/jre/lib/security/cacerts" -srcstorepass keystore_password -deststorepass changeit
keystore_passwordをキーストアファイルに設定するパスワードに置き換えます。
- 認証局によって署名された証明書を使用するには、以下の操作を行います。
- RICOH Supervisor Data Collectorサービスを停止します。
sudo systemctl stop RicohSupervisorDataCollector
- HTTPSを有効にします。
/opt/RICOH/DataCollector/apache-tomcat/conf
に移動して、 rootユーザーとしてserver.xml
ファイルを編集します。sudo gedit /opt/RICOH/DataCollector/apache-tomcat/conf/server.xml
- 次のコードを見つけます。
<!-- <Connector executor="tomcatThreadPool" port="19280" URIEncoding="UTF-8" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> -->
- その下にこのコードを挿入します。
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol" port="8443" maxThreads="200" scheme="https" secure="true" SSLEnabled="true" keystoreFile="keystore_path" keystorePass="keystore_password" clientAuth="false" sslProtocol="TLS" sslEnabledProtocols="TLSv1.2" />
- keystore_pathをキーストアファイルへのパスに置き換えます。引用符は残しておきます。自己署名証明書を生成した場合、
"/opt/RICOH/DataCollector/ricohsupervisor-localkeystore.jks"
を使用します。 - keystore_passwordをキーストアファイルのパスワードに置き換えます。引用符は残しておきます。
- ファイルを保存して閉じます。
- HTTP要求をHTTPSにリダイレクトします。
/opt/RICOH/DataCollector/apache-tomcat/conf
に移動して、 rootユーザーとしてweb.xml
ファイルを編集します。sudo gedit /opt/RICOH/DataCollector/apache-tomcat/conf/web.xml
- このファイルの最後の行、
</web-app>
に移動します。 - 最後の行の直前にコードを挿入します。
<security-constraint> <web-resource-collection> <web-resource-name>Entire Application</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <!-- auth-constraint goes here if you require authentication --> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint>
- ファイルを保存して閉じます。
- 内部サーバーアドレスを変更します。
/opt/RICOH/DataCollector
に移動して、 rootユーザーとしてconfig.json
ファイルを編集します。sudo gedit /opt/RICOH/DataCollector/config.json
"webAddress": "http://localhost:19280"
の行を"webAddress": "https://localhost:8443"
に置き換えます。- ファイルを保存して閉じます。
- RICOH Supervisor Data Collectorサービスを開始します。
sudo systemctl start RicohSupervisorDataCollector
- 要求が安全な接続に転送されることを確認します。
- 対応Webブラウザーウィンドウを開きます。
- アドレスバーにURLを入力します。
http://server_address:port_number/DataCollector
ここで、server_addressは、RICOH Supervisor Data Collectorがインストールされているコンピューターのホスト名またはIPアドレスです。port_numberはWeb サーバーポートです。
ページが読み込まれると、このアドレスが
https://server_address:port_number/DataCollector
に変更されます。
ユーザーがシステムにアクセスすると、自分でアクションを実行しなくても、セキュアプロトコルにリダイレクトされます。ただし、自己署名証明書を使用する場合、または証明書がサーバーに明確に結合されていない場合、Webブラウザーは証明書が信頼されていないという警告が出されます。
証明書の有効期限が切れる直前の場合、HTTPSを有効にする手順を繰り返します。インストールプロセスを実行してRICOH Supervisor Data Collectorを再インストール、アップグレード、または修復するたびに、この手順を繰り返す必要があります。
RICOH Supervisor Data Collectorを修復した後でHTTPSを有効にしない場合、内部サーバーアドレスをHTTPに戻す必要があります。
/opt/RICOH/DataCollector
に移動して、 rootユーザーとしてconfig.json
ファイルを編集します。sudo gedit /opt/RICOH/DataCollector/config.json
"webAddress": "https://localhost:8443"
の行を"webAddress": "http://localhost:19280"
に置き換えます。- ファイルを保存して閉じます。
- RICOH Supervisor Data Collector サービスを再開します。