MongoDB

MongoDBについて解説します。

レンタルサーバーに立ち上げたMongoDBに外部からアクセスするところまでを解説します。

2022/06/23 更新

・CentOS8を使用(27017のポートを開けている前提)

・MongoDB バージョン5を使用

MongoDBのインストール

sudo vi /etc/yum.repos.d/mongodb-org-5.0.repo

mongodb-org-5.0.repo の中身

[mongodb-org-5.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/5.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-5.0.asc

バージョン5.0.6を指定してインストール(執筆時2022/06/23では5.0.9が最新)

sudo yum install -y mongodb-org-5.0.6 mongodb-org-server-5.0.6 mongodb-org-shell-5.0.6 mongodb-org-mongos-5.0.6 mongodb-org-tools-5.0.6

MongoDBの起動

sudo systemctl start mongod

MongoDB ユーザーの作成

mongo
> use admin
> db.createUser({user:"admin", pwd:"password", roles:[{role:"userAdminAnyDatabase", db:"admin"}]})
> use mydb
> db.createUser({user:"mongo", pwd:"password", roles:[{role:"readWrite", db:"mydb"}]})

iptablesの設定

CentOS8でiptablesを使用出来るようにする

https://www.websec-room.com/2019/10/12/3164

MongoDBの再起動

sudo systemctl restart mongod

MongoDBの外部からアクセス

今回はMongoDB Compass というツールを使って、MongoDBに接続します。

まず、赤線のlocalhostの部分を、使用するIPアドレスに変更します。

次に、username と password と Authentication Database を入力します。

そして、「Connect」ボタンを押すと接続できます。

めでたしめでたし。