sql >> Databáze >  >> NoSQL >> MongoDB

Co dělá konfigurační volba --bindip v mongodb?

Na bindIp

127.0.0.1 podle konvence je IP adresa localhost a je vázán na rozhraní zpětné smyčky, které je přístupné pouze ze stejného počítače.

Použití této adresy jako výchozí je osvědčeným postupem, protože to znemožňuje náhodné vystavení služby veřejnosti. Musíte se vědomě rozhodnout změnit vazební IP, aby byla vaše služba veřejně dostupná. Což byste měli udělat až poté, co se ujistili že jste přijali správná bezpečnostní opatření.

Typicky má počítač rozhraní zpětné smyčky a jedno nebo více "skutečných" síťových rozhraní.

Řekněme, že máte jedno síťové rozhraní, které je „interní“ (přístupné pouze vašim aplikačním serverům, protože je umístíte do stejné sítě) a máte jedno síťové rozhraní, které je „externí“ (dosažitelné přes veřejný internet pro účely údržby). Nyní, pokud byste svázali svou instanci MongoDB se všemi rozhraními (použili byste IP adresu 0.0. 0,0 Chcete-li to provést), vaše instance MongoDB by byla přístupná z veřejného internetu – stěží žádoucí situace. Útočníci by se mohli pokusit hrubou silou vynutit vaše hesla a nakonec mohou získat přístup k vaší instanci MongoDB. Je lepší zabránit jakémukoli přístupu z veřejného internetu.

Co byste raději chtěli, aby vaše instance MongoDB byla přístupná pro vaše aplikační servery a ze stroje, na kterém běží. MongoDB byste tedy svázali s oběma IP adresami rozhraní zpětné smyčky (127.0.0.1 ) a IP privátní sítě, která by obecně byla jednou z

  • rozsah od 10.0.0.0 na 10.255.255.255
  • rozsah od 172.16.0.0 na 172.31.255.255
  • rozsah od 192.168.0.0 na 192.168.255.255

Vezměme si náš příklad a řekněme, že aplikační servery i instance MongoDB jsou v privátní síti v rozsahu 192.168.X.X a přidělili jste instanci MongoDB IP adresu 192.168.0.1 . Takže byste chtěli, aby vaše instance MongoDB byla přístupná přes 192.168.0.1 aby s ním aplikační servery mohly komunikovat a prostřednictvím 127.0.0.1 používat nástroje pro správu ze stroje, na kterém běží MongoDB bez námahy.

Takže s konfigurační syntaxí YAML byste předali více IP adres

POZNÁMKA nepřidávejte mezery mezi čárky na více IP adresách

# WARNING!!! WARNING!!! WARNING!!!
# DO NOT DO THIS UNLESS YOU HAVE CLIENT AUTHENTICATION ENABLED
# (or you really, really, really know what you are doing)
net:
  bindIp: 127.0.0.1,192.168.0.1

O varováních

Stručně řečeno, toto je způsob, jak MongoDBs říci:

Existuje jakési naznačené „Pokud opravdu víte, co děláte!", protože irc, varování zmizí, pokud aktivujete ověřování klienta nebo změnit bindIp.



  1. příkaz mongo nebyl rozpoznán při pokusu o připojení k serveru mongodb

  2. Jak se MongoDB liší od databáze SQL

  3. Jak mohu číst z Redis uvnitř MULTI bloku v Ruby?

  4. MongoDB log 10 $