본문 바로가기

NoSQL

[MongoDB] CentOS7 에서 MongoDB 설치하기

반응형

 


 

 

1. MongoDB 저장소(리포지토리) 추가

MongoDB 를 저장할 별도의 저장소를 추가해야 한다.

sudo vi /etc/yum.repos.d/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

 

 

 

2. MongoDB 저장소(리포지토리) 확인

아래 명령어를 통해 MongoDB 저장소가 정상 추가되었는지 확인한다.

yum repolist

 

정상적으로 추가되면 아래와 같이 MongoDB Repository 를 확인할 수 있다.

 

 

 

3. MongoDB 설치

아래 명령어를 통해 MongoDB 를 설치해준다.

sudo yum install -y mongodb-org

 

 

 

4. mongoDB 서비스 시작 및 서비스 상태 확인

설치 완료 후, MongoDB 서비스를 시작해준다.

systemctl start mongod

 

아래 명령어를 통해 정상적으로 서비스가 작동하는지 확인한다.

sudo systemctl status mongod

 

 

 

이렇게 MongoDB 설치를 완료하였다.

그럼, 이제 MongoDB 에 접속을 해보자.

 

1. mongoDB Shell 접속

mongo

 

 

 

2. admin 계정 생성

# admin 데이터베이스로 이동
> use admin
switched to db admin

# 관리자 계정 생성
> db.createUser(
  {
    user: "계정명",
    pwd: "암호",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
  }
)

# 관리자 계정 생성 확인
Successfully added user: {
        "user" : "admin",
        "roles" : [
                {
                        "role" : "userAdminAnyDatabase",
                        "db" : "admin"
                },
                "readWriteAnyDatabase"
        ]
}

# MongoDB Shell 종료
> exit
bye

 

 

 

3. MongoDB 보안 관련 옵션 설정

MongoDB 의 기본 인증은 누구나 접속하게끔 되어있다.

이는 보안상 위험하므로, 인증을 활성화하고 특정 IP 혹은 Port, 계정을 통해 접속할 수 있게끔 하여 보안을 강화해야한다.

sudo vi /etc/mongod.conf 

...
# network interfaces 설정
net:
  port: 27017 # 원하는 포트 번호로 변경
  bindIp: 127.0.0.1  # 현재 localhost 로만 접속 가능. 0.0.0.0 로 변경 시 모든IP 접속 가능

...
# security 주석 해제 및 아래 내용 추가
security:
  authoriaztion: enabled # enabled 설정 시, mongo 명령어로 접속 불가

 

 

4. 보안 옵션 적용을 위한 MongoDB 서비스 재시작

sudo systemctl restart mongod

 

 

5. 관리자 계정으로 MongoDB 접속

mongo -u 계정명 -p --authenticationDatabase "admin"

MongoDB shell version v5.0.26
Enter password:
connecting to: mongodb://127.0.0.1:27017/?authSource=admin&compressors=disabled&gssapiServiceName=mongodb
...
MongoDB server version: 5.0.26
================
Warning: the "mongo" shell has been superseded by "mongosh",
which delivers improved usability and compatibility.The "mongo" shell has been deprecated and will be removed in
an upcoming release.
For installation instructions, see
https://docs.mongodb.com/mongodb-shell/install/
================

 

 

 

MongoDB 설치 및 보안 설정, 계정 생성을 통하여 기본 설정을 완료할 수 있다.

 

 

반응형