久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

MongoDB中怎么實現安全管理

166次閱讀
沒有評論

共計 2046 個字符,預計需要花費 6 分鐘才能閱讀完成。

自動寫代碼機器人,免費開通

MongoDB 中怎么實現安全管理,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

方式一 iptables 設置
Linux 防火墻設置只有應用程序所在的服務器 ip 才能訪問 MongoDB 所在的服務器。
Linux 禁止某個 IP 地址訪問其實非常的簡單,最常用的辦法就是使用 iptalbes 來操作。這個方法跟 MongoDB 本身沒有關系,而是借用 Linux 的 iptalbes 功能,限制允許訪問 MongoDB 端口的 ip 地址,具體做法(ip 和端口需要讀者自己對應) 如下:

# 拒絕所有訪問 27017 端口的請求

sudo iptables -I INPUT -p tcp –dport 27017 -j DROP
 
# 允許 192.168.1.1 服務器訪問 mongo 端口

sudo iptables -I INPUT -s 192.168.1.1 -p tcp –dport 27017 -j ACCEPT

sudo iptables-save

或者

vi /etc/sysconfig/iptables


iptables -I INPUT -p tcp –dport 27017 -j DROP
iptables -I INPUT -s 192.168.1.1 -p tcp –dport 27017 -j ACCEPT

這兩句加在

-A INPUT -j REJECT –reject-with icmp-host-prohibited
-A FORWARD -j REJECT –reject-with icmp-host-prohibited

的前面。

然后重啟防火墻

service iptables restart

查看防火墻狀態

service iptables status

這樣就只允許 192.168.1.1 服務器訪問 MongoDB 服務了。
注意命令的順序不能反了。如果不只限制一個端口而是限制所有端口的訪問把 –dport 27017 去掉即可。

方式二 hosts.allow 和 hosts.deny

Linux 中的配置文件 /etc/hosts.allow 控制可以訪問本機的 IP 地址,/etc/hosts.deny 控制禁止訪問本機的 IP。執行的順序是先 deny 再 allow,所以如果兩個文件的配置有沖突,以 /etc/hosts.allow 為準。
/etc/hosts.allow 和 /etc/hosts.deny 兩個文件是控制遠程訪問設置的,通過它們可以允許或者拒絕某個 ip 或者 ip 段的客戶訪問 linux 的某項服務。服務用進程名來識別,比如 MongoDB 的服務進程名是 mongod,我們限制所有 ip 訪問,除非 ip 是 192.168.1.1。

編輯 hosts.deny:

vi /etc/hosts.deny

拒絕一切 ip 訪問 MongoDB 服務輸入內容:

# no mongod
mongod:all:deny

Esc 輸入:wq 保存離開。

mongod:all:deny 表示拒絕所有 ip 訪問 mongod 服務。:deny 可以省略寫成 mongod:all。

編輯 hosts.allow:

vi /etc/hosts.allow

允許 192.168.1.1 訪問 MongoDB 服務輸入內容:

mongod:192.168.1.1

Esc 輸入:wq 保存離開。

修改完后重啟攔截器讓剛才的更改生效:

service xinetd restart

經過設置之后需要進行校驗,測試限制是否生效,如果是比較重要的數據,不滿足于限制 ip 訪問,那就把用戶認證加上, 這個需要讀者自己權衡。

對于安全度要求高的數據庫,還可以啟用 SSL。
如果你沒有使用 SSL,那么你在 MongoDB 客戶端和 MongoDB 服務器之間的傳輸的數據就是明文的,容易受到竊聽、篡改和“中間人”攻擊。如果你是通過公網這樣的非安全網絡連接到 MongoDB 服務器,那么啟用 SSL 就顯得非常重要。

詳細的 SSL 配置可以查看官網:
https://docs.mongodb.com/manual/tutorial/configure-ssl/。

方式三 不要將 MongoDB 與其他服務部署到同一機器上

請在啟動 MongoDB 時關閉 NUMA 功能,按照提示在啟動命令前加上 numactl –interleave 選項, 啟動時使用命令如下:

numactl –interleave=all  mongod  –dbpath=/data/db/ –fork –logpath=/data/logs/db.log 

如果系統中沒有 numactl 命令,使用 yum 安裝

yum install -y numactl

再使用命令

echo 0 /proc/sys/vm/zone_reclaim_mode
vi /proc/sys/vm/zone_reclaim_mode
sysctl -w vm.zone_reclaim_mode=0

關于 MongoDB 中怎么實現安全管理問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注丸趣 TV 行業資訊頻道了解更多相關知識。

向 AI 問一下細節

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-04發表,共計2046字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 中江县| 乐安县| 巴塘县| 宝山区| 深泽县| 平湖市| 绩溪县| 全南县| 乐平市| 根河市| 洪洞县| 呼和浩特市| 新乡县| 遂昌县| 长武县| 兴化市| 石门县| 沿河| 泰顺县| 周口市| 安顺市| 昔阳县| 仙游县| 定远县| 通许县| 绥宁县| 平江县| 济宁市| 清新县| 和平县| 泌阳县| 乌拉特中旗| 江油市| 渝中区| 神池县| 万州区| 阳高县| 麟游县| 大田县| 安岳县| 昌图县|