1. MongoDB 설치하기
1. 공개키 가져오기
# curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
2. 소스 목록 파일에 MongoDB 목록 파일을 추가
# sudo echo "deb http://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
3. 저장소 업데이트
# sudo apt-get update
4. apt를 이용해 MongoDB 설치
# sudo apt-get install -y mongodb-org
5. 부트시 실행되도록 서비스에 추가
# sudo systemctl start mongod
# sudo systemctl enable mongod
6. MongoDB 포트 확인 (27017)
# sudo netstat -plntu
2. MongoDB 사용자 추가
1. MongoDB 셀 실행
# mongo
1-1. 초기화 실패 오류 발생시 환경변수가 올바른지 확인하고 다음 명령을 실행하여 시도
# export LC_ALL=C
# mongo
2. 데이터베이스 관리자로 전환
use admin
3. 루트 사용자 생성
db.createUser( { user: "admin", pwd: "password", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } )
설명 : admin123 암호를 사용하는 사용자 admin 을 작성. 권한 / 역할을 root로 가지고 사용 할 데이터베이스 admin.
4. MongoDB 셀 종료
exit
5. MongoDB 인증 활성화
# sudo vi /lib/systemd/system/mongod.service
'/lib/systemd/system/mongod.service' 파일을 편집.
6. 다음 라인을 확인하여 --auth 추가
ExecStart=/usr/bin/mongod --auth --config /etc/mongod.conf
7. 시스템 서비스 재실행
# sudo systemctl daemon-reload
8. MongoDB 재실행 후 연결 시도
# sudo service mongod restart
9. 이전에 생성한 계정으로 MongoDB 셀 연결
# mongo -u admin -p admin123 --authenticationDatabase admin
3. 외부 엑세스 및 UFW 방화벽 구성
해당 내용은 자신의 서버 구성에 맞춰 진행.
1. UFW 상태 확인
# sudo ufw status
Status: inactive
2. UWF 활성화 후 SSH 연결된 경우 SSH 포트 오픈
# sudo ufw allow ssh
# sudo ufw enable
3. UFW 방화벽 구문
sudo ufw allow from <target> to <destination> port <port number>
3-1. UFW에 MongoDB 포트 오픈
# sudo ufw allow from 192.168.0.100 to any port 27017
4. 모든 IP에 대해 MongoDB 포트를 열려면 다음 명령어 사용.
# sudo ufw allow 27017
5. MongoDB Conf 파일 설정
# sudo vi /etc/mongod.conf
6. bind_ip행에 서버 IP 주소 추가.
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1,192,168.0.100
7. 설정 완료 후 MongoDB 서비스 재실행
# sudo service mongod restart