天天看點

MongoDB 安全 checklist 及最優配置模闆

MongoDB 安全 checklist 及最優配置模闆

<a href="/go/1/6?postion=1" target="_blank">雲資料庫 mongodb 版</a>

基于飛天分布式系統和高性能存儲,提供三節點副本集的高可用架構,容災切換,故障遷移完全透明化。并提供專業的資料庫線上擴容、備份復原、性能優化等解決方案。

<a href="/go/1/6?postion=1" target="_blank">了解更多</a>

mongodb 安全 checklist,使用者可以做的安全措施包括

開啟通路審計,記錄所有的使用者通路行為,萬一出問題時有據可查

限制mongodb程序的權限,盡量建立單獨的使用者來管理mongodb程序,不要用root帳号啟動

...

--

資料組織,一個mongod程序對應一個工作目錄,包含data、etc、logs 3個目錄,分别存儲資料、配置、以及運作日志

mongod.conf内容 (将$mymongo替換成你的工作目錄)

基于上述模闆,使用者可以根據自己的實際情況稍加修改,主要關注如下參數

參數

含義

說明

systemlog.verbosity

日志級别

建議設定為0,如想記錄更多debug資訊,可修改該值為1-5,越大日志越詳細

net.bindip

監聽的ip位址清單

預設監聽所有的ip,如果有多塊網卡,可以選擇性的綁定,以限制不可信的網絡通路

net.port

監聽斷開

預設27017,根據需要定制

net.maxincomingconnections

最大連接配接數

根據需要配置,保證系統最大檔案句柄數大于該值(ulimit -n)

operationprofiling.slowopthresholdms

慢請求門檻值

如無特殊需求,建議使用預設的100ms,超過該值的請求會記錄到對應db的system.profile集合裡

replication.replsetname

複制集名字

強烈建議部署複制集提供服務,名字随便定制

replication.oplogsizemb

oplog大小

預設為磁盤空間5%,無特殊需求建議保持預設值

security.authorization

是否開啟鑒權

強烈建議開啟

security.keyfile

複制集内部鑒權的keyfile路徑

security.javascriptenabled

是否支援server端js,比如$where、mapreduce需要server端js的支援

如無必要,建議關閉

storage.directoryperdb

每個db一個單獨的目錄存儲

強烈建議,以充分發揮檔案系統優勢

storage.engine

存儲引擎

強烈建議使用wiredtiger,低成本 + 高性能

storage.wiredtiger.engineconfig.engineconfig

wireditger cache大小

預設 max(1, 0.6 * ram)

storage.journal.enabled

是否開啟journal

storage.journal.commitintervalms

journal 刷盤間隔

預設100ms,建議保持預設值

上述參數,對于不确定含義或拿不準的參數可以直接使用預設值 (配置項行首加 # 即可注釋掉配置)。

完全相容mongodb 3.2版本,開啟鑒權、保證資料庫安全

3節點複制集,保證資料高可靠、服務高可用,即将推出分片叢集(mongodb sharded cluster)

提供全量、增量備份功能,即使資料被誤删,也能恢複到任意時間點

提供資料庫操作審計功能,使用者的所有操作都記錄審計日志,有據可查

支援vpc環境,支援使用者白名單功能

MongoDB 安全 checklist 及最優配置模闆