成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

解決mongoDB各種安全隱患問題

安全 數據安全 MongoDB
MongoDB安裝時不添加任何參數,默認是沒有權限驗證的,登錄的用戶可以對數據庫任意操作而且可以遠程訪問數據庫,需以–auth參數啟動。

Mongo的默認安裝經常會導致各種安全問題,例如鳳凰網某系統和mongodb未授權訪問。

解決mongoDB各種安全隱患問題

今天我們來聊聊MongoDB的安全配置。

1.MongoDB安裝時不添加任何參數,默認是沒有權限驗證的,登錄的用戶可以對數據庫任意操作而且可以遠程訪問數據庫,需以–auth參數啟動。

2.在剛安裝完畢的時候MongoDB都默認有一個admin數據庫,此時admin數據庫是空的,沒有記錄權限相關的信息。當 admin.system.users一個用戶都沒有時,即使mongod啟動時添加了–auth參數,如果沒有在admin數據庫中添加用戶,此時不 進行任何認證還是可以做任何操作(不管是否是以–auth 參數啟動),直到在admin.system.users中添加了一個用戶。

3.MongoDB的訪問分為連接和權限驗證,即使以–auth參數啟動還是可以不使用用戶名連接數據庫,但是不會有任何的權限進行任何操作

4.admin數據庫中的用戶名可以管理所有數據庫,其他數據庫中的用戶只能管理其所在的數據庫。

5.在2.4之前版本中,用戶的權限分為只讀和擁有所有權限;2.4版本的權限管理主要分為:數據庫的操作權限、數據庫用戶的管理權限、集群的管理權限,建議由超級用戶在admin數據庫中管理這些用戶。不過依然兼容2.4版本之前的用戶管理方法。

0×01 MongoDB中用戶的角色說明

1. read角色

數據庫的只讀權限,包括:

aggregate,checkShardingIndex,cloneCollectionAsCapped,collStats,count,dataSize,dbHash,dbStats,distinct,filemd5,mapReduce (inline output only.),text (beta feature.)geoNear,geoSearch,geoWalk,group 

2. readWrite角色

數據庫的讀寫權限,包括:

read角色的所有權限

cloneCollection (as the target database.),convertToCapped,create (and to create collections implicitly.),renameCollection (within the same database.)findAndModify,mapReduce (output to a collection.) 
drop(),dropIndexes,emptycapped,ensureIndex() 

3. dbAdmin角色

數據庫的管理權限,包括:

clean,collMod,collStats,compact,convertToCappe 
create,db.createCollection(),dbStats,drop(),dropIndexes 
ensureIndex(),indexStats,profile,reIndex 
renameCollection (within a single database.),validate 

4. userAdmin角色

數據庫的用戶管理權限

5. clusterAdmin角色

集群管理權限(副本集、分片、主從等相關管理),包括:

addShard,closeAllDatabases,connPoolStats,connPoolSync,_cpuProfilerStart_cpuProfilerStop,cursorInfo,diagLogging,dropDatabase 
shardingState,shutdown,splitChunk,splitVector,split,top,touchresync 
serverStatus,setParameter,setShardVersion,shardCollection 
replSetMaintenance,replSetReconfig,replSetStepDown,replSetSyncFrom 
repairDatabase,replSetFreeze,replSetGetStatus,replSetInitiate 
logRotate,moveChunk,movePrimary,netstat,removeShard,unsetSharding 
hostInfo,db.currentOp(),db.killOp(),listDatabases,listShardsgetCmdLineOpts,getLog,getParameter,getShardMap,getShardVersion 
enableSharding,flushRouterConfig,fsync,db.fsyncUnlock() 

6. readAnyDatabase角色

任何數據庫的只讀權限(和read相似)

7. readWriteAnyDatabase角色

任何數據庫的讀寫權限(和readWrite相似)

8. userAdminAnyDatabase角色

任何數據庫用戶的管理權限(和userAdmin相似)

9. dbAdminAnyDatabase角色

任何數據庫的管理權限(dbAdmin相似)

0×02 MongoDB安裝注意事項

1. 安裝的時候需要加–auth

加了–auth之后MongoDB才需要驗證

2. 需要加–nohttpinterface

不加會有一個28017的端口監聽,可以通過網頁管理mongodb,不需要請去掉

3. 可以加–bind_ip

加之后可以限制訪問的ip

4. 可以加–port

加了之后可以重新制定端口,默認為27017

5. 安裝完之后需立即在admin數據庫中添加一個用戶

只有在admin數據庫中添加一個用戶后才能使認證生效

注:安裝的過程其實就是添加1個服務,指定啟動時候的參數。

0×03 用戶授權

1. 2.4之前版本的用戶管理方式

1.1、進入admin創建一個管理賬號

