(C#版サーバのみ)SSLの読み込み処理を組み込む

目次

  概要
  mun_resolver サーバプロセスでSSL証明書を読み込む
  mun_proxy サーバプロセスでSSL証明書を読み込む
  mun_room サーバプロセスでSSL証明書を読み込む


概要

現時点(MUN2.8.0)では、C#版サーバにSSL読み込み処理が組み込まれていません

  現辞典(MUN 2.8.0 リリース段階)では、SSL証明書の読み込み処理はC++版サーバのみ対応しており、
  C#版サーバについては組み込まれていません。
  そのため、C#版サーバについてはSSL読み込み処理を各自で組み込む必要があります。
C#版サーバのSSL読み込み機能の本実装については後日対応予定です。


mun_resolver サーバプロセスでSSL証明書を読み込む

C#版 mun_resolver サーバでSSLを有効にする。

  mun_resolver サーバプロセスでSSL証明書を読み込み、WSS通信が可能な状態にします。
  以下のうち、お使いのサーバ環境に応じたパネルをクリックして組み込んでください。

server/csharp/mun_resolver/src/server/MunResolverServer.cs を開き、MunResolverServer.Initialize() メソッド内に
以下のコードを追加してください。
            // SSL証明書設定
            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cacert.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslCertificateData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_certificate_data(sslCertificateData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Certificate Data is not found.");
            }

            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cakey.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslPrivateKeyData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_private_key_data(sslPrivateKeyData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Private Key Data is not found.");
            }
server/csharp/mun_resolver/src/server/MunResolverServer.cs を開き、MunResolverServer.Initialize() メソッド内に
以下のコードを追加してください。
            // SSL証明書設定
            try
            {
                StreamReader reader = new StreamReader("../../config/ssl/cacert.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslCertificateData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_certificate_data(sslCertificateData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Certificate Data is not found.");
            }

            try
            {
                StreamReader reader = new StreamReader("../../config/ssl/cakey.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslPrivateKeyData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_private_key_data(sslPrivateKeyData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Private Key Data is not found.");
            }
server/csharp/mun_resolver/src/server/MunResolverServer.cs を開き、MunResolverServer.Initialize() メソッド内に
以下のコードを追加してください。
            // SSL証明書設定
            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cacert.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslCertificateData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_certificate_data(sslCertificateData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Certificate Data is not found.");
            }

            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cakey.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslPrivateKeyData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_private_key_data(sslPrivateKeyData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Private Key Data is not found.");
            }


mun_proxy サーバプロセスでSSL証明書を読み込む

C#版 mun_proxy サーバでSSLを有効にする。

  mun_proxy サーバプロセスでSSL証明書を読み込み、WSS通信が可能な状態にします。
  以下のうち、お使いのサーバ環境に応じたパネルをクリックして組み込んでください。

server/csharp/mun_proxy/src/server/MunProxyServer.cs を開き、MunProxyServer.Initialize() メソッド内に
以下のコードを追加してください。
            // SSL証明書設定
            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cacert.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslCertificateData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_certificate_data(sslCertificateData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Certificate Data is not found.");
            }

            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cakey.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslPrivateKeyData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_private_key_data(sslPrivateKeyData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Private Key Data is not found.");
            }
server/csharp/mun_proxy/src/server/MunProxyServer.cs を開き、MunProxyServer.Initialize() メソッド内に
以下のコードを追加してください。
            // SSL証明書設定
            try
            {
                StreamReader reader = new StreamReader("../../config/ssl/cacert.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslCertificateData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_certificate_data(sslCertificateData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Certificate Data is not found.");
            }

            try
            {
                StreamReader reader = new StreamReader("../../config/ssl/cakey.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslPrivateKeyData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_private_key_data(sslPrivateKeyData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Private Key Data is not found.");
            }
server/csharp/mun_proxy/src/server/MunProxyServer.cs を開き、MunProxyServer.Initialize() メソッド内に
以下のコードを追加してください。
            // SSL証明書設定
            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cacert.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslCertificateData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_certificate_data(sslCertificateData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Certificate Data is not found.");
            }

            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cakey.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslPrivateKeyData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_private_key_data(sslPrivateKeyData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Private Key Data is not found.");
            }


mun_room サーバプロセスでSSL証明書を読み込む

C#版 mun_room サーバでSSLを有効にする。

  mun_room サーバプロセスでSSL証明書を読み込み、WSS通信が可能な状態にします。
  以下のうち、お使いのサーバ環境に応じたパネルをクリックして組み込んでください。

server/csharp/mun_room/src/server/MunRoomServer.cs を開き、MunRoomServer.Initialize() メソッド内に
以下のコードを追加してください。
            // SSL証明書設定
            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cacert.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslCertificateData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_certificate_data(sslCertificateData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Certificate Data is not found.");
            }

            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cakey.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslPrivateKeyData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_private_key_data(sslPrivateKeyData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Private Key Data is not found.");
            }
server/csharp/mun_room/src/server/MunRoomServer.cs を開き、MunRoomServer.Initialize() メソッド内に
以下のコードを追加してください。
            // SSL証明書設定
            try
            {
                StreamReader reader = new StreamReader("../../config/ssl/cacert.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslCertificateData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_certificate_data(sslCertificateData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Certificate Data is not found.");
            }

            try
            {
                StreamReader reader = new StreamReader("../../config/ssl/cakey.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslPrivateKeyData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_private_key_data(sslPrivateKeyData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Private Key Data is not found.");
            }
server/csharp/mun_room/src/server/MunRoomServer.cs を開き、MunRoomServer.Initialize() メソッド内に
以下のコードを追加してください。
            // SSL証明書設定
            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cacert.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslCertificateData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_certificate_data(sslCertificateData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Certificate Data is not found.");
            }

            try
            {
                StreamReader reader = new StreamReader("../config/ssl/cakey.pem", System.Text.Encoding.GetEncoding("UTF-8"));
                string sslPrivateKeyData = reader.ReadToEnd();
                reader.Close();
                Mrs.mrs_set_ssl_private_key_data(sslPrivateKeyData);
            }
            catch
            {
                Mrs.mrs_console_log(Mrs.MrsLogLevel.INFO, "SSL Private Key Data is not found.");
            }