Ferramentas de Usuário

Ferramentas de Site


pt:buster:config:remote_access:ssh_server

2.3.2 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 intercetadas por terceiros.

Instalação

<sxh bash; highlight: [1]> root@server:~# apt install openssh-server openssh-client </sxh>

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ço 192.168.1.100:

<sxh; highlight: [5]; title: /etc/ssh/sshd_config> #Port 22 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress :: ListenAddress 192.168.1.100

#[…] </sxh>

Também por segurança, o servidor SSH não permite o acesso remoto de root de forma interativa. Assim, para adquirir privilégios de root, deverá ser efetuado o login como utilizado não privilegiado e em seguida adquirir privilégios de root. Deste modo a password de root não está sujeita a um ataque de força bruta.

<sxh; highlight: [6-7]; title: /etc/ssh/sshd_config> #[…]

# Authentication:

#LoginGraceTime 2m #PermitRootLogin yes PermitRootLogin no

#[…] </sxh>

Verificar também que não são permitidos logins com passwords vazias:

<sxh; highlight: [3]; title: /etc/ssh/sshd_config> #[…]

#PermitEmptyPasswords no

#[…] </sxh>

Permitir que os utilizadores efetuarem logins com as suas passwords:

<sxh; highlight: [3]; title: /etc/ssh/sshd_config> #[…]

PasswordAuthentication yes

#[…] </sxh>

Verificar o ficheiro de configuração:

<sxh bash; highlight: [1]> root@server:~# sshd -t root@server:~# </sxh>

Reiniciar o serviço:

<sxh bash; highlight: [1]> root@server:~# systemctl restart ssh </sxh>

Verificação

Clientes Linux

Deverá agora ser possível estabelecer uma ligação ssh ao endereço 192.168.1.100.

A primeira vez que essa ligação for efetuada deve ser confirmada a autenticidade do servidor, uma vez que este ainda não consta na lista dos sistemas conhecidos do cliente.

<sxh bash; highlight: [1,4,6,15]> fribeiro@laptop:~$ ssh fribeiro@192.168.1.100 The authenticity of host '192.168.56.101 (192.168.56.101)' can`t be established. ECDSA key fingerprint is SHA256:eC0Wva7QKqCiy5imegiPv/NxfCup3Dmjm1n4aB3LH2I. 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 buster 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2 (2017-06-12) x86_64

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. fribeiro@server:~$ logout Connection to 192.168.1.100 closed. fribeiro@laptop:~$ </sxh>

E ligações com o login root não serão aceites:

<sxh bash; highlight: [1-2,4,6]> fribeiro@laptop:~$ ssh 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). fribeiro@laptop:~$ </sxh>

Clientes Windows

O acesso a partir de clientes Windows é possível com um programa emulador de terminal com suporte ssh, como o Putty:

Sessão remota via ssh com o putty

Obter privilégios de root

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:

<sxh bash; highlight: [1-2,10-11]> fribeiro@laptop:~$ ssh 192.168.1.100 fribeiro@192.168.1.100´s password:

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. fribeiro@server:~$ su - root Password: root@server:~#

</sxh>

Referências

pt/buster/config/remote_access/ssh_server.txt · Última modificação em: 2020-08-02 20:10 (edição externa)

Excepto menção em contrário, o conteúdo neste wiki está sob a seguinte licença: CC Attribution-Noncommercial-Share Alike 4.0 International
CC Attribution-Noncommercial-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki