[MongoDB] 설치
OS : Rocky Linux 9
웹은 RDBMS 를 사용해서 많이 쓰고 있는데
분석 서비스에서 MongoDB 를 활용하기로 했다.
개발자의 입장이 아닌 시스템 엔지니어(운영), 시스템 보안 입장에서의 MongoDB 관련 글을 작성해보겠다.
설치 목표 버전은 8.0.X 버전이다.
repo 생성
# vi /etc/yum.repos.d/mongodb-org-8.0.repo
[mongodb-org-8.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/9/mongodb-org/8.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://pgp.mongodb.com/server-8.0.asc
mongodb-org 를 설치한다.
# dnf makecache
# dnf -y install mongodb-org
설치 버전을 확인한다.
# rpm -qa | grep mongodb-org
DB 설치 시 보안에서 가장 먼저 할 일은 port 변경이다.
MongoDB 는 기본으로 27017 을 사용하는데 해당 글에서는 57017로 변경하도록 하겠다.
# vi /etc/mongod.conf
port 부분을 57017로 변경한다.
# systemctl start mongod
앞으로의 기본 세팅을 위해 root 계정을 생성한다.
먼저 mongosh 를 통해 접속한다.
# mongosh --port 57017
사용 DB를 admin 으로 변경한다.
> use admin
root 계정을 만든다.
> db.createUser({ user: "root", pwd: passwordPrompt(), roles: [ "root" ]})
password 입력
다시 쉘로 나가 security 설정을 한다.
# vi /etc/mongod.conf
security:
authorization: enabled
해당 설정을 하면 계정 인증 없이는 DB 접근이 불가하다.
적용을 위해 MongoDB 를 재시작한다.
# systemctl restart mongod
이후 접속은 다음과 같이 한다.
# mongosh -u root -p --port 57017
root 계정은 운영팀만 사용하고,
서비스용 계정, 개발팀 조회용 계정 등은 별도로 관리한다.