Servidor OpenSSH

Introdução

This section of the Ubuntu Server Guide introduces a powerful collection of tools for the remote control of networked computers and transfer of data between networked computers, called OpenSSH. You will also learn about some of the configuration settings possible with the OpenSSH server application and how to change them on your Ubuntu system.

OpenSSH é uma versão disponível livremente da família de ferramentas do protocolo Secure Shell (SSH) para controlar um computador remotamente ou transferir arquivos entre computadores. Ferramentas tradicionais utilizadas para cumprir essas funções, como telnet ou rcp são inseguras e transmitem a senha de um usuário em texto puro quando utilizadas. O OpenSSH provê um servidor daemon e ferramentas de cliente para facilitar controle remoto e operações de transmissão de arquivo com segurança e criptografia, efetivamente substituindo ferramentas de legado.

O componete de servidor OpenSSH, sshd, observa constantemente conexões de clientes para qualquer das ferramentas do cliente. Quando uma requisição de conexão ocorre, sshd inicia a conexão correta dependendo do tipo de ferramenta de conexão do cliente. Por exemplo, se um computador remoto conecta-se por um cliente ssh, o servidor OpenSSH iniciará o controle remoto da sessão após autenticar. OpenSSH utiliza vários métodos de autentificação, incluindo senha simples, chave pública e tiquetes Kerberos.

Instalação

A instalação do servidor e cliente OpenSSH é simples, Para instalar o OpenSSH cliente no seu Ubuntu, use este comando no terminal:

sudo apt-get install openssh-client

Para instalar o OpenSSH servidor no seu Ubuntu, use este comando no terminal:

sudo apt-get install openssh-server

Configuração

Você pode configurar o comportamento padrão do servidor OpenSSH, sshd, editando o arquivo /etc/ssh/sshd_config. Para mais informação sobre as diretrizes de configuração usadas neste arquivo, você pode ver o manual apropriado com o seguinte comando, executado pela linha de comando:

man sshd_config

Existem muitas diretrizes no arquivo de configuração do sshd que controlam coisas como configurações de comunicação e modos de autenticação. Os seguintes são exemplos de diretrizes de configuração que podem ser modificados editando o arquivo /etc/ssh/ssh_config.

[Dica]

Antes de editar o arquivo de configuração, você deve fazer uma cópia do arquivo original e protegê-lo de escrita, para que você assim tenha os ajustes originais como uma referência e para reusar como necessário.

Copie o arquivo /etc/ssh/sshd_config e proteja-o contra sobrescrição com com seguinte comando, executado na linha de comando:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original
sudo chmod a-w /etc/ssh/sshd_config.original

Os seguintes são exemplos de diretrizes de configuração que você pode modificar:

  • Para ajustar seu OpenSSH para escutar na porta de TCP 2222 invés da porta de TCP padrão 22, modifique a diretriz Port da seguinte forma:

    Porta 2222

  • Para fazer o sshd aceitar acesso público à base de chaves credenciais, simplesmente adicione ou modifique a linha:

    PubkeyAuthentication yes

    no arquivo /etc/ssh/sshd_config, ou se já estiver presente, certifique-se que a linha não está comentada.

  • Para fazer o seu servidor OpenSSH exibir o conteúdo do arquivo /etc/issue.net como um aviso antes de conectar, simplesmente adicione ou modifique a linha:

    Banner /etc/issue.net

    no arquivo /etc/ssh/sshd_config.

Após realizar as auterações no arquivo /etc/ssh/sshd_config, salve o arquivo e reinicie o servidor de aplicações sshd para que as auterações tenham efeito. Para isto utilize o seguinte comando em um terminal:

sudo /etc/init.d/ssh restart

[Atenção]

Várias configurações adicionais de diretrizes do sshd estão disponíveis para auterar o comportamento do servidor de acordo com suas necessidades. Esteja ciente, no entanto, que se seu único método de acesso a um servidor é ssh e você comete um erro ao configurar o sshd via arquivo de configuração /etc/ssh/sshd_config, você pode torna-lo indisponível após reiniciar o servidor, ou esse servidor sshd pode recusar iniciar, devido a uma diretriz incorreta na configuração, então seja extremamente cuidadoso quando editar este arquivo num servidor remoto.

Referências

Web site OpenSSH

Página Wiki OpenSSH Avançado