2013-02-09 11 views
8

Utworzono replikę trzech członków (na oddzielnych serwerach) po tutorialu na stronie mongodb.Mongodb KeyFile zbyt otwarte uprawnienia

muszę skonfigurować w /etc/mongodb.conf następującym:

widelcem = true

keyfile =/srv/MongoDB/keyfile

I muszę stworzyć keyfile w tym miejscu i serwer zawsze mówił mi "uprawnienia są zbyt otwarte" w keyFile

Co może być nie tak?

góry dzięki

Odpowiedz

22

Od the docs:

Plik klucza nie może mieć grupę lub „świat” uprawnienia w systemach UNIX

Dlatego po uruchomieniu tego, powinno być dobrze (zastąp aktualną ścieżkę):

chmod 600 /path/to/keyfile 

Powinieneś także upewnić się, że plik klucza jest własnością tego samego użytkownika, którego używasz do uruchamiania procesów mongod/mongos, w przeciwnym razie ustawienie powyższych uprawnień spowoduje błąd (tylko użytkownik, który jest właścicielem pliku, może uzyskać do niego dostęp z 600 uprawnieniami) .

+5

Znalazłem problem. Mongodb działa na mongodb użytkownika, a plik został utworzony przez innego użytkownika. Używanie chown mongodb keyFile rozwiązało mój problem. Adam, zrobiłem to po de tutorialu i nie mogłem odczytać pliku. Teraz wszystko jest ok. – SeVeNDuS

+0

Przepraszam - myślałem, że to domniemane. 700 zezwoleń oznacza, że ​​tylko właściciel pliku może uzyskać do niego dostęp, dlatego ten właściciel musi być tym samym, którego używasz do uruchamiania procesów MongoDB. Dodałem notatkę, aby wyjaśnić innym: –

+0

Rozumiem, dlaczego nie zezwala na światowe uprawnienia, ale uniemożliwienie grupom wydaje się o krok za daleko i komplikuje admin. – UpTheCreek