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 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.