SnapCenterサーバとのセキュアなMySQL接続の設定
SnapCenter サーバと MySQL サーバ間の通信をスタンドアロン構成または Network Load Balancing ( NLB )構成で保護する場合は、 Secure Sockets Layer ( SSL )証明書とキーファイルを生成できます。
スタンドアロンSnapCenterサーバ構成用のセキュアなMySQL接続の設定
SnapCenter サーバと MySQL サーバ間の通信を保護する場合は、 Secure Sockets Layer ( SSL )証明書およびキーファイルを生成できます。証明書とキーファイルは MySQL Server と SnapCenter Server で設定する必要があります。
次の証明書が生成されます。
-
CA証明書
-
サーバのパブリック証明書と秘密鍵ファイル
-
クライアントのパブリック証明書と秘密鍵ファイル
-
手順 *
-
opensslコマンドを使用して、WindowsのMySQLサーバおよびクライアントのSSL証明書とキーファイルを設定します。
詳しくは、を参照してください。 "MySQL バージョン 5.7 : openssl を使用した SSL 証明書およびキーの作成"
サーバ証明書、クライアント証明書、およびキーファイルに使用される共通名の値は、それぞれCA証明書に使用される共通名の値と異なる必要があります。共通名の値が同じ場合、OpenSSLを使用してコンパイルされたサーバの証明書とキーファイルは失敗します。 * ベストプラクティス: * サーバ証明書の共通名として、サーバの Fully Qualified Domain Name ( FQDN ;完全修飾ドメイン名)を使用してください。
-
SSL証明書とキーファイルをMySQLのデータフォルダにコピーします。
MySQLデータフォルダのデフォルトパスはです
C:\ProgramData\NetApp\SnapCenter\MySQL Data\Data\
。 -
MySQLサーバ構成ファイル(my.in)で、CA証明書、サーバパブリック証明書、クライアントパブリック証明書、サーバ秘密鍵、およびクライアント秘密鍵のパスを更新します。
MySQLサーバ構成ファイル(my.in)のデフォルトパスはです
C:\ProgramData\NetApp\SnapCenter\MySQL Data\my.ini
。MySQL サーバ構成ファイル( my.in )の [mysqld] セクションで、 CA 証明書、サーバパブリック証明書、サーバ秘密鍵のパスを指定する必要があります。 MySQL サーバ構成ファイル( my.in )の [client] セクションで、 CA 証明書、クライアントパブリック証明書、およびクライアント秘密鍵のパスを指定する必要があります。
次の例では、デフォルトフォルダ内のmy.iniファイルの[mysqld]セクションに証明書とキーファイルがコピーされ `C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data`ています。
ssl-ca="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/ca.pem"
ssl-cert="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/server-cert.pem"
ssl-key="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/server-key.pem"
次の例は、 my.ini ファイルの [client] セクションで更新されたパスを示しています。
ssl-ca="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/ca.pem"
ssl-cert="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/client-cert.pem"
ssl-key="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/client-key.pem"
-
インターネットインフォメーションサーバー (IIS) で SnapCenter サーバーの Web アプリケーションを停止します。
-
MySQLサービスを再起動します。
-
MySQLProtocolキーの値をSnapManager .Web.UI.dll.configファイルで更新します。
次の例は、SnapManager .Web.UI.dll.configファイルで更新されたMySQLProtocolキーの値を示しています。
<add key="MySQLProtocol" value="SSL" />
-
my.iniファイルの[client]セクションに指定されているパスを使用して、SnapManager .Web.UI.dll.configファイルを更新します。
次の例は、 my.ini ファイルの [client] セクションで更新されたパスを示しています。
<add key="ssl-client-cert" value="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/client-cert.pem" />
+
<add key="ssl-client-key" value="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/client-key.pem" />
+
<add key="ssl-ca" value="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/ca.pem" />
-
IIS で SnapCenter サーバー Web アプリケーションを起動します。
-
HA構成用のセキュアなMySQL接続の設定
SnapCenterサーバとMySQLサーバ間の通信を保護する場合は、高可用性(HA)ノードの両方に対してSecure Sockets Layer(SSL)証明書とキーファイルを生成できます。証明書とキーファイルは、MySQLサーバとHAノードで設定する必要があります。
次の証明書が生成されます。
-
CA証明書
一方のHAノードでCA証明書が生成され、もう一方のHAノードにコピーされます。
-
両方のHAノードのサーバパブリック証明書とサーバ秘密鍵ファイル
-
両方のHAノードのクライアントパブリック証明書とクライアント秘密鍵ファイル
-
手順 *
-
1つ目のHAノードで、opensslコマンドを使用して、WindowsのMySQLサーバとクライアントのSSL証明書とキーファイルを設定します。
詳しくは、を参照してください。 "MySQL バージョン 5.7 : openssl を使用した SSL 証明書およびキーの作成"
サーバ証明書、クライアント証明書、およびキーファイルに使用される共通名の値は、それぞれCA証明書に使用される共通名の値と異なる必要があります。共通名の値が同じ場合、OpenSSLを使用してコンパイルされたサーバの証明書とキーファイルは失敗します。 * ベストプラクティス: * サーバ証明書の共通名として、サーバの Fully Qualified Domain Name ( FQDN ;完全修飾ドメイン名)を使用してください。
-
SSL証明書とキーファイルをMySQLのデータフォルダにコピーします。
MySQLのデータフォルダのデフォルトパスは、C:\ProgramData\NetApp\SnapCenter\MySQL Data\Data\です。
-
MySQLサーバ構成ファイル(my.in)で、CA証明書、サーバパブリック証明書、クライアントパブリック証明書、サーバ秘密鍵、およびクライアント秘密鍵のパスを更新します。
MySQLサーバ構成ファイル(my.in)のデフォルトのパスは、C:\ProgramData\NetApp\SnapCenter\MySQL Data\my.inです。
MySQL サーバ構成ファイル( my.in )の [mysqld] セクションで、 CA 証明書、サーバパブリック証明書、サーバ秘密鍵のパスを指定する必要があります。 MySQL サーバ構成ファイル( my.in )の [client] セクションで、 CA 証明書、クライアントパブリック証明書、およびクライアント秘密鍵のパスを指定する必要があります。
次の例は、 my.ini ファイルの mysqld セクションにコピーされた証明書とキーファイルを示しています。このデフォルトフォルダは C : /ProgramData\NetApp/SnapCenter /MySQL Data\Data です。
ssl-ca="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/ca.pem"
ssl-cert="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/server-cert.pem"
ssl-key="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/server-key.pem"
次の例は、 my.ini ファイルの [client] セクションで更新されたパスを示しています。
ssl-ca="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/ca.pem"
ssl-cert="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/client-cert.pem"
ssl-key="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/client-key.pem"
-
2つ目のHAノードで、次の手順に従ってCA証明書をコピーし、サーバ パブリック証明書、サーバ秘密鍵ファイル、クライアント パブリック証明書、およびクライアント秘密鍵ファイルを生成します。
-
1つ目のHAノードで生成されたCA証明書を2つ目のNLBノードのMySQLのデータフォルダにコピーします。
MySQLのデータフォルダのデフォルトパスは、C:\ProgramData\NetApp\SnapCenter\MySQL Data\Data\です。
CA証明書は今後作成しないでください。サーバパブリック証明書、クライアントパブリック証明書、サーバ秘密鍵ファイル、およびクライアント秘密鍵ファイルのみを作成する必要があります。 -
1つ目のHAノードで、opensslコマンドを使用して、WindowsのMySQLサーバとクライアントのSSL証明書とキーファイルを設定します。
サーバ証明書、クライアント証明書、およびキーファイルに使用される共通名の値は、それぞれCA証明書に使用される共通名の値と異なる必要があります。共通名の値が同じ場合、OpenSSLを使用してコンパイルされたサーバの証明書とキーファイルは失敗します。 サーバ証明書の共通名としてサーバのFQDNを使用することを推奨します。
-
SSL証明書とキーファイルをMySQLのデータフォルダにコピーします。
-
MySQLサーバ構成ファイル(my.in)で、CA証明書、サーバパブリック証明書、クライアントパブリック証明書、サーバ秘密鍵、およびクライアント秘密鍵のパスを更新します。
MySQL サーバ構成ファイル( my.in )の [mysqld] セクションで、 CA 証明書、サーバパブリック証明書、サーバ秘密鍵のパスを指定する必要があります。 MySQL サーバ構成ファイル( my.in )の [client] セクションで、 CA 証明書、クライアントパブリック証明書、およびクライアント秘密鍵のパスを指定する必要があります。
次の例は、 my.ini ファイルの mysqld セクションにコピーされた証明書とキーファイルを示しています。このデフォルトフォルダは C : /ProgramData\NetApp/SnapCenter /MySQL Data\Data です。
ssl-ca="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/ca.pem"
ssl-cert="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/server-cert.pem"
ssl-key="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/server-key.pem"
次の例は、 my.ini ファイルの [client] セクションで更新されたパスを示しています。
ssl-ca="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/ca.pem"
+
ssl-cert="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/server-cert.pem"
+
ssl-key="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/server-key.pem"
-
-
両方のHAノードのインターネットインフォメーションサーバ(IIS)でSnapCenterサーバWebアプリケーションを停止します。
-
両方のHAノードでMySQLサービスを再起動します。
-
両方のHAノードのMySQLProtocolキーの値をSnapManager .Web.UI.dll.configファイルで更新します。
次の例は、SnapManager .Web.UI.dll.configファイルで更新されたMySQLProtocolキーの値を示しています。
<add key="MySQLProtocol" value="SSL" />
-
両方のHAノードについて、my.iniファイルの[client]セクションで指定したパスを使用してSnapManagerの.Web.UI.dll.configファイルを更新します。
次の例は、 my.ini ファイルの [client] セクションで更新されたパスを示しています。
<add key="ssl-client-cert" value="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/client-cert.pem" />
+
<add key="ssl-client-key" value="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/client-key.pem" />
+
<add key="ssl-ca" value="C:/ProgramData/NetApp/SnapCenter/MySQL Data/Data/ca.pem" />
-
両方のHAノードのIISでSnapCenterサーバWebアプリケーションを起動します。
-
一方のHAノードでSet-SmRepositoryConfig -RebuildSlave -Force PowerShellコマンドレットに-Forceオプションを指定して使用し、両方のHAノードにセキュアなMySQLレプリケーションを確立します。
レプリケーションステータスが正常であっても、 -Force オプションを使用してスレーブリポジトリを再構築できます。
-