ejabberd: esiste un modo per configurare un diverso & # 8220; cookie & # 8221; di & # 8220; ejabberd & # 8221 ;?

StackOverflow https://stackoverflow.com/questions/1440351

  •  10-07-2019
  •  | 
  •  

Domanda

Sto costruendo un modulo ejabberd. Ho bisogno di questo modulo per eseguire chiamate RPC a un altro nodo sulla stessa LAN (sname). Da quanto ho capito, ejabberd configura che possiede "cookie". che, ovviamente, differirà dal cookie che uso per gli altri miei nodi.

C'è un modo per forzare ejabberd a usare un altro cookie?

EDIT: ejabberd avvia il suo demone sotto " ejabberd " nome utente.

MODIFICA: anche durante la creazione di /home/ejabberd/.erlang.cookie (nome utente: ejabberd, gruppo: ejabberd) con un cookie appropriato non funziona ancora.

EDIT: un modo per aggirare il problema (che non è così bello) è copiare (con le autorizzazioni appropriate) il file .erlang.cookie previsto in / var / lib / ejabberd

È stato utile?

Soluzione

Lo script ejabberdctl imposta la directory home in modo che il file cookie rimanga su /var/lib/ejabberd/.erlang.cookie . Lo stesso Erlang controlla le autorizzazioni del file, quindi devono essere corrette.

Hai alcune opzioni per forzare l'uso di un determinato cookie:

  • Cambia il contenuto del file - ejabberd non lo modificherà.
  • Modifica lo script ejabberdctl in modo che passi -setcookie 'SomeCookieValue' in erl.
  • Cambia ejabberdctl per impostare una home directory diversa.

Il file cookie verrà creato se non esiste, ma non verrà modificato alle spalle se esiste. L'uso di un cookie comune è necessario per creare cluster ejabberd o per integrarsi con ejabberd tramite la distribuzione erlang.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top