在Ubuntu上開啟MongoDB的IP Security

來源:互聯網
上載者:User

標籤:interface   資料庫   -o   ant   drop   基本   blog   www.   服務   

本文翻譯之MongoDB官網部落格,原地址:https://www.mongodb.com/blog/post/enabling-ip-security-for-mongodb-36-on-ubuntu

MongoDB3.6的預設配置會拒絕未授權的連結對公用網路的訪問,從而保護資料收到外部威脅。MongoDB只會監聽本地連結,除非添加規則允許監聽其他地址。

 

本教程會簡明的展示如何允許外部IP地址串連MongoDB節點,並保證連網伺服器可以串連到你的資料庫。通過本教程,你會發現配置MongoDB監聽具體的網路連接埠是很容易的一件事情。

 

看本教程前,你需要:

l  安裝MongoDB3.6

l  伺服器上有多個網路介面(本例會使用AWS EC2執行個體)

l  瞭解IP網路的基本知識,會配置私人IP

 

我啟動了安裝有 Ubuntu 16.04 LTS的一台AWS EC2的執行個體,並且安裝了MongoDB3.6

我想允許我的部分VPC IP地址串連到我們的MongoDB資料庫。通過這種方式,可以保證只有我們的指定IP以及本機才能串連到資料庫,而其他陌生地址禁止訪問資料庫。

 

首先啟動VPC公用子網中的Ubuntu執行個體。

根據MongoDB官網文檔安裝mongodb3.6,通過以下命令可以查看進程佔用了那個網路連接埠:

[email protected]:~$ sudo netstat -plant | egrep mongod

tcp        0      0 127.0.0.1:27017         0.0.0.0:*               LISTEN      2549/mongod

命令結果輸出顯示使用者只允許通過原生27017連接埠進行訪問,如果想其他系統訪問資料庫,就需要進行IP綁定。運行ifconfig命令

[email protected]:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 0e:5e:76:83:49:3e
          inet addr:172.16.0.211  Bcast:172.16.0.255  Mask:255.255.255.0
          inet6 addr: fe80::c5e:76ff:fe83:493e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:9001  Metric:1
          RX packets:65521 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7358 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:94354063 (94.3 MB)  TX bytes:611646 (611.6 KB)

現在我們知道了我們想要監聽的網路地址,開啟/etc/mongodb.conf檔案,進行編輯,檔案修改後如下:

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1,172.16.0.211

現在檔案中就添加了一個IP地址172.16.0.211, 重啟mongod服務。

[email protected]:~$ sudo service mongod stop
[email protected]:~$ sudo service mongod start
[email protected]:~$ sudo netstat -plnt | egrep mongod
tcp        0      0 172.16.0.211:27017      0.0.0.0:*               LISTEN      2892/mongod
tcp        0      0 127.0.0.1:27017         0.0.0.0:*               LISTEN      2892/mongod

可以看到現在除了本機,資料庫還可以接受指定的IP的請求。

通過本機串連:

[email protected]:~$ mongo localhost
MongoDB shell version v3.6.0-rc2
connecting to: mongodb://127.0.0.1:27017/localhost

通過指定IP串連

[email protected]:~$ mongo 172.16.0.211
MongoDB shell version v3.6.0-rc2
connecting to: mongodb://172.16.0.211:27017/test

預設的本機配置是有很多好處的,但是現在就需要明確指定那些網路可以串連資料庫,防止不信任的網路連接到系統。保證MongoDB系統不受遠程攻擊是非常重要的,確保只有在安全清單上的IP才能串連到系統。

你就知道了如何為系統配置其他IP地址以訪問資料庫,現在就可以為你的複製集進行配置了。不要忘記做備份、監控。如果你不想在這些工作上消耗太多精力,可以瞭解一下我們的資料庫即服務:MongoDB Atlas。

在Ubuntu上開啟MongoDB的IP Security

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.