Acessando o servidor interno do lado externo por meio do SSH

4

A questão é a seguinte:

Estou usando o Ubuntu Linux.

Estou trabalhando em casa e preciso acessar um servidor de banco de dados PostgreSQL na rede da minha empresa. Chame o servidor de banco de dados X. Por motivos de segurança, somente uma máquina pode ser acessada do lado de fora usando ssh, chame-a de Y.

Assim, o cenário é: Página inicial < - SSH - > Y < ----- > X (DB)

Acho que algo como o encaminhamento de SSH (configurado em .ssh / config) poderia ajudar nisso, mas não sei como fazer isso, alguma idéia?

    
por myahya 28.12.2010 / 10:35

2 respostas

4

Aqui está a solução: link

Ele está fazendo tunelamento SSH com encaminhamento por meio de um gateway. Para o cenário acima, você precisa emitir o seguinte comando:

ssh -N -L 5555:X:5432 user@Y

Onde X é o nome do servidor de banco de dados usado para endereçá-lo de Y. 5555 é apenas uma porta arbitrária não sendo usada em sua máquina doméstica e 5432 é a porta na qual o servidor de banco de dados PostgreSQL no X está escutando. Quando você emitir este comando, você será perguntado por uma senha, esta é a que você usa para entrar em Y.

O cliente PostgreSQL (pgAdmin por exemplo) é configurado da seguinte forma: host: localhost porta: 5555 nome de usuário: o nome de usuário do banco de dados password: a senha do banco de dados

    
por 28.12.2010 / 11:43
1

Você pode fazer um túnel ssh reverso para perfurar um buraco através do firewall corporativo. Faça isso de dentro da empresa:

ssh -nNT -R 5000:localmachinename:22 [email protected]

Quando você está logado, pode se conectar em casa fazendo:

ssh -p5000 localhost
    
por 28.12.2010 / 11:44