복붙노트

[MONGODB] 리눅스에서 MongoDB를 얻기 원격 연결을 청취하기

MONGODB

리눅스에서 MongoDB를 얻기 원격 연결을 청취하기

나는 성공적으로 서비스로 (로컬 컴퓨터에) Windows에서 MongoDB를 설치했지만, 지금은 별도의 서버에 MongoDB를 이동하려는. 내가 네트워크에서 가상 서버에 타르를 추출 그래서 (리눅스를 실행).

나는 내 로컬 컴퓨터에서 퍼티를 사용하여 서버 ( "testmongoserver")에 연결하면, 나는 mongod 서버를 시작하고 그것이 기본 28017 포트를 듣고 것을 저에게 말했다. 몽고 콘솔은 또한 작업과 나 새 데이터베이스 (TESTDB)를 생성하고 사용자를 추가 할 수 있습니다.

그러나, 나는 원격에서 서버에 액세스 할 수 없습니다. 내가 testmongoserver 입력 할 때 : 28017 그것을 로컬 호스트로 HTTP 콘솔을 열지 않습니다 : 28017을 내 로컬 컴퓨터가하는에. 또한 공식 드라이버를 사용하고 ConnectionString을 제공 연결할 수 없습니다.

내가이 ConnectionString을 함께 원격 시스템에서 액세스 및 testmongoserver를 통해 자사의 HTTP 콘솔을 사용할 수 있도록, 리눅스에서 MongoDB를 설치하는 데 필요한 단계는 다음과 같습니다 28,017

감사!

해결법

  1. ==============================

    1.몽고의 기본 포트는 27017입니다. 28017 - webstats을위한 포트입니다.

    몽고의 기본 포트는 27017입니다. 28017 - webstats을위한 포트입니다.

    http://www.mongodb.org/display/DOCS/Security+and+Authentication#SecurityandAuthentication-Ports 참조

  2. ==============================

    2.바인딩 IP는 구체적인 IP와 연결을 제한하는 MongoDB의 옵션입니다.

    바인딩 IP는 구체적인 IP와 연결을 제한하는 MongoDB의 옵션입니다.

    당신의 mongod 구성 파일에서보세요, 시간 bind_ip의 대부분은 명백한 보안상의 이유로 127.0.0.1로 설정됩니다. 당신은 할 수 있습니다 :

    더 bind_ip 구성 옵션에 대한 : https://docs.mongodb.com/manual/reference/configuration-options/#net.bindIp

    바인딩 IP는 또한 명령 인수로 설정할 수 있습니다 http://docs.mongodb.org/manual/reference/program/mongod/#cmdoption--bind_ip

    방화벽을 실행하지 않는 것을 확인

  3. ==============================

    3.당신이 행 다음에있는 당신의 /etc/mongodb.conf 파일에 있는지 확인합니다,

    당신이 행 다음에있는 당신의 /etc/mongodb.conf 파일에 있는지 확인합니다,

    bind_ip = 0.0.0.0
    

    http://jitu-blog.blogspot.com.br/2013/06/allow-mongo-to-connect-from-remote-ip.html

  4. ==============================

    4.다만이 문제를 가지고이 그것을 고정 :

    다만이 문제를 가지고이 그것을 고정 :

    편집 /etc/mongod.conf와 sudo를 나노 /etc/mongod.conf 확인하는 순 단면 모양 (로컬 호스트 원격 액세스를 허용하지 않는 기본적으로 바인딩) 다음과 같은 :

    # network interfaces
    net:
      port: 27017
      bindIp: 0.0.0.0
    

    당신이 (가정 systemd 우분투 16.04+ 등) 아래로 이상으로 완료되면 다시 시작 mongod에 있는지 확인합니다 :

    sudo는 서비스 mongod 다시 시작

    물론 당신이 당신의 네트워크에 몽고를 여는 위하여려고하는 경우에 보안의 관점에서 / 세계 (있는 경우) 이것의 의미를 알고있을

  5. ==============================

    5.또 다른 문제는 MongoDB를 포트가 활성화되지 않도록 할 수있다. 확인, 다른 호스트에서, 포트는 서버에서 사용 가능. 이를 위해 다음 명령을 사용할 수 있습니다 :

    또 다른 문제는 MongoDB를 포트가 활성화되지 않도록 할 수있다. 확인, 다른 호스트에서, 포트는 서버에서 사용 가능. 이를 위해 다음 명령을 사용할 수 있습니다 :

    sudo nmap -P0 your_server_ip
    

    이 같은 답변을 얻을 수 있습니다 :

    Host is up (0.052s latency).
    Not shown: 997 filtered ports
    PORT    STATE  SERVICE
    22/tcp  open   ssh
    80/tcp  open   http
    443/tcp closed https
    

    클라우드에서 가상 서버를 사용하는 경우, AWS, 당신은 (기본적으로 27,017) MongoDB를 포트를 추가 할 새 규칙을 추가해야합니다.

    중요 참고 :이 구성 사람이 데이터베이스에 액세스 할 수

  6. from https://stackoverflow.com/questions/7159737/getting-mongodb-on-linux-to-listen-to-remote-connections by cc-by-sa and MIT license