Android

Como se conectar ao mysql através do túnel ssh

02 Connecting to MySQL via SSH

02 Connecting to MySQL via SSH

Índice:

Anonim

Por padrão, o servidor MySQL escuta apenas no host local, o que significa que ele pode ser acessado apenas por aplicativos em execução no mesmo host.

No entanto, em algumas situações, convém conectar-se ao servidor a partir de locais remotos. Uma opção seria configurar o servidor MySQL para permitir conexões remotas, mas isso requer privilégios administrativos e pode causar riscos à segurança.

Uma alternativa mais segura seria criar um túnel SSH do sistema local para o servidor. O encapsulamento SSH é um método de criação de uma conexão SSH criptografada entre um cliente e uma máquina servidor através da qual as portas de serviços podem ser retransmitidas.

Neste guia, explicaremos como criar um túnel SSH e conectar-se ao servidor MySQL a partir de clientes remotos. As mesmas instruções se aplicam ao MariaDB.

Pré-requisitos

  • Acesso SSH Client.SSH ao sistema no qual o servidor MySQL é executado.

Crie um túnel SSH no Linux e macOS

O cliente ssh é pré-instalado na maioria dos sistemas baseados em Linux e Unix.

ssh -N -L 3336:127.0.0.1:3306 @

As opções usadas são as seguintes:

  • -N - Diz ao SSH para não executar um comando remoto. -L 3336:127.0.0.1:3306 - Cria um encaminhamento de porta local. A porta local ( 3306 ), o IP de destino ( 127.0.0.1 ) e a porta remota ( 3306 ) são separadas por dois pontos (:). @ - O endereço IP do usuário e do servidor SSH remotos. Para executar o comando em segundo plano, use a opção -f.Se o servidor SSH estiver escutando uma porta diferente de 22 (o padrão), especifique a porta com a opção -p .

Depois de executar o comando, você será solicitado a inserir sua senha de usuário SSH. Depois de inseri-lo, você efetuará login no servidor e o túnel SSH será estabelecido. É uma boa ideia configurar uma autenticação baseada em chave SSH e conectar-se ao servidor sem inserir uma senha.

Agora você pode apontar o cliente MySQL da máquina local para 127.0.0.1:3336 inserir as credenciais de login do banco de dados remoto e acessar o servidor MySQL.

Por exemplo, para conectar-se ao servidor MySQL usando o cliente mysql linha de comando, você deve emitir:

mysql -u MYSQL_USER -p -h 127.0.0.1

Onde MYSQL_USER é o usuário remoto do MySQL com privilégios para acessar o banco de dados.

Quando solicitado, digite a senha do usuário MySQL.

Para finalizar o túnel SSH, digite CTRL+C no console em que o cliente ssh está em execução.

Crie um túnel SSH no Windows

Os usuários do Windows precisarão primeiro baixar e instalar um programa cliente SSH. O cliente SSH do Windows mais popular é o PuTTY. Você pode fazer o download do PuTTY aqui.

Execute as seguintes etapas para criar um túnel SSH para o servidor MySQL com PuTTY:

  1. Inicie o Putty e digite o Endereço IP do servidor no campo Host name (or IP address) do Host name (or IP address) :

    Conclusão

    O MySQL, o servidor de banco de dados de código aberto mais popular, escuta as conexões recebidas apenas no host local. Criar um túnel SSH permite que você se conecte com segurança ao servidor MySQL remoto a partir do seu cliente local.

    mysql mariadb ssh