MongoDBの保護
MongoDBはデフォルトでは安全ではありません。MongoDBをインストールし、認証用に構成せずにMongoDBを起動する場合は、時間がかかります
MariaDBは無料のオープンソースデータベースであり、MySQLに代わって最も広く使用されているドロップイン代替品です。これはMySQLの開発者によって作成され、GNU GPLの下で無料のままでいることを目的としています。非常に高速でスケーラブルであり、豊富な機能セットを備えているため、さまざまなユースケースに対応できます。
このチュートリアルでは、Ubuntu 16.04にSSLをサポートするMariaDBをインストールして構成する方法について説明します。
デフォルトでは、MariaDBの最新バージョンはUbuntu 16.04リポジトリでは利用できません。したがって、MariaDBリポジトリをシステムに追加する必要があります。
まず、次のコマンドでキーをダウ��ロードします。
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
次に、MariaDBリポジトリを/etc/apt/sources.list
ファイルに追加します。
sudo echo "deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main" >> /etc/apt/sources.list
次のコマンドでaptインデックスを更新します。
sudo apt-get update -y
aptインデックスが更新されたら、次のコマンドを使用してMariaDBサーバーをインストールします。
sudo apt-get install mariadb-server -y
MariaDBサーバーを起動し、起動時に起動できるようにします。
sudo systemctl start mysql
sudo systemctl enable mysql
次に、mysql_secure_installation
スクリプトを実行してMariaDBのインストールを保護する必要があります。このスクリプトを使用すると、ルートパスワードの設定、匿名ユーザーの削除、リモートルートログインの禁止、およびテストデータベースの削除を行うことができます。
sudo mysql_secure_installation
最初に、すべてのキーと証明書ファイルを格納するディレクトリを作成します。
sudo mkdir /etc/mysql-ssl
次に、/etc/mysql-ssl
次のコマンドでディレクトリを変更し、CA証明書と秘密鍵を作成します。
sudo cd /etc/mysql-ssl
sudo openssl genrsa 2048 > ca-key.pem
sudo openssl req -new -x509 -nodes -days 365000 -key ca-key.pem -out ca-cert.pem
以下に示すように、すべての質問に答えてください。
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:GUJ
Locality Name (eg, city) []:JND
Organization Name (eg, company) [Internet Widgits Pty Ltd]:ENJ
Organizational Unit Name (eg, section) []:SYSTEM
Common Name (e.g. server FQDN or YOUR name) []:HITESH
Email Address []:[email protected]
次に、次のコマンドでサーバーの秘密鍵を作成します。
sudo openssl req -newkey rsa:2048 -days 365 -nodes -keyout server-key.pem -out server-req.pem
前のコマンドと同じように、すべての質問に答えてください。
次に、次のコマンドを使用して、サーバーの秘密鍵をRSAタイプの鍵にエクスポートします。
sudo sudo openssl rsa -in server-key.pem -out server-key.pem
最後に、CA証明書を使用して次のようにサーバー証明書を生成します。
sudo openssl x509 -req -in server-req.pem -days 365 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem
次のコマンドを使用して、すべての証明書とキーを表示できます。
ls
次の出力が表示されます。
ca-cert.pem ca-key.pem server-cert.pem server-key.pem server-req.pem
完了したら、次のステップに進むことができます。
すべての証明書と秘密鍵が必要です。次に、キーと証明書を使用するようにMariaDBを設定する必要があります。これを行うには、/etc/mysql/mariadb.conf.d/50-server.cnf
ファイルを編集します。
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
[mysqld]
セクションの下に次の行を追加します。
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/server-cert.pem
ssl-key=/etc/mysql-ssl/server-key.pem
##Change this value to connect the MariaDB server from another host.
bind-address = *
ファイルを保存してから、MariaDBサービスを再起動してこれらの変更を適用します。
sudo systemctl restart mysql
これで、SSL構成が機能しているかどうかを次のクエリで確認できます。
mysql -u root -p
MariaDB [(none)]> SHOW VARIABLES LIKE '%ssl%';
構成が成功した場合は、次の出力が表示されます。
+---------------+--------------------------------+
| Variable_name | Value |
+---------------+--------------------------------+
| have_openssl | YES |
| have_ssl | YES |
| ssl_ca | /etc/mysql-ssl/ca-cert.pem |
| ssl_capath | |
| ssl_cert | /etc/mysql-ssl/server-cert.pem |
| ssl_cipher | |
| ssl_crl | |
| ssl_crlpath | |
| ssl_key | /etc/mysql-ssl/server-key.pem |
+---------------+--------------------------------+
上記の出力ではhave_ssl
、have_openssl
値が有効になっていることに注意してください。
SSL経由でMariaDBサーバーにアクセスする権限を持つリモートユーザーを作成します。これを行うには、次のコマンドを実行します。
最初に、MySQLシェルにログインします。
mysql -u root -p
次に、ユーザーremote
を作成し、SSL経由でサーバーにアクセスするための特権を付与します。
MariaDB [(none)]>GRANT ALL PRIVILEGES ON *.* TO 'remote'@'192.168.0.191' IDENTIFIED BY 'password' REQUIRE SSL;
次に、次のコマンドで特権をフラッシュします。
MariaDB [(none)]>FLUSH PRIVILEGES;
最後に、次のコマンドでMySQLシェルを終了します。
MariaDB [(none)]>exit;
注: 192.168.0.191は、リモートユーザー(クライアント)マシンのIPアドレスです。
これで、サーバーはリモートユーザーへの接続を許可する準備ができました。
サーバー側の設定が完了しました。次に、クライアントの新しいキーと証明書を作成する必要があります。
サーバーマシンで、次のコマンドを使用してクライアントキーを作成します。
sudo cd /etc/mysql-ssl
sudo sudo openssl req -newkey rsa:2048 -days 365 -nodes -keyout client-key.pem -out client-req.pem
次に、次のコマンドでクライアントRSAキーを処理します。
sudo openssl rsa -in client-key.pem -out client-key.pem
最後に、次のコマンドでクライアント証明書に署名します。
sudo openssl x509 -req -in client-req.pem -days 365 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem
すべての証明書とキーがクライアントで使用できるようになります。次に、すべてのクライアント証明書を、MariaDBクライアントを実行するクライアントマシンにコピーする必要があります。
MariaDBクライアントをクライアントマシンにインストールする必要があります。
まず、クライアントマシンで、次のコマンドを使用してMariaDBのキーをダウンロードします。
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
次に、MariaDBリポジトリを/etc/apt/sources.list
ファイルに追加します。
sudo echo "deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main" >> /etc/apt/sources.list
次に、次のコマンドでaptインデックスを更新します。
sudo apt-get update -y
aptインデックスが更新されたら、次のコマンドを使用して、MariaDBクライアントをクライアントマシンにインストールします。
sudo apt-get install mariadb-client -y
次に、すべての証明書を格納するディレクトリを作成します。
sudo mkdir /etc/mysql-ssl
次に、次のコマンドを使用して、サーバーマシンからクライアントマシンにすべてのクライアント証明書をコピーします。
sudo scp [email protected]:/etc/mysql-ssl/client-* /etc/mysql-ssl/
次に、SSLを使用するようにMariaDBクライアントを設定する必要があります。これを行うには、/etc/mysql/mariadb.conf.d/50-mysql-clients.cnf
ファイルを作成し ます。
sudo nano /etc/mysql/mariadb.conf.d/50-mysql-clients.cnf
次の行を追加します。
[client]
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/client-cert.pem
ssl-key=/etc/mysql-ssl/client-key.pem
完了したらファイルを保存します。
すべてが設定されたので、MariaDBサーバーに正常に接続できるかどうかを確認します。
クライアントマシンで、次のコマンドを実行してMariaDBサーバーに接続します。
mysql -u remote -h 192.168.0.190 -p mysql
remote
ユーザーパスワードの入力を求められます。パスワードを入力すると、リモートのMariaDBサーバーにログインします。
次のコマンドで接続のステータスを確認します。
MariaDB [mysql]> status
次の出力が表示されます。
--------------
mysql Ver 15.1 Distrib 10.2.7-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Connection id: 62
Current database: mysql
Current user: [email protected]
SSL: Cipher in use is DHE-RSA-AES256-SHA
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server: MariaDB
Server version: 10.0.31-MariaDB-0ubuntu0.16.04.2 Ubuntu 16.04
Protocol version: 10
Connection: 192.168.0.190 via TCP/IP
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8
Conn. characterset: utf8
TCP port: 3306
Uptime: 1 hours 31 min 31 sec
SSL: Cipher in use is DHE-RSA-AES256-SHA
上記の出力が表示されるはずです。つまり、接続はSSLで保護されています。
おめでとう!SSLサポートを使用してMariaDBサーバーを正常に構成しました。SSL経由でMariaDBサーバーにアクセスするために、他のクライアントにアクセス権を付与できます。
MongoDBはデフォルトでは安全ではありません。MongoDBをインストールし、認証用に構成せずにMongoDBを起動する場合は、時間がかかります
Laravel GitScrum(GitScrum)は、開発チームがスクラム手法を同様の方法で実装できるように設計されたオープンソースの生産性ツールです。
前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照してください。)Sudoアクセス。rootとして実行する必要のあるコマンドには、先頭に#が付いています。
この記事では、MariaDBをOpenBSD 6にインストールし、chrootされたWebサーバー(ApacheまたはNginx)からアクセスできるように構成する方法を紹介します。あなたはアルになります
別のシステムを使用していますか?はじめにArangoDBは、ドキュメント、グラフ、Key-Valueの柔軟なデータモデルを備えたオープンソースのNoSQLデータベースです。です
MySQLは、データベースに使用されている世界で最も人気のあるソフトウェアです。データベースのバックアップがあることを確認することは非常に重要です。この練習により
はじめにこの記事では、カスタムbashスクリプトを使用して、同じマシン上にある複数のMySQLまたはMariaDBデータベースをバックアップする方法を順を追って説明します。
別のシステムを使用していますか?Apache Cassandraは無料でオープンソースのNoSQLデータベース管理システムであり、スケーラビリティと高度な機能を提供するように設計されています
別のシステムを使用していますか?はじめにArangoDBは、ドキュメント、グラフ、Key-Valueの柔軟なデータモデルを備えたオープンソースのNoSQLデータベースです。です
MongoDBは高速で強力なNoSQLデータベースです。ただし、Debianリポジトリは更新が遅く、非常に古いバージョンのパッケージが含まれていることがよくあります。このtutoria
前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照してください。)Sudoアクセス:rootとして実行する必要のあるコマンドには、先頭に#が付いています。
前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照)Sudoアクセス:rootとして実行する必要のあるコマンドには、先頭に#が付いています。
phpRedisAdminは、直感的なグラフィックユーザーインターフェイスでRedisデータベースを管理するWebアプリケーションです。このチュートリアルでは、インストール方法を説明します
別のシステムを使用していますか?Apache Cassandraは無料でオープンソースのNoSQLデータベース管理システムであり、スケーラビリティと高度な機能を提供するように設計されています
RedisはKey-Valueデータストレージソリューションであり、NoSQLデータベースと呼ばれることもあります。インメモリbuであるため、非常に高い読み取り/書き込み速度を実現できます。
はじめにMyCLIは、MySQLおよびMariaDBのコマンドラインクライアントであり、オートコンプリートを可能にし、SQLコマンドの構文を支援します。MyCL
バックアップは、データベースを扱う上で重要な部分です。企業サイトを運営している場合でも、WordPressをホストしている場合でも、バックアップすることが重要です。
Redisはデータ構造ストアです。キャッシング時の最適化されたアプローチにより、パフォーマンスが大幅に向上するため、WordPressサイトで人気があります。
前提条件Dockerエンジン1.8以降。最低4GBのディスク容量。4GB以上のRAM。ステップ1. DockerをインストールするSQL-Serverをインストールするには、Docker mus
Barnyard2は、Snortからのバイナリ出力をMySQLデータベースに保存および処理する方法です。始める前にいびきがない場合は注意してください
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。
最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください
原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。
これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。
私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true
ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。
LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー
NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します
別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています
HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、