MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Sự cố với quyền truy cập Mongodb trên Amazon EC2

Hãy suy nghĩ kỹ trước khi làm điều này. Nếu bạn mở các cổng, hãy đảm bảo rằng bạn hạn chế số IP có thể truy cập nó, nếu không, bất kỳ ai cũng có thể truy cập vào cơ sở dữ liệu của bạn. Bạn có thể bật xác thực trong MongoDB, nhưng nó không đặc biệt an toàn, chỉ là tên người dùng và mật khẩu. Bạn không nên mở cơ sở dữ liệu của mình trên internet, đó không phải là một ý kiến ​​hay.

Một cách tốt hơn so với việc mở các cổng trong tường lửa EC2 là mở một đường hầm SSH ở phía trước cổng, điều này đảm bảo rằng chỉ bạn mới có thể truy cập cơ sở dữ liệu và chỉ khi đường hầm SSH đang hoạt động.

Mở một thiết bị đầu cuối mới và chạy lệnh này (thay thế người dùng và máy chủ lưu trữ bằng người dùng bạn sử dụng khi SSH vào máy chủ của bạn và tên của máy chủ):

ssh [email protected] -N -L 27017:127.0.0.1:27017

Lệnh sẽ chuyển tiếp cổng 27017 trên máy tính của bạn đến cùng một cổng trên máy chủ. Để kết nối với phiên bản MongoDB, chỉ cần chạy mongo trong một thiết bị đầu cuối (nếu điều đó không hoạt động, hãy thử mongo --host 127.0.0.1 hoặc thậm chí mongo --host 127.0.0.1 --port 27017 ).

Nếu bạn chạy MongoDB trên máy cục bộ của mình, bạn sẽ phải thay đổi cổng đầu tiên, vì máy chủ cục bộ đã sử dụng nó. Trong trường hợp đó, hãy chạy lệnh này thay thế:

ssh [email protected] -N -L 27018:127.0.0.1:27017

và sau đó kết nối với

mongo --port 27018

(có thể thêm --host 127.0.0.1 nếu nó không hoạt động).

Khi bạn làm việc xong với cơ sở dữ liệu, hãy thoát khỏi mongo và nhấn ctrl-C trong terminal bằng lệnh SSH.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Lệnh shell collection.getIndexes () trong pymongo là gì?

  2. chèn mongodb cho thấy 'các chuỗi trong tài liệu phải là UTF-8 hợp lệ'

  3. Triển khai MongoDB bằng Docker

  4. MongoDB mua mLab - Các lựa chọn thay thế lưu trữ MongoDB khác nhau là gì?

  5. mongodb mongoTemplate nhận trường riêng biệt với một số tiêu chí