gutocarvalho.net

Tecnologia, cotidiano e vida geek.

resetando senha de root do mysql server

| Comments

As vezes a gente começa um novo projeto e precisa dar manutenção em um ambiente não documentado, e na maioria das vezes, você não tem nem mesmo as senhas de administração do banco mysql registradas, e precisa se virar para cuidar do ambiente e atender seus chamados.

Recentemente eu passei por isto e precisei quebrar a senha de root de alguns servidores MYSQL do meu novo cliente, abaixo segue o passo a passo, resumido, direto ao ponto, de como fiz, espero que possa ajudar alguém ;)

Acesse o sevidor

$ ssh servidor –l usuario

Se torne root

$ sudo -i

Pare o mysql server

# /etc/init.d/mysqld stop

Inicie o mysql em modo safe

# mysqld_safe --skip-grant-tables &

Acesse o mysql

# mysql

Acesse a base mysql

mysql> use mysql;

Troque a senha do usuário root

mysql> update user set password=PASSWORD("senha") where User='root';

Saia do mysql

mysq> exit

Pare o mysql

# /etc/init.d/mysql stop

Inicie o mysql da forma normal

# /etc/init.d/mysql start

Acesse o MYSQL com a senha que voce especificou

# mysql –u root –p

Execute os grants necessários para atender seus tickets

mysql> grant SELECT on base.* to usuario@10.1.30.xxx identified by 'senha';

Rode um flush nos privilégios

mysq> flush privileges;

Saia do mysql

mysq> exit;

Faça logout do root

# exit

Faça logout do servidor

$ exit

Pronto, o MYSQL agora está sob seu controle.

Eu particularmente recomendo que você faça isso via Puppet, veja o post que eu abordo como gerenciar o MYSQL com Puppet, porém, essas dicas são sempre importantes ;)

[s]
Guto

apache ntlm_auth permission denied

| Comments

Há alguns posts eu mostrei uma configuração de SELINUX para permitir a conexão em rede do apache quando este está utilizando proxy AJP com SELINUX ligado, hoje vou mostrar uma dica similar.

Em um recém instalado CentOS 6.x eu estava trabalhando com a autenticação NTLM com WINBIND e recebi o seguinte erro nos logs do apache httpd.

[Thu Jul 24 13:09:13 2014] [error] [client 10.10.2.55] (13)Permission denied: couldn't spawn child ntlm helper process: /usr/bin/ntlm_auth
[Thu Jul 24 13:09:13 2014] [error] [client 10.10.2.55] (13)Permission denied: couldn't spawn child ntlm helper process: /usr/bin/ntlm_auth

Ao consultar o log audit do selinux também encontrava uma restrição.

1
2
type=AVC msg=audit(1406218179.251:2302): avc:  denied  { read open } for  pid=24206 comm="httpd" name="ntlm_auth" dev=dm-0 ino=16475 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:winbind_helper_exec_t:s0 tclass=file
type=SYSCALL msg=audit(1406218179.251:2302): arch=c000003e syscall=59 success=yes exit=0 a0=7f81190eceb8 a1=7f81190ecea0 a2=7fffc633ddb0 a3=7fffc633daf0 items=0 ppid=23043 pid=24206 auid=511 uid=48 gid=48 euid=48 suid=48 fsuid=48 egid=48 sgid=48 fsgid=48 tty=(none) ses=316 comm="ntlm_auth" exe="/usr/bin/ntlm_auth" subj=unconfined_u:system_r:httpd_t:s0 key=(null)

Para contornar o problema de forma definitiva é necessário informar ao selinux que esse tipo de autenticação está permitida no sistema.

setsebool -P allow_httpd_mod_auth_ntlm_winbind 1

Com isso, sua autenticação irá funcionar.

[s]
Guto