Você está na página 1de 24

TELNET E SSH

Christian Frana
Josiane Dalmasio
Midra Sian Liberato
TELNET

O servio telnet oferece o login remoto em


seu computador, que lhe permite trabalhar
conectado a distncia como se estivesse em
frente a ela. Ele substitui o rlogin e possui
muitas melhorias em relao a ele, como o
controle de acesso, personalizao de seo
e controle de terminal.
TELNET - Caractersticas

Conexo rpida (no utiliza transmisso de dados


criptografada), recomendado para ambientes
seguros.
Possui uma verso com suporte a criptografia via ssl.
Possui controle de acesso tcpd (usando
/etc/hosts.allow e /etc/hosts.deny).
A maioria dos sistemas operacionais trazem este
utilitrio por padro como sistema de acesso remoto
a mquinas UNIX.
Suporte a terminais ANSI (cores e cdigos de escape
especiais para o console) e uma grande variedade de
outros terminais.
TELNET Ficha Tcnica
Pacotes:

telnet - Cliente telnet com suporte a autenticao.


telnetd - Servidor telnet com suporte a autenticao.
telnet-ssl - Cliente telnet com suporte a autenticao
e ssl. Tambm suporta conexo a servidores telnet
padro quando o servidor no suporta ssl. Por
padro tentada a conexo usando ssl, se esta
falhar ser assumida a transmisso em texto plano.
telnetd-ssl - Servidor telnet com suporte a
autenticao e ssl. Tambm suporta conexo de
clientes telnet padro (sem suporte a ssl).
TELNET Ficha Tcnica

Utilitrios:

in.telnetd - Servidor telnet


telnet - Cliente telnet padro (quando o
pacote telnet-ssl est instalado,
simplesmente um link para telnet-ssl).
telnet-ssl - Cliente telnet com suporte a ssl.
TELNET Requerimentos de Hardware

Normalmente o servidor telnet carregado


via inetd, o que permite sua utilizao em
uma mquina com a quantidade mnima de
memria RAM requerida para o
funcionamento do kernel: 2 MB para kernels
da srie 2.2 e 4MB para kernels da srie 2.4.
Arquivos de log criados pelo servidor telnet

Mensagens do servidor telnet relacionadas


com sees so enviadas para
/var/log/daemon.log. Adicionalmente, as
mensagens sobre autenticao (servios de
login) so registradas pelos mdulos PAM
em /var/log/auth.log.
TELNET - Instalao
apt-get install telnet telnetd ou apt-get install telnet-ssl telnetd-
ssl.
Os pacotes com o -ssl no final possuem suporte a criptografia
ssl. Por padro a porta usada para executar o servio telnet a
23 (ou outro nmero de porta definido no /etc/services). A
instalao do servidor telnet feita via inetd (no arquivo
/etc/inetd.conf) e o controle de acesso ao servio feito atravs
dos arquivos /etc/hosts.allow e /etc/hosts.deny (veja Servios
iniciados atravs do inetd, Seo 4.7.2 e O mecanismo de
controle de acessos tcpd, Seo 4.8.3).
O servidor tem o nome in.telnetd e este dever ser usado para
ajustar o controle de acesso nos arquivos acima.
Iniciando o servidor /reiniciando/
recarregando a configurao
O arquivo que controla o funcionamento do
servidor telnet o /etc/inetd.conf e o controle
de acesso sendo feito pelos arquivos
/etc/hosts.allow e /etc/hosts.deny. Ser
necessrio reiniciar o servidor inetd caso
algum destes trs arquivos seja modificado:
killall -HUP inetd. A porta de operao
padro a 23 e pode ser modificada no
arquivo /etc/services.
Fazendo conexes ao servidor telnet
Use o comando: telnet [endereo] [porta] para realizar
conexes com uma mquina rodando o servidor
telnet.
Adicionalmente as seguintes opes podem ser
usadas:
-l [usuario] - Envia o nome de usurio ao
computador remoto. Muito til com o telnet-ssl.
-E - Desativa o caracter de escape
-a - Tenta fazer o login automtico usando o nome
de usurio local. Se o login falhar, ser solicitado o
nome de usurio. Esta opo usada por padro
com o cliente telnet-ssl.
-r - Emula o comportamento do programa rlogin.
SSH

