php - Comment spécifier un utilisateur comme "mongo" pour exécuter MongoDB?
淡淡烟草味
淡淡烟草味 2017-05-27 17:43:26
0
3
669

Environnement : Ubuntu 16.04
Par exemple, si php-fpmnginx 使用的是 www 用户运行的,redis 使用的 redis 用户运行,到了mongodb这好像不能指定用户,默认用 root l'utilisateur l'exécute, un avertissement sera donné à chaque fois qu'il entrera dans mongo

[initandlisten] ** AVERTISSEMENT : vous exécutez ce processus en tant qu'utilisateur root, ce qui n'est pas recommandé.

Vous trouverez ci-joint le script de démarrage de mongodb. Ce script peut-il être modifié pour spécifier un utilisateur pour exécuter mongodb ?

#!/bin/sh

### BEGIN INIT INFO
# Provides:     mongodb
# Required-Start:
# Required-Stop:
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description: mongodb
# Description: mongo db server
### END INIT INFO

. /lib/lsb/init-functions

PROGRAM=/usr/local/mongodb/bin/mongod
MONGOPID=`ps -ef | grep 'mongod' | grep -v grep | awk '{print }'`

test -x $PROGRAM || exit 0
case "" in
  start)
    ulimit -n 3000
    log_begin_msg "Starting MongoDB server"
    $PROGRAM -f /usr/local/mongodb/mongo.conf
    log_end_msg 0
    ;;
  stop)
    log_begin_msg "Stopping MongoDB server"
    if [ ! -z "$MONGOPID" ]; then
      kill -15 $MONGOPID
    fi
    log_end_msg 0                                                                                                                                                                                             
    ;;
  status)
    ;;
  *)
    log_success_msg "Usage: /etc/init.d/mongodb {start|stop|status}"
    exit 1
esac
exit 0
淡淡烟草味
淡淡烟草味

répondre à tous(3)
迷茫

Ce n'est en fait pas un problème avec mongodb, il devrait être considéré comme plus adapté à Linux. Au moins, vous pouvez utiliser le script sudo来指定用户:
sudo -u mongo $PROGRAM -f /usr/local/mongodb/mongo.conf
如果是用RPM安装,本身就带了init.d et vous pouvez vous y référer pour référence. Surtout s'il a été configuré pour désactiver NUMA, vous devez y prêter attention.

我想大声告诉你

Je ne sais pas si je comprends ce que vous voulez dire. Si vous souhaitez autoriser les utilisateurs à se connecter, il vous suffit d'ajouter des utilisateurs et d'ajouter le paramètre --auth lors du démarrage de mongod pour activer l'autorisation de connexion. À ce stade, connectez-vous de la manière par défaut, c'est-à-dire connectez-vous en tant qu'utilisateur non authentifié, et vous serez invité à indiquer que vous n'avez aucune autorisation lors de l'exécution de requêtes et d'autres opérations.

    Thu May 25 06:01:27.522 listDatabases failed:{ "ok" : 0, "errmsg" : "unauthorized" } at src/mongo/shell/mongo.js:46
我想大声告诉你

Considérant la sécurité, toutes sont attribuées en fonction des droits. Autant d'autorisations que nécessaire sont allouées. C'est le principe de base de la sécurité Linux.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal