Qual permissão GRANT devo usar?

0

Servidor pessoal de configuração do Mysql.

Estou trabalhando em um servidor de correio pessoal, seguindo este guia: Digital Ocean -Postfix / Dovecot / Mysql - Setup.

A questão é que eu quero configurar um usuário (o meu desta vez), como 'normal'. Isso significa sem permissão adicional. Para fazer isso, estou trabalhando em um banco de dados com o rootusuário que eu uso para "conceder / soltar" permissões conforme necessário.

  • Meu 'usuário' tem apenas SELECTpermissões pessoais DB-email.
  • Analisei os arquivos de configuração e os logs, mas não consigo encontrar o erro ou o que estou fazendo de errado.
  • root O usuário não possui e-mail enviado, o que significa que ele não está incluído em nenhuma tabela do banco de dados por motivos de segurança.

A seguir, logé feito o dumping através tailde um log de loop do servidor criado manualmente:

/var/log/mail.log:
dovecot: auth-worker(5529): Error: mysql(127.0.0.1): Connect failed to database (my-db): Access denied for user 'my_user'@'localhost' (using password: YES) - waiting for 125 seconds before retry.    

dovecot: auth: Error: auth worker: Aborted PASSL request for [email protected]: Lookup timed out.

dovecot: lmtp([email protected]): Error: user [email protected]: Auth USER lookup failed.

dovecot: auth-worker(5529): Error: mysql: Query timed out (no free connections for 60 secs): SELECT email as user, password FROM virtual_users WHERE email = '[email protected]';

auth-worker(5529): Error: sql([email protected]): Password query failed: Not connected to database.

/var/log/mysql/error.log
2016-11-04T08:38:38.500948Z 2552 [Note] Access denied for user 'my_user'@'localhost' (using password: YES).

Então, eu entendo que a configuração no lado do servidor, possivelmente no dovecot ou postfix, os arquivos apontam uma conexão para o DB-emailtrought, rootmas eu quero que seja my-user.

  • Revi a senha e concedo permissões.

Qualquer ajuda será apreciada.

nota: esta questão foi escrita na página "estouro de pilha" e movida para aqui de acordo com a natureza própria (sobre configuração), em vez de desenvolvimento de software! ( pergunta original )

Inferno0
fonte
Acho que este post não tem futuro! De qualquer forma, eu o iniciei e vou revisá-lo para tentar resolver sozinho !. Encontrei alguma stack overflowreferência sobre a usagedeclaração de mysql GRANTfunção. stackoverflow.com/questions/2126225/… . É sobre o recurso 'sem privilégios' para um usuário em um banco de dados.
Hell0
Não entendo se esse privilégio está causando meu problema ou não. Porque estou conferindo um 'estado' específico a um usuário. Isso significa que estou 'concedendo' SELECTprivilégios a esse usuário, mas esse usuário USAGEtambém. O que isso significa?. Isso é um conflito? Eu deveria 'DROP' o usuário e 'iniciar' novamente?
Hell0
Você verificou os logs do MySQL para obter detalhes por que a autenticação falhou? Tente conceder acesso não apenas a 127.0.0.1, mas também a ::1(que é host local para IPv6, embora o Dovecot pareça se conectar no IPv4 após os logs). Você tentou se conectar manualmente mysql -u my-user -p -h 127.0.0.1?
Jens Erat
Eu verifiquei o logon e devo tentar isso sobre o IPv6, mas acho que eles não têm significado no meu sistema, porque todas as configurações (ISP / ifconfig no cliente e servidor, apontam para o endereço IPv4). É possível que o problema venha de uma configuração "mbox" errada? Quero dizer postfix esperar um tipo maildir, e eu não construí nada. Eu estava pensando que o cliente faz isso.
Hell0
No lado do servidor, não darei acesso root a qualquer recurso de email, porque do ponto de vista do administrador que "não faz sentido". Eu posso entender uma entrega de correio interno - obsoleta se usar o sistema de log apropriado !, mas qualquer coisa além disso.
Hell0