encaminhar porta 3306 de máquina com firewall para desktop usando SSH?

1

Aqui está a configuração da rede:

Máquina A (meu PC) SSH 22 = > Máquina B (Linode com acesso root) SSH 21343 = > Máquina C (servidor MySQL).

Eu quero encaminhar a porta 3306 de C a B para A, então posso usar o SQL Workbench em A para executar comandos em C.

Note que C só é acessível através da porta SSH 21343 e somente a partir de B (não podemos mudar o firewall em C para abrir mais portas, mas podemos mudar suas configurações de SSH).

Isso é possível? Eu li sobre túneis e ProxyCommand. Mas eu preciso de um simples exemplo passo a passo.

Todas as máquinas são debian Lenny.

    
por Moishe Mo 28.08.2011 / 18:40

3 respostas

4

Na máquina A:

ssh -L 3307:C:3306 user@B

Isto alocou um soquete para escutar a porta 3307 em A. E sempre que uma conexão é feita a esta porta, é encaminhada sobre o túnel ssh para C: 3306.

Você pode se conectar ao servidor MySQL no C com:

mysql -u <user> -p -h 127.0.0.1 -P 3307

(127.0.0.1 para conectar via TCP / IP ao invés de um socket)

No, I cannot connect to MySQL on C from B. Only SSH listening on 21343 is open to B.

Se o firewall em C só permitir conectar-se do host local, algo assim:

iptables -A INPUT -p tcp -s 127.0.0.1 --dport 3306 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j DROP

então, AFAIK, não há como fazer isso. Se você tentar se conectar ao túnel ssh, receberá os erros abaixo:

ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0
    
por 28.08.2011 / 19:27
1

~ / .ssh / config na máquina A se parece com isto:

Host C
  ProxyCommand ssh -q B nc %h %p
  LocalForward 3306 localhost:3306
  Port 21343

Host B
  Hostname X.X.X.X  (ip of host B)

Em seguida, em A ssh C

e em outro terminal em A run mysql -h localhost Isto conectará você ao mysql em C pela porta ssh.

    
por 29.08.2011 / 06:01
0

Você pode considerar algo nos moldes do link na máquina B, possivelmente ouvindo algo diferente de TCP 22, para que o SSH possa permanecer na porta padrão da máquina B.

    
por 28.08.2011 / 20:19