use admin 
db.addUser("test","test") 

1.2、進入需要使用的數據庫中創建一個程序使用用戶

use test 
db.addUser("test","test")默認擁有讀寫權限 
db.addUser("test","test",True)擁有讀取權限 

2. 2.4版本的用戶管理,也可使用之前版本的方式

2.1、進入admin創建一個管理賬號

use admin 
db.addUser("test","test") 

2.2、進入admin給使用的數據庫test創建一個對數據庫及日志擁有讀寫權限的賬戶

use admin 
db.addUser({
    "user": "test", 
    "pwd": "test", 
    "roles": [ ], 
    "otherDBRoles": {
        "test": [
            "readWrite"
        ], 
        "test_log": [
            "readWrite"
        ]
    }
}) 

0×04 安全配置方案

1. 安裝的時候加–auth,并立即在admin數據庫創建一個用戶

默認情況下MongoDB是無需驗證的,所以這是至關重要的一步

2. 可以考慮安裝的時候修改端口和指定訪問ip

具體根據實際情況來設定,也可以直接在服務器防火墻上做

3. 安裝的時候建議加上–nohttpinterface取消默認的一個網頁管理方式

默認的web管理一般不會用,且很多人不知道,***關閉

4. 管理用戶處理

因需要在admin中建立一個管理賬戶用于管理,***是設置強密碼,但是不要給其他程序使用

5. MongoDB服務運行賬戶

windows下可以使用network service 或者新建一個用戶,使用默認的USERS組,然后添加給予數據庫文件及日志存儲目錄的寫權限,并建議取消對cmd等程序的執行權限。

linux下新建一個賬戶,給予程序的執行權限和數據庫文件及日志目錄的讀寫權限,并建議取消對sh等程序的執行權限。

6. 控制好網站或者其他程序使用的連接用戶權限

網站或者其他程序使用的用戶只給予對應庫的權限,不要使用admin數據庫中的管理賬戶。

0×05 常用命令

1. 安裝

mongod --dbpath d:\mongodb\data --logpath d:\mongodb\log\mongodb.log ----nohttpinterface --auth --install

2. 添加用戶

use admin 
db.addUser("test","test") 

3. 顯示所有數據庫

show dbs

4. 使用某個數據庫

use test

5. 連接數據庫

mongo test -uroot -p123456

6. 添加用戶認證

db.auth("username","password")

7. 查看用戶

db.system.users.find()

就寫幾個基本的,其他的網上很多,或者用工具連上去之后操作。

0×06 管理工具

1. MongoVUE

客戶端形式的管理工具

2. rockmongo

基于php的web管理

不足之處求大牛指正!

責任編輯:藍雨淚 來源: Wooyun
相關推薦

2010-09-17 14:29:23

2009-11-25 10:19:58

2009-07-06 13:38:02

2017-02-24 08:11:09

Docker數據安全容器

2012-06-25 09:18:36

2019-07-23 08:56:46

IoT物聯網安全

2009-09-07 16:56:02

2016-09-29 22:09:26

2010-09-16 12:55:36

2014-04-14 13:19:41

初志科技電子文檔

2012-06-26 09:35:03

Firefox瀏覽器

2014-06-26 13:38:19

2022-01-20 10:54:23

移動手機短信驗證碼隱患

2009-03-17 09:48:00

2011-05-05 18:28:18

2013-02-21 10:11:58

2011-06-17 13:20:02

2013-07-31 09:29:12

NASA云安全云托管服務器

2023-12-25 11:55:58

2009-11-19 14:01:17

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 天堂综合 | 99精品视频免费观看 | 婷婷去俺也去 | 一区二区三区在线播放 | 欧洲成人免费视频 | 国产激情第一页 | 欧美精品福利 | 亚洲精品日韩欧美 | 日本不卡一区二区三区在线观看 | 丁香综合 | 欧美在线日韩 | 精品二区 | 日韩中文字幕在线 | 日本超碰 | 一级做a爰片久久毛片免费看 | 日本三级播放 | 国产在线视频在线观看 | 艹逼网| 一区二区三区成人 | 欧美精品日韩精品国产精品 | 国产探花在线观看视频 | 午夜在线观看免费 | 中文字幕91av | 欧美中国少妇xxx性高请视频 | 国产在线精品一区二区 | 久久激情网 | 免费国产视频在线观看 | 日本一区二区三区四区 | 日本一道本 | 日本不卡视频在线播放 | 国产一区在线免费观看 | 日本淫视频 | 99re66在线观看精品热 | 日韩精品久久久久 | 日本成人免费网站 | 一区二区在线 | 欧美日韩亚洲视频 | 麻豆久久久久久久久久 | 一级一级一级毛片 | 国产一级在线 | 欧美 日韩精品 |