Esta seção do Guia do Servidor Ubuntu introduz uma poderosa coleção de ferramentas para o controle remoto de computadores em rede e transferência de dados entre computadores em rede, chamada
OpenSSH . Você também vai aprender sobre algumas das configurações possíveis com a aplicação servidor OpenSSH e como alterá-las em seu sistema Ubuntu.
OpenSSH é uma versão livremente disponível do Seguro família de protocolo Shell (SSH) de ferramentas para controlar remotamente um computador ou a transferência de arquivos entre computadores. Ferramentas tradicionais utilizadas para realizar essas funções, tais como
telnet ou
rcp , são inseguras e transmitem a senha do usuário em texto puro quando usado.
OpenSSH fornece um daemon de servidor e ferramentas de cliente para facilitar o controle seguro, criptografado remoto e operações de transferência de arquivos, efetivamente substituindo as ferramentas antigas.
O componente de servidor OpenSSH,
sshd , escuta continuamente para conexões de cliente de qualquer das ferramentas de cliente. Quando um pedido de conexão ocorre,
sshd configura a conexão correta, dependendo do tipo de ferramenta de conexão cliente. Por exemplo, se o computador remoto está se conectando com o
ssh aplicativo cliente, o servidor OpenSSH-se uma sessão de controle remoto após a autenticação.
Se um usuário remoto se conecta a um servidor OpenSSH com
o scp , o daemon servidor OpenSSH inicia uma cópia segura de arquivos entre o servidor e o cliente após a autenticação. OpenSSH pode usar vários métodos de autenticação, incluindo senha simples, chave pública e
Kerberos bilhetes.
Instalação das aplicações cliente e servidor OpenSSH é simples. Para instalar os aplicativos cliente OpenSSH em seu sistema Ubuntu, use este comando em um prompt de terminal:
sudo apt-get install openssh-client
Para instalar o aplicativo de servidor OpenSSH, e os arquivos de suporte relacionados, use este comando em um terminal:
sudo apt-get install openssh-server
O
openssh-server pacote também pode ser selecionado para instalar durante o processo de instalação do Server Edition.
Você pode configurar o comportamento padrão do aplicativo de servidor OpenSSH, sshd , editando o arquivo / etc / ssh / sshd_config
. Para obter informações sobre as diretivas de configuração usadas neste arquivo, você pode ver a página do manual apropriado com o seguinte comando, executado em um prompt de terminal:
sshd_config homem
Há muitas diretrizes no sshd arquivo de configuração controlar coisas como configurações de comunicação e modos de autenticação. A seguir, são exemplos de diretivas de configuração que podem ser alteradas editando o arquivo / etc / ssh / sshd_config
arquivo.
![[Dica]](https://help.ubuntu.com/libs/admon/tip.png) | |
---|
Antes de editar o arquivo de configuração, você deve fazer uma cópia do arquivo original e protegê-lo de escrita, assim você terá os ajustes originais como uma referência e reutilizar se necessário. Copie o arquivo / etc / ssh / sshd_config arquivo e protegê-lo de escrever com os seguintes comandos, emitidos em um prompt de terminal: |
sudo cp / etc / ssh / sshd_config / etc / ssh / sshd_config.original
sudo chmod aw / etc / ssh / sshd_config.original
A seguir, são exemplos de diretrizes de configuração que você pode mudar:
- Para definir seu OpenSSH para escutar na porta TCP 2222 em vez do padrão a porta TCP 22, alterar a directiva Porto como tal:
Porto 2222 - Para ter o sshd permitir públicas credenciais baseadas em chaves de login, simplesmente adicione ou modifique a linha:
PubkeyAuthentication sim
No arquivo / etc / ssh / sshd_config
arquivo, ou se já estiver presente, garantir que a linha não está comentada. - Para fazer o seu servidor OpenSSH exibir o conteúdo do
arquivo / etc / issue.net
arquivo como um banner de pré-login, basta adicionar ou modificar a linha:
Bandeira / etc / issue.net
No arquivo / etc / ssh / sshd_config
arquivo.
Depois de fazer alterações no arquivo / etc / ssh / sshd_config
arquivo, salve o arquivo e reinicie o sshd aplicativo de servidor para efetuar as alterações usando o seguinte comando em um terminal:
sudo / etc / init.d / ssh restart
![[AVISO]](https://help.ubuntu.com/libs/admon/warning.png) | |
---|
Muitas outras diretivas de configuração para sshd estão disponíveis para alterar o comportamento do servidor para atender às suas necessidades. Esteja ciente, no entanto, se seu único método de acesso a um servidor é ssh , e você cometer um erro na configuração sshd através do arquivo / etc / ssh / sshd_config arquivo, você pode achar que você está trancado para fora do servidor no reiniciá-lo, ou que o sshd servidor se recusa a iniciar devido a uma diretiva de configuração incorreta, então seja extremamente cuidadoso ao editar este arquivo em um servidor remoto. |
SSH
chaves permitir a autenticação entre os dois exércitos, sem a necessidade de uma senha. Chave de autenticação SSH utiliza duas chaves de uma
privada e uma chave
pública chave.
Para gerar as chaves, a partir de um terminal digite:
ssh-keygen-t dsa
Isto vai gerar as chaves usando um
DSA identidade de autenticação do utilizador. Durante o processo, você será solicitado para uma senha. Basta bater
Enter quando solicitado a criar a chave.
Por padrão, o
público chave é guardada no arquivo
~ / .ssh / id_dsa.pub
, enquanto
~ / .ssh / id_dsa
é o
privadochave. Agora copie o
id_dsa.pub
arquivo para o host remoto e anexá-lo para
~ / .ssh / authorized_keys
, digitando:
ssh-copy-id username @ remotehost
Por fim, verifique as permissões no
authorized_keys
arquivo, somente o usuário autenticado deve ter permissões leitura e gravação. Se as permissões não estão corretas alterá-las:
chmod 600 .ssh / authorized_keys
Agora você deve ser capaz de SSH para o host sem ser solicitado para uma senha.