Você está na página 1de 6

Professor Gustavo Dias

1
O Protocolo SSH
O protocolo SSH (abreviatura de Secure SHell) é um protocolo de comunicações que
encripta todos os dados trocados, tornando virtualmente impossível a violação da
privacidade da comunicação.
O protocolo SSH é extremamente versátil, existindo atualmente software cliente que
possibilita o acesso à linha de comandos, transferência de ficheiros e criação de túneis
seguros como suportes de comunicações para outros protocolos.
Clientes SSH
Os clientes SSH dividem-se em 2 grandes grupos:
 Terminal SSH: Emulador de terminal que permite aceder remotamente à linha de
comandos, utilizando o protocolo SSH.
 Cliente SFTP: Aplicação cliente para transferência de ficheiros que utiliza o Protocolo
de Transferência Segura de Ficheiros (Secure File Transfer Protocol (SFTP))
Clientes Linux
 openssh-client (http://packages.debian.org/stable/net/openssh-client)
Pacote de software que fornece utilitários para acesso remoto (cliente ssh), cópia
segura de ficheiros (scp) e transferência segura de ficheiros (sftp), entre outros.
 FileZilla (http://filezilla-project.org)
Cliente SFTP.
Clientes Windows
 PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty)
Terminal SSH.
 WinSCP (http://winscp.net/eng/index.php)
Cliente SFTP.
 FileZilla (http://filezilla-project.org)
Cliente SFTP.
Professor Gustavo Dias
2
Referências
 OpenSSH (http://www.openssh.com/)
 Wikipedia: SSH (http://pt.wikipedia.org/wiki/SSH)

Servidor Ssh
Regra geral não se deve aceder fisicamente a um servidor a não ser por razões
excecionais (atualização ou reparação de hardware, por exemplo). A melhor maneira de
gerir um servidor é remotamente. No entanto, esse acesso dever ser feito utilizando um
protocolo seguro para garantir que as comunicações não serão interceptadas por
terceiros.
Instalação
root@server:~# aptitude install openssh-server openssh-client
Configuração
Todas as configurações do servidor SSH estão no ficheiro /etc/ssh/sshd_config.
Indicar os endereços onde o serviço responde. Neste caso serão aceites ligações apenas
no endereço192.168.1.100, através da porta 22 e utilizando a versão 2 do protocolo SSH:
/etc/ssh/sshd_config
# Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
Professor Gustavo Dias
3
#ListenAddress 0.0.0.0
ListenAddress 192.168.1.100
Protocol 2

#[...]
Por segurança, desativar o login como root. Assim, para adquirir privilégios de root,
deverá ser efetuado ologin como utilizado não privilegiado e, posteriormente, adquirir
privilégios de root. Deste modo a passwordde root não está sujeita a um ataque de força
bruta.
/etc/ssh/sshd_config
#[...]

# Authentication:
LoginGraceTime 120
PermitRootLogin no
StrictModes yes

#[...]
Verificar também que não são permitidos logins com passwords vazias:
/etc/ssh/sshd_config
#[...]

# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no
Professor Gustavo Dias
4

#[...]
Reiniciar o serviço:
root@server:~# /etc/init.d/ssh restart
Verificação
Clientes Linux
Deverá ser possível estabelecer uma ligação ssh ao endereço 192.168.1.100.
A primeira vez que essa ligação for efetuada, deverá ser confirmada a ligação, uma vez
que o servidor não consta na lista dos sistemas conhecidos do cliente.
fribeiro@laptop:~$ ssh 192.168.1.100
The authenticity of host '192.168.1.100 (192.168.1.100)' can't be established.
ECDSA key fingerprint is 98:c1:0a:ae:2b:h4:1c:5c:39:10:de:a4:47:5c:d9:83.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.100' (ECDSA) to the list of known hosts.
fribeiro@192.168.1.100's password:
Linux server 3.2.0-4-686-pae #1 SMP Debian 3.2.41-2 i686

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sun May 5 21:21:58 2013 from laptop.home.lan
Professor Gustavo Dias
5

fribeiro@server:~$ logout
Connection to 192.168.1.100 closed.
fribeiro@laptop:~$
E ligações com o login root não serão aceites:
fribeiro@laptop:~$ ssh -l root 192.168.1.100
root@192.168.1.100's password:
Permission denied, please try again.
root@192.168.1.100's password:
Permission denied, please try again.
root@192.168.1.100's password:
Permission denied (publickey,password).
Clientes Windows
O acesso a partir de clientes Windows é possível com um programa emulador de
terminal com suporte ssh, como o Putty:

Obter privilégios de root
Professor Gustavo Dias
6
Uma vez que o login como root está desligado, o modo de obter privilégios de root numa
ligação ssh é através de um utilizado comum e em seguida escalar os privilégios com o
comando su:
fribeiro@laptop:~$ ssh 192.168.1.100
fribeiro@192.168.1.100's password:
inux server 3.2.0-4-686-pae #1 SMP Debian 3.2.41-2 i686

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed Oct 27 21:48:09 2013 from laptop.home.lan
fribeiro@server:~$ su - root
Password:
root@server:~#
Referências
 Referência Debian, 6.9. O servidor de acesso remoto e utilitário (SSH)
(http://www.debian.org/doc/manuals/reference/ch06.pt.html#_the_remote_acce
ss_server_and_utility_ssh)
 OpenSSH (http://www.openssh.com/)
FONTE
http://www.servidordebian.org/pt/wheezy/config/remote_access/ssh_server
http://www.servidordebian.org/pt/wheezy/config/remote_access/ssh_protocol