Últimos bloggers

XSS - Um exemplo de ataque

Este artigo tem como...

Patrijosa | Patrício dos Santos

Leia mais

No So Dark Knight

Sim, eu sei que já...

seckt0r | Benone Marcos

Leia mais

Java: Tratamento de packages

Já apanhei 'surra' com uso...

snnangola | Nataniel Baiao

Leia mais

Carrers in Africa Recrutamento

Prezados Membros do Tian,  ...

Tian | Ana Chaves

Leia mais

Mais em: Patrijosa, Tian, Edy Virus, snnangola, Blog, seckt0r

100%
-
+
4
Show options
Como criar um SSH? PDF Versão para impressão Enviar por E-mail
Escrito por Wanderley Ribeiro   
Terça, 05 Junho 2007 21:20

SSH

Secure Shell


Salve Salve Pessoal, comumente acontece com alguns de nós de estar a conversar com algum amigo e no desenrolar da conversa um de nós precisa acessar o computador do outro, seja para ajudá-lo a fazer alguma coisa (configurar alguma programa), ou ainda para fazer o download de algum arquivo ou algo do gênero. Podemos dizer que o SSH é uma "mão na roda" como diz o termo frequentemente usado pelos nossos amigos brasileiros.

Para muitos o processo de instalação e configuração de um SSH pode parecer "coisa de outro mundo", mas na verdade não é bem assim.
Vamos começar por entender o que é um SSH.


O que é SSH?
[[SSH]] - [[Secure Shell]], o Shell é um programa que 'recebe', 'interpreta' e executa comandos, é usado através de um prompt de comando (linha de comandos), resumindo pode-se dizer que o Shell é um interpretador de comandos para sistemas Unix - GNU/Linux.

Existe SSH para Windows?
Eu pensava que não existisse, mas existe sim, apesar de ser pouco usado, pois o ssh é mais usado mesmo no Linux, mas tem para Windows sim e pode ser encontrado aqui . O SSH pode ser comparado a um outro programa para a plataforma Windows, trata-se do [[Telnet]], na verdade o SSH e o Telnet desempenham a mesma tarefa, com a grande diferença que o Telnet não possui criptografia e o SSH possui, ou seja, ao trabalharmos com o Telnet, tudo o que escrevemos, todos os parâmetros que passamos durante a conexão são enviados em texto puro, o que implica dizer que se existir um [[sniffer]] na rede as informações poderão ser coletadas tão facilmente como 'roubar um sambapito de um kandengue' é ai que entra o nosso amigo SSH, para garantir que ninguém vai receber o sambapito do kandengue, ou seja, as informações transmitidas durante a conexão SSH são criptografadas o que nos dá total confiabilidade nessa ferramenta. O SSH é usado por grandes empresas para administração remota, sistemas de backup e entre outros, por isso podemos dizer que é uma ferramenta confiável.

O SSH é um protocolo de rede e ao mesmo tempo um programa para acesso remoto, funciona sobre a camada de Aplicação da pilha de protocolos do modelo TCP/IP, e exatamente por fazer parte do protocolo TCP/IP garante maior confiabilidade.

A implementação do SSH
Para os mais desprovidos de conhecimento nesse assunto não há motivo para pânico porque esse artigo vai explicar de maneira simples, básica e funcional como configurar o SSH.

Vou acreditar que estás a usar um SO (Sistema Operativo) Linux e que este possa vir a ser uma distribuição [[Debian]], muitos sistemas vêm já com o SSH instalado, mas como não somos 'magos do oriente' para adivinhar se isso é verdade ou não,  vamos digitar o seguinte comando:

$dpkg -l ssh


Vale salientar que o $ ( cifrão, ou dólar como diria o meu professor) não faz parte do comando, e sim do sistema, ou seja, o '$' indica que estamos no prompt de comando como usuário normal, caso estivemos autenticados como root (o que não é muito aconselhável fazer frequentemente, só em casos que seja realmente necessário), o símbolo seria '#' (cardinal, ou jogo da velha segundo um amigo meu :) )

Bom, feito isso será apresentada uma tela com o pacote ssh e a sua respectiva descrição, que na verdade vai conter o nome do pacote, a versão e a descrição, que vai estar mais ou menos assim:

||/ Nome           Versão        Descrição
+++-==============-==============-==========
ii  ssh            4.3p2-8ubuntu1 Secure shell client and server

Se a tela mostrada for que nem essa de cima é sinal que o pacote está instalado, caso contrário sinta-se no direito, obrigação e dever de instalar
através do seguinte comando:

$sudo apt-get install ssh

Hummm.. feito isso aguardamos alguns segundos até que o pacote seja instalado no sistema e pronto, estamos aptos para começar a configuração.

Vamos agora editar o ficheiro de configuração do ssh que geralmente fica em:

/etc/ssh

Faremos isso com o comando:
$vi /etc/ssh/ssh_config

ssh_config é o nome do ficheiro de configuração do SSH, ele deverá ser semelhante a isso:

# This is the ssh client system-wide configuration file.  See
# ssh_config(5) for more information.  This file provides defaults for
# users, and the values can be changed in per-user configuration files
# or on the command line.

# Configuration data is parsed as follows:
#  1. command line options
#  2. user-specific file
#  3. system-wide file
# Any configuration value is only changed the first time it is set.
# Thus, host-specific definitions should be at the beginning of the
# configuration file, and defaults at the end.

# Site-wide defaults for some commonly used options.  For a #comprehensive
# list of available options, their meanings and defaults, please see the
# ssh_config(5) man page.

Host *
#   ForwardAgent no
#   ForwardX11 no
#   ForwardX11Trusted yes
#   RhostsRSAAuthentication no
#   RSAAuthentication yes
#   PasswordAuthentication yes
#   HostbasedAuthentication no
#   BatchMode no
#   CheckHostIP yes
#   AddressFamily any
#   ConnectTimeout 0
#   StrictHostKeyChecking ask
#   IdentityFile ~/.ssh/identity
#  IdentityFile ~/.ssh/id_rsa
#  IdentityFile ~/.ssh/id_dsa
     Port 22
     Protocol 2,1
#   Cipher 3des
#   Ciphers  aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes$
#   EscapeChar ~
#   Tunnel no
#   TunnelDevice any:any
#   PermitLocalCommand no
      SendEnv LANG LC_*
      HashKnownHosts yes
      GSSAPIAuthentication yes
      GSSAPIDelegateCredentials no


Ok, estamos dentro do arquivos, todas as linhas que começam por '#' (jogo da velha :))  significam que estão comentadas e que não serão interpretadas pelo pelo interpretador (uma redundância  mas sei que vocês me  desculpam)

A porta padrão para o SSH é a porta 22 logo essa linha deverá estar descomentada, e a linha logo abaixo a da porta é a do protocolo, neste caso estão habilitadas as duas versões do protocolo SSH, a versão 1 e a versão 2, não entrarei em maiores detalhes sobre o restante da configuração porque não é o foco neste momento. Mas caso o estimado amigo(a) queria saber mais deixo aqui um link com os detalhes sobre cada uma das opções do ssh_config (só que estão em inglês, mas como sei que todos vocês dão-se muito bem com a língua de Shakspeare, não termos problemas nesse sentido). E para ser mais redundante ainda, essas mesmas informações sobre as opções do ssh_config podem ser encontradas ao digitar no prompt o seguinte:

$man ssh_config
:)

Agora precisamos inicializar o serviço responsável por colocar o SSH no ar, para isso vamos em /etc/init.d/ através do seguinte comando reinicializamos o serviço:

$/etc/int.d/ssh restart

Bom, se conseguir chegar até aqui é sinal que as coisas estão a andar como esperado, caso não tenha conseguido é porque as coisas estão a dar errado e estão a ser da pior forma possível (Lei de Murphy) :)

Bom, até aqui tudo bem o SSH está configurado, agora só precisamos adicionar um usuário ao sistema a fim de que ele possa fazer o logon remotamente, para isso usaremos o seguinte comando:

$sudo adduser Juritovaldo

*Juritovaldo é o nome do usuário tá bem? Não me confundam Juritovaldo com comando ... hehehehe

Feito isso será pedido que insiras a senha para o usuário Juritovaldo, depois de digitar a senha será solicitada novamente, e logo em seguida serão solicitadas informações como nome completo e tudo mais, se quiser pode ir dando Enter até a hora em que ele porguntar se as informações acima estão corretas... ai é só dizer que sim :)

Bom, neste momento o Juritovaldo está em outro computador mas que pertence a mesma rede, através do prompt d Linux ele só tem que digitar:

$ssh [nome_do_usuario@ip_da_maquina_com_o_SSH]
Exemplo: $ssh Este endereço de e-mail está protegido de spam bots, pelo que necessita do Javascript activado para o visualizar

Ai será solicitada a senha para o Juritovaldo poder acessar o sistema remotamente.

Mas e no caso se o juritovaldo não estiver na mesma rede? E se ele estiver na Jamba e quiser se conectar ao computador do Hepotamedes que está em Luanda? Bom, neste caso teríamos que usar um [[NAT]] ([[Networ Address Translator]]}.

Espero poder ter ajudado a todos a melhor compreender o conceito de ssh.

Abraços,

By: Wanderley Ribeiro


Actualizado em ( Quarta, 06 Junho 2007 02:19 )
 

Recados

Latest Message: 1 month, 1 week ago
  • Benone Marco : eae
  • Patrício do : olá gente
  • Benone Marco : ...é só começar a usar :D
  • Benone Marco : para quem não entendeu, isso significa que todos os registrados no TiA têm direito a um blog próprio
  • Benone Marco : espero que todos gostem e passe a usar o blog
  • Benone Marco : ...ouvindo boa música...
  • Benone Marco : é sempre bom aproveitar o fds para fazer pequenas melhorias nos projetos...
  • Benone Marco : pronto. showtbox pro povo de novo :)
  • Benone Marco : test

Only registered users are allowed to post

Usuários Online

Ninguem Online

Gostou ? Compartilhe !

Adicione ao: JBookmarks Adicione ao: Facebook Adicione ao: Windows Live Adicione ao: Digg Adicione ao: Del.icoi.us Adicione ao: Reddit Adicione ao: StumbleUpon Adicione ao: Slashdot Adicione ao: Yahoo Adicione ao: Technorati Adicione ao: Google Information