Em sua máquina local (fora de sua rede) você deve executar o cliente ssh com os seguintes parâmetros:
ssh -L 5999:imac_host:5900 pi_host
Eu escolhi 5999 para a porta local, mas poderia ser qualquer porta. Você só precisa se certificar de que não é usado por nenhum serviço local. Substitua imac_host
e pi_host
por endereços IP.
Quando você se conectar com um determinado comando, vnc
port 5900 de imac_host
será encaminhado para a porta 5999 da sua máquina local.
Em seguida, você precisa configurar seu cliente vnc em sua máquina local para se conectar a localhost
na porta 5999
(conecte a si mesmo na porta especificada).
Como funciona
VNC
server no seu iMac está escutando na porta 5900
para conexões de entrada. Clientes VNC
podem se conectar a essa porta de outras máquinas em sua rede local. Como você não tem acesso direto à porta 5900
no seu iMac, está usando ssh
para tunelar a conexão do seu computador pela Internet através do roteador para o iMac em sua rede local.
ssh
abre a porta 5999
(poderia ser qualquer outra porta) em sua máquina atual e escuta nesta porta por conexões. Quando você se conecta a esta porta ssh
encapsula a conexão (através da porta ssh 22
) para o seu roteador e do roteador estabelece conexão ao iMac na porta 5900
. É chamado de encaminhamento de porta.
O seu iMac também tem o ssh ativado. Se você não precisa de vnc, mas apenas deseja copiar um arquivo, deve ser possível usar o scp. Para simplificar, você poderia tentar sem qualquer encaminhamento de porta. Apenas copie o arquivo de imac_host
para pi_host
. A partir da execução do console do Pi:
scp username@imac_host:path_to_file destination_file'
Isso irá copiar o arquivo path_to_file
para destination_file
em sua pasta atual no Pi. Então você pode repetir este passo e copiar o arquivo do Pi para a sua máquina local.