Pular para o conteúdo

Duas dicas de SSH

Dica publicada em Linux / Miscelânea
Anthony Collucci acollucci
Hits: 13.511 Categoria: Linux Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Duas dicas de SSH

Conexão SSH sem senha

Método 1:

Esse procedimento só funciona caso os dois servidores tenham o mesmo usuário que irá se conectar pelo SSH.

Com o servidor SSH instalado na máquina em que se quer conectar, logado com a conta de usuário com a qual se quer realizar a conexão SSH, gere a chave RSA com o comando:

ssh-keygen -t rsa

Quando perguntado para entrar com uma "passphrase", apenas tecle "Enter" duas vezes para que fique em branco, caso contrário esta frase precisará ser digitada posteriormente.

Com isso, no diretório .ssh dentro da HOME do usuário com que a chave foi criada serão criados dois arquivos, id_rsa e id_rsa.pub. Copie o arquivo id_rsa.pub para o computador pelo qual se quer conectar via SSH sem a senha.

scp id_rsa.pub [user]@[server_ssh]:

Depois de copiado acesse o diretório para o qual o arquivo foi copiado e use o comando:

cat id_rsa.pub >> [home_do_usuário]/.ssh/authorized_keys2

Isso acrescentará a entrada da chave no arquivo de chaves autorizadas. Caso esse arquivo authorized_keys2 não exista, basta criá-lo na pasta .ssh da HOME do usuário. Após isso basta digitar:

ssh [user]@[server_ssh]

A conexão será realizada sem necessidade de senha.

Método 2:

ssh-keygen -t rsa
$ ssh-copy-id -i [diretório_chave_publica] [user]@[ip_cliente]:


Navegação SSH

Para utilizar qualquer navegador para realizar a conexão através de um túnel SSH é necessário ter uma conta para acesso SSH em algum servidor que considere seguro. A conta não precisa de nenhum privilégio especial. No cliente utilizar algum programa para conexão SSH e utilizar o seguinte comando:

ssh -D [porta] [user]@[server_ssh]

Configurar o navegador para usar SOMENTE proxy socks, como localhost porta=[porta].

A partir de agora toda a conexão do navegador primeiramente passará pelo servidor SSH antes de ser enviada ao destino e vice-versa.

ssh -L 110:ebrandi.myip.org:110 edson@ebrandi.myip.org

Após me autenticar, posso baixar as minhas mensagens de e-mail via POP3 do servidor ebrandi.myip.org através de um canal seguro, simplesmente setando como meu POP3 server 127.0.0.1:110 no meu cliente POP3. Enquanto eu permanecer conectado o túnel estará funcionando.

Por outro lado, se eu executar o comando:

ssh -R 110:ebrandi.myip.org:110 edson@ebrandi.myip.org

Vou fazer com que o servidor ebrandi.myip.org, que não tem serviço na porta 110, redirecione para a porta 110 do meu desktop, via um canal seguro, todas as requisições que chegarem para ele na porta 110. Acho que agora melhorou, não?

Para utilizar o SSH em conjunto com o VNC, utilizamos a opção "-L", que permite redirecionar uma determinada porta local para uma porta no servidor, criando o túnel. A sintaxe do SSH, neste caso, seria:

ssh -L [porta_local]:[servidor:porta_do_servidor servidor]

Parece complicado, mas vai melhorar... :)

O servidor VNC escuta na porta 5900 + o número do display (5901, 5902, 5903, etc). Note que a porta é diferente do servidor Java, acessível utilizando o browser, que utiliza as portas de 5800 em diante.

Se você vai acessar o display 1 (porta 5901), na máquina 220.132.54.78, precisamos orientar o SSH a redirecionar esta porta para uma porta acessível pelo cliente VNC (a própria porta 5901, ou qualquer outra) no PC local. Para isso, é necessário que o servidor SSH esteja aberto no servidor remoto e que você tenha uma conta nele. O comando seria:

ssh -f -N -L5901:220.132.54.78:5901 -l login 220.132.54.78

Substitua o "login" pela sua conta de usuário na máquina remota. O SSH pedirá a senha (ou passphrase) e pronto, o túnel estará criado.

Tudo o que você precisa fazer agora é abrir o cliente VNC e acessar o endereço "127.0.0.1:1". Isso fará com que o cliente acesse a porta 5901 na máquina local, que por sua vez será redirecionada (através do túnel) para a porta 5901 do servidor remoto. Você usará o VNC da mesma forma, mas desta vez usando um túnel seguro.

Se por acaso a porta 5901 local já estiver em uso, você pode simplesmente criar o túnel apontando para outra porta da sua máquina. Se você fosse acessar o display 4 (porta 5904) no servidor 192.168.0.4, redirecionando-o para a porta 5905 (display 5) da máquina local, logando-se usando o usuário "tux", o comando seria:

ssh -f -N -L5905:192.168.0.4:5904 -l tux 192.168.0.4

Nesse caso você acessaria o endereço "127.0.0.1:5" no cliente VNC, que faz com que ele se conecte na porta 5905.

Flws
Anthony Collucci

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Roteiro de instalação e configuração de um Servidor Debian

Acelerando o apt-get ou similares

Picocom - Gravando dados enviados via USB pelo Arduino

TCP/IP para sistemas embarcados

O comando grep

Resolvendo o problema de segmentation fault no XMMS

VirtualBox 4.0 traz novos recursos úteis

Criando PDF pelo terminal

Fontes TrueType no Debian

Saiba a última versão estável do kernel na inicialização do Linux

#1 Comentário enviado por andre.vmatos em 01/08/2009 - 14:20h
Muito boa a dica. Simples e direta. Parabéns, tah nos favoritos. Abçss
#2 Comentário enviado por acollucci em 03/08/2009 - 16:16h
Opa Vmatos obrigado,

So um detalhe, retiraram da Dica, mas é importante, as dicas acima nao sao de minha autoria e foram enviadas para mim, sem autor conhecido.
Mas achei interessante e resolvi divulgar assim mesmo.

Flws
#3 Comentário enviado por landex em 10/06/2010 - 10:26h
Legal esta dica.

Contribuir com comentário

Entre na sua conta para comentar.