31.01.2025

Como estabelecer uma conexão VNC por meio de um túnel SSH no CentOS 8

Recentemente, falamos sobre como instalar o servidor TigerVNC no CentOS 8. As conexões VNC são inseguras por si só. Portanto, neste tutorial, mostraremos a você como estabelecer uma conexão VNC em um túnel SSH no CentOS 8. Isso protegerá a conexão e os dados transmitidos. Para concluir com êxito as etapas deste manual, você deve concluir todas as configurações da primeira parte.

Configuração do SSH

Anteriormente, criamos o usuário username. Agora precisamos dar a ele a capacidade de se conectar ao servidor via SSH, caso ele não a tenha. Para testar isso, tente se conectar ao servidor remoto via SSH como nome de usuário.

Se isso funcionar, você poderá prosseguir para a próxima etapa. Caso contrário, será necessário ativar a autorização por senha no servidor ou configurar uma chave SSH para nome de usuário. Consulte os capítulos Configuração de SSH e Configuração de chave SSH na Nota sobre a configuração inicial do servidor CentOS 8.

Configuração do TigerVNC

Abra o arquivo de configuração do TigerVNC:

sudo nano /etc/tigervnc/vncserver-config-defaults

Descomente a seguinte linha:

# localhost

Reinicie o serviço TigerVNC:

sudo systemctl restart vncserver@:2

Agora não será possível conectar-se via VNC ao servidor diretamente de um computador remoto, somente por meio de um túnel SSH.

Agora vamos passar para o computador cliente.

Criando um túnel SSH no Linux ou no MacOS

Em qualquer sistema operacional do tipo Unix, basta abrir um prompt de comando e digitar o seguinte comando:

ssh -L 62000:localhost:5902 -N username@TigerVNC_server_IP

Substitua nome de usuário pelo seu login que foi criado na primeira parte do tutorial. E TigerVNC_server_IP pelo endereço de seu servidor. Como você pode ver, esse é um comando ssh comum. Os sinalizadores L e N permitem que ele seja usado para criar um túnel.

Criando um túnel SSH no Windows com o Putty

No Putty, as diferenças em relação à conexão SSH normal também não são muito diferentes. É necessário ir para a seção Connection, depois SSH e, finalmente, Tunnels. Digite 62000 na porta de origem e localhost:5902 no destino.

Clique em Add and Apply.

Estabelecendo uma conexão VNC em um túnel SSH

Depois que o túnel for criado, você poderá estabelecer uma conexão VNC segura com o servidor remoto. Para fazer isso, use qualquer cliente VNC, como na primeira parte. Mas o endereço e a porta do servidor VNC para conexão serão diferentes: localhost:62000.