O SSH (Secure SHell) ao mesmo tempo um


protocolo e uma aplicao para acesso remoto. Os
protocolos foram desenvolvidos em 1995 por Tatu
Ylonen, fundador da empresa SSH Communications
Security. O conjunto permaneceu livre at a sua
verso 1.2.12, quando se tornou um produto
proprietrio desta empresa. Foi desta verso que se
originou o aplicativo OpenSSH (uma implementao
destes protocolos e vrias ferramentas auxiliares),
em 1999. Existem tambm vrias outras opes
comerciais de implementao do SSH porm, por
ser livre, o OpenSSH a mais popular.
SSH
Desenvolvido com a segurana em mente desde o princpio do
projeto. Como conseqncia, ele capaz de proteger o host de
ataques de IP spoofing, IP source routing e DNS spoof.
Basicamente, o atacante s consegue fazer com que o servio
seja interrompido, ele no capaz de tomar conta da seo (e
consequentemente da mquina) que est utilizando o software.
Todo o trfego transmitido por uma conexo SSH (as senhas e
todo o contedo, como um arquivo sendo transmitido entre os
hosts) fortemente criptografado, sendo virtualmente impossvel
para um atacante sniffar e conseguir ler as mensagens trocadas
entre os participantes da conexo (pelo menos em tempo hbil
para que aquele contedo decifrado seja de alguma utilidade
para ele).
OpenSSH
OpenSSH uma verso livre do protocolo Secure
Shell (SSH) e da famlia de ferramentas para controlar
remotamente um computador ou transferir ficheiros
entre computadores.
Substitui ferramentas tradicionais para executar essas
funes, tais como telnet ou rcp, pois so inseguras e
transmitem as palavras passe dos utilizadores em
texto simples quando utilizadas.
Fornece um servio para o servidor e ferramentas
cliente para facilitar um controle remoto seguro,
codificado e operaes de transferncia de ficheiros,
substituindo efetivamente as ferramentas padro.
OpenSSH
O componente sshd do servidor OpenSSH, aguarda
continuamente ligaes de qualquer das ferramentas dos
clientes.
Quando um pedido de ligao ocorre, o sshd configura a
ligao correta dependendo do tipo de ferramenta do
cliente que est a ligar. Por exemplo, se o computador
remoto se est a ligar com a aplicao cliente ssh, o
processo do servidor OpenSSH inicia uma ligao de
controle remoto aps a autenticao.
Se o utilizador remoto usa uma aplicao rcp o processo
do servidor OpenSSH inicia uma cpia segura dos ficheiros
entre o servidor e o cliente aps a autenticao. O
OpenSSH pode utilizar vrios mtodos de autenticao,
incluindo palavras passe simples, chaves pblicas e
senhas Kerberos.
OpenSSH - Instalao

Instalao cliente OpenSSH:


# sudo apt-get install openssh-client

Instalao servidor OpenSSH:


# sudo apt-get install openssh-server
SSH - Configurao
Pode alterar o comportamento predefinido da
aplicao servidor OpenSSH, sshd, editando
o ficheiro /etc/ssh/sshd_config. Para
informaes sobre as directivas de
configurao usadas neste ficheiro, pode
consultar a pgina de manual apropriada
com o seguinte comando, executado num
terminal:
# man sshd_config
SSH - Configurao

Existem muitas directivas no ficheiro de configurao do


sshd controlando coisas como as configuraes das
comunicaes e os modos de autenticao. De seguida
apresentam-se exemplos de directivas de configurao que
podem ser alteradas ao editar o ficheiro /etc/ssh/ssh_config.

# sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original


# sudo chmod a-w /etc/ssh/sshd_config.original
SSH - Configurao
A seguir apresentam-se exemplos de directivas que pode alterar:
Para ajustar o OpenSSH para aceitar pedidos (escutar) o
protocolo TCP na porta 2222, em vez da porta por omisso TPC
porta 22, altere a directiva Port como se segue:
Port 2222

Para fazer com que o sshd permita credenciais de login


baseadas em chaves pblicas, adicione simplesmente a linha
seguinte:
PubkeyAuthentication yes
SSH - Configurao
No ficheiro /etc/ssh/sshd_config, ou se a linha j estiver presente
assegure-se de que no est comentada.
Para fazer com que o seu servidor OpenSSH mostre o contedo
do ficheiro /etc/issue.net como uma mensagem de pr-login,
adicione simplesmente ou modifique a seguinte linha no ficheiro
/etc/ssh/sshd_config.
Banner /etc/issue.net

Aps a marcao de alteraes no ficheiro /etc/ssh/sshd_config,


grave o ficheiro e reinicie a aplicao servidor sshd para tornar
efectivas as alteraes utilizando o comando seguinte num
terminal:

# sudo /etc/init.d/ssh restart


Simplificando tarefas com o SSH

Partindo do ponto que seu servidor de hospedagem


tem acesso por SSH, vamos aprender a us-lo:
Para quem utiliza Linux, basta abrir a linha de
comando e digitar ssh nome_do_host, j para
usurios de Windows, ser necessrio instalar um
cliente (recomendo o PuTTY, basta efetuar o
download e instal-lo). Quando iniciar o PuTTY
aparecero as inmeras configuraes, onde
geralmente s preciso indicar o Host Name e
ento clicar em Open.
Simplificando tarefas com o SSH

Logo em seguida ser aberta uma janela


com linha de comando onde ser perguntado
seu nome de usurio (login) e a respectiva
senha.
Agora divirta-se, voc est conectado!

Legal, mas se eu j uso um cliente de FTP,


para que precisaria de outro de SSH?
Simplificando tarefas com o SSH
Existem operaes que podem economizar uma
quantidade incalculvel de tempo se realizadas com
alguns simples comandos por SSH. Imagine as
seguintes situaes em seu cotidiano:

necessrio realizar operaes em massa como


renomear todos os arquivos de uma pasta, e agora?
Voc pode renomear todos manualmente, ou usar a
cabea e digitar no SSH algo como for arq to *.JPG;
do mv $arq ${arq/.JPG/.jpg};done (nesse caso todos
os arquivos com a extenso .JPG so modificados
para .jpg, mas as possibilidades so infinitas).
Simplificando tarefas com o SSH

Agora o desafio criar um pacote de backup


com todos os seus arquivos, voc pode
baixar todos eles separadamente,
compacat-los usando seu programa favorito
e ento enviar novamente por FTP. Mas
muito mais fcil conectar remotamente em
seu servidor e executar zip -r backup.zip
diretorio, voc tem ento seu arquivo
backup.zip com todos os arquivos contidos
na pasta diretorio.
Simplificando tarefas com o SSH

Essa vem do blog do Elcio, no artigo Quem tem


medo do terminal?. Suponhamos que voc precise
copiar uma pasta chamada site para sitenovo,
para ento trabalhar de maneira segura na nova
verso de seu site. Voc vai baixar todos os
arquivos para sua mquina (igualmente ao exemplo
anterior), renomear a pasta e ento envi-los de
volta? No complique! Basta um simples comando:
cp -r site sitenovo. Muito mais simples, no?
Citei apenas trs exemplos, mas as possibilidades
so infinitas e o tempo economizado
incontestvel. No tenha medo do terminal, e
aproveite o que ele tem a oferecer.