[MongoDB] MongoDB - 외부 접속 설정
MongoDB 외부 접속 설정하기
1. *.conf 파일 수정
- /etc/[mongod/mongodb].conf
# bind_ip = 127.0.0.1
# port = 27017
bind_ip=0.0.0.0 # 모든 IP 주소에서의 연결을 허용
port=* #원하는 포트 설정
# transparent_hugepage=always # 리눅스 운영체제의 Transparent Huge Pages 기능을 활성화
# 보안 설정 둘 중 한가지 활성화
#noauth = true # 보안상 위험 존재
auth = true
sudo service mongodb restart
- 저장 완료 후 mongodb 재시작
주의:
bindIp
를 모든 IP 주소로 설정하면 보안상의 위험을 초래할 수 있으므로 필요한 경우에만 사용transparent_hugepage: 메모리 관리 기술로, 프로세스의 가상 주소 공간을 대형 페이지라는 큰 단위로 관리하는 방식
MongoDB의 경우,
transparent_hugepage=always
설정이 권장되지 않습니다. MongoDB는 메모리 관리 및 액세스 패턴과 관련하여 작은 페이지를 사용하는 것이 더 효율적이라고 판단되기 때문입니다. 따라서 MongoDB를 사용할 때는transparent_hugepage
설정을never
로 변경하는 것이 좋습니다
2. mongodb 보안 설정
mongo
> use admin
> db.createUser(
{
user: "adminUser",
pwd: "adminPassword",
roles: [ { role: "root", db: "admin" } ]
}
)
3. mongodb admin 접속
- shell [mongo]
mongo --host yourServerIP --port yourServerPort -u remoteUser -p remotePassword --authenticationDatabase admin
- python[pymongo]
import urllib.parse
from pymongo import MongoClient
password = urllib.parse.quote_plus('*')
client = MongoClient('mongodb://{id}:{pwd}@{ip}:{port}'.format(id='*', pwd=password, ip='*', port=*))
- MongoDB Compass (GUI)
mongodb를 GUI로 편하게 관리 가능
link - https://www.mongodb.com/try/download/compass
댓글남기기