mongo默認(rèn)是沒有密碼的,這樣很容易被攻擊绵咱。(當(dāng)然瓢颅,安全的方式不只添加密碼恩尾,還可以設(shè)置ip過濾,如果用的云mongo挽懦,可以設(shè)置只允許內(nèi)網(wǎng)訪問等等)
以auth認(rèn)證方式啟動(dòng)
- 可以在config文件中加一項(xiàng):
auth: true
- 可以在命令行中翰意,添加一個(gè)option,
--auth
但是信柿,如果mongodb中沒有用戶冀偶,認(rèn)證是沒有意義的。
創(chuàng)建用戶
- 選擇庫
// 用戶的存儲(chǔ)也是基于庫的渔嚷。管理員用戶的話进鸠,需要在admin中創(chuàng)建。創(chuàng)建的第一個(gè)用戶即為管理員用戶
> use admin
- 創(chuàng)建管理員用戶
db.createUser({
user:"root",
pwd:"root",
roles:[
{
role:"userAdminAnyDatabase",
db:"admin"
}
]
})
- 創(chuàng)建普通用戶
db.createUser({
user:"user1",
pwd:"pwd1",
roles:[
{
role:"readWrite",
db:"db1"
}
]
})
登錄
方式1
// user所存儲(chǔ)的庫
> use admin
> db.auth(username, password)
// 返回原數(shù)據(jù)庫
> use blog
方式2
mongo --host ip:port -u 用戶 -p 密碼 --authenticationDatabase admin
mongodb配置文件相關(guān)參數(shù)
#數(shù)據(jù)庫數(shù)據(jù)存放目錄
dbpath=/usr/local/mongodb304/data
#數(shù)據(jù)庫日志存放目錄
logpath=/usr/local/mongodb304/logs/mongodb.log
#以追加的方式記錄日志
logappend = true
#端口號(hào) 默認(rèn)為27017
port=27017
#以后臺(tái)方式運(yùn)行進(jìn)程
fork=true
#開啟用戶認(rèn)證
auth=true
#關(guān)閉http接口形病,默認(rèn)關(guān)閉http端口訪問
nohttpinterface=true
#mongodb所綁定的ip地址
bind_ip = 127.0.0.1,192.168.1.140
#啟用日志文件客年,默認(rèn)啟用
journal=true
#這個(gè)選項(xiàng)可以過濾掉一些無用的日志信息,若需要調(diào)試使用請(qǐng)?jiān)O(shè)置為false
quiet=true
個(gè)人博客:http://notes.xbug.site