O gerenciamento de servidores continua sendo uma tarefa necessária e ocasionalmente incômoda. É especialmente difícil com servidores remotos ou servidores headless. Felizmente, há Secure Shell (SSH). O Secure Shell é um protocolo de rede que permite que os serviços de rede sejam executados em uma rede desprotegida.
O SSH possui uma tonelada de funcionalidade. Há uma razão pela qual é um recurso para o gerenciamento de servidores remotos. Aprenda a gerenciar remotamente um servidor Linux via SSH, desde a conexão até a instalação de software e transferências de arquivos.
O que é o SSH?
SSH significa Secure Shell. É um protocolo de rede criptográfica. Usando o SSH, você pode obter acesso ao terminal e executar várias funções de linha de comando. Há também meios de gerenciar um servidor Linux com acesso gráfico. Isso é realmente útil para transferências de arquivos, especialmente quando você não quer ou não consegue se lembrar de um caminho de arquivo exato.
Ao usar o SSH para gerenciar um servidor Linux remoto, você precisará de alguns itens. Primeiro, você precisará preparar seu servidor para aceitar conexões SSH. Nos dispositivos dos quais você fará a conexão, você precisará de algum tipo de software SSH. Para entrar em um servidor com SSH, você precisará saber o endereço IP do servidor. No entanto, o login via SSH com um endereço IP só funciona se você estiver na mesma rede local que o servidor. Se você estiver fora da sua rede, poderá configurar uma porta para acessar um servidor com SSH de qualquer lugar. Você pode aprender mais sobre o SSH neste guia de iniciantes para configurar o SSH no Linux Guia para Iniciantes Configurando o SSH no Linux e testando sua configuração Guia para iniciantes Configurando o SSH no Linux e testando sua configuração Indiscutivelmente um dos utilitários Linux mais importantes a aprender é o SSH, pois você pode controlar uma máquina diferente como se estivesse sentado diretamente nela. Nós vamos levá-lo através de uma instalação básica. Consulte Mais informação .
Preparando seu servidor para aceitar o SSH
Antes de começar a gerenciar seu servidor Linux via SSH, você terá que preparar seu servidor para permitir conexões SSH. Eu tenho um servidor de mídia Plex dedicado sem cabeça. Na falta de um monitor e periféricos, eu uso o SSH para gerenciar meu servidor. Ao instalar ou atualizar o software e transferir arquivos, simplesmente conecto o SSH ao meu servidor. Minha configuração exata é um ThinkServer TS140 executando o Ubuntu 16.04 LTS. Dependendo do seu hardware e distribuição Linux, a preparação para o SSH pode variar um pouco.
Para preparar seu servidor Linux para aceitar conexões de entrada, você precisará instalar uma ferramenta de login remoto para o protocolo SSH. Um dos mais comuns é o OpenSSH. Nas distribuições baseadas no Debian, o OpenSSH está disponível através dos repositórios principais. Abra um novo terminal ( Ctrl + Alt + T ) e digite o seguinte comando:
sudo apt-get update
Isso realiza uma atualização e garante que você tenha os repositórios mais recentes. Antes de prosseguir para instalar o OpenSSH, verifique também se há atualizações. Em um terminal, execute:
sudo apt-get upgrade
Depois de atualizar e atualizar, abra uma nova linha de comando e digite:
sudo apt-get install openssh-server
Configurando as configurações do SSH do seu servidor
Depois que o SSH aberto for instalado no lado do servidor, você poderá editar as informações básicas de configuração. Puxe um terminal novo e insira a seguinte string para abrir o arquivo de configuração do SSH:
sudo nano /etc/ssh/sshd_config
Aqui você pode especificar várias configurações. Por padrão, seu servidor SSH operará na porta 22. Assim, por exemplo, você pode alterar manualmente a porta de 22 para uma porta de sua escolha. Além disso, você pode aumentar a segurança inserindo um número de login máximo. Em Porta, localize a linha MaxAuthTries. Você pode inserir qualquer número aqui. Então, para fazer uma contagem máxima de tentativas de login de quatro, digite:
MaxAuthTries 4
Depois de instalar o OpenSSH, o servidor SSH deve estar em execução. Mas para verificar, basta abrir um terminal e executar:
sudo service ssh status
Isso deve retornar uma mensagem informando que o SSH está ativado. Para iniciar o SSH, abra uma linha de comando e digite:
sudo service ssh start
E para impedir que o SSH seja executado, execute:
sudo service ssh stop
Acessando remotamente um servidor Linux via SSH
Agora que o SSH está instalado e em execução, você pode se conectar remotamente. Se você estiver logando em um servidor Linux remotamente, você precisará do endereço IP do servidor. Este deve ser 192.168.0.x. Armado com o endereço IP do servidor Linux, você também precisará de um meio de efetuar login via SSH a partir de uma máquina diferente. Existem vários métodos para efetuar login remotamente com o SSH.
Usando o SSH em sistemas operacionais baseados em Unix
Se você estiver usando um sistema baseado em Unix, como Linux, macOS ou FreeBSD, o SSH estará disponível na linha de comando. Em um terminal, execute:
ssh [remote host]
… Onde [host remoto] é o endereço IP que você está acessando. Se o seu nome de usuário for diferente no sistema remoto, você pode especificar o nome de usuário exato digitando:
ssh [remote username]@[remote host]
Depois de entrar, você será perguntado se deseja continuar se conectando. Então você será solicitado a digitar seu nome de usuário e, em seguida, pediu sua senha.
Alternativamente, se você quiser pular a linha de comando completamente, você pode entrar em seu servidor Linux através da rede. Em uma máquina Linux, navegue até Conectar ao Servidor e insira seu ssh: // [endereço IP] . Você será solicitado a fornecer seu nome de usuário e senha.
A principal vantagem deste método é que você terá navegação completa em pastas gráficas. Isso é chamado de protocolo de transferência de arquivos SSH ou SFTP. Isso facilita muito as transferências de arquivos. Como meu servidor Linux é um servidor Plex dedicado, a menos que eu esteja executando atualizações, geralmente uso SFTP.
SSH com PuTTY
Se você estiver usando um PC ou Mac, precisará de um cliente SSH. O PuTTY é provavelmente o cliente SSH mais conhecido. Instale o PuTTY no seu PC, macOS ou máquina Linux. Com o PuTTY aberto, procure em Sessão e, na caixa Nome do Host, digite seu endereço IP. Certifique-se de especificar a porta correta. Se estiver usando o padrão, deixe isso como 22.
Agora você deve ver um terminal com um prompt de login. Digite seu nome de usuário do servidor Linux aqui.
Depois de inserir seu nome de usuário, você será solicitado a fornecer uma senha se tiver seu servidor Linux protegido por senha. Digite isso e você verá uma mensagem de boas vindas com informações sobre o seu sistema e uma linha de comando, como você veria no seu servidor Linux.
Clientes SSH alternativos
Embora o PuTTY continue sendo o cliente SSH mais popular, existem muitas alternativas. Minha melhor escolha é o Bitvise (somente Windows). O motivo? Inclui não apenas a interface de linha de comando para gerenciar remotamente um servidor Linux via SSH, mas também recursos de SFTP. Assim, é perfeito para transferências de arquivos e gerenciamento geral. Quando eu preciso simplesmente atualizar ou executar uma reinicialização, eu uso o Bitvise SSH Client para acesso à linha de comando. Mas para transferências de arquivos, eu uso a interface gráfica.
Assim como com o PuTTY ou o SSH inicial por meio da linha de comando no Linux, você precisará inserir seu endereço IP, nome de usuário e senha.
Você receberá um aviso perguntando se deseja aceitar a sessão. Você pode aceitar apenas para essa sessão ou salvar para uso futuro. Depois disso, você será solicitado a inserir a senha do seu servidor Linux que você está gerenciando remotamente.
Ligue isso e o Bitvise abrirá uma linha de comando e uma janela gráfica do SSH.
A janela SFTP torna o gerenciamento de transferências de arquivos muito simples, além da tradicional linha de comando SSH para muitas funcionalidades.
Como você pode gerenciar um servidor Linux remoto com SSH
Certo, ótimo! O SSH é configurado no servidor e no dispositivo que você usará para gerenciar seu servidor. Então, o que você pode realmente fazer? Qualquer coisa que seja possível com a linha de comando do Linux. Algumas tarefas comuns que você pode executar são instalações de software, atualizações, reinicializações, copiar arquivos e até executar aplicativos GUI. Por exemplo, você pode copiar arquivos com os seguintes comandos:
scp [remote host]:[local file] [destination directory]
scp [local file] [remote host]:[destination directory]
Instalar o software significa apenas ligar o comando adequado. Quando eu instalei o Plex no meu TS140 sem cabeça via SSH, por exemplo, eu simplesmente entrei:
sudo apt-get install plexmedia server -y
Da mesma forma, para criar um servidor WordPress, basta seguir os detalhes da instalação, mas por meio de uma linha de comando SSH.
O que você faz provavelmente depende do servidor e do que é usado. À medida que executo um servidor Plex dedicado sem cabeçalho, a maioria do que eu uso SSH e SFTP é para transferências de arquivos com atualizações ocasionais de software. Eu também usei o SSH para acessar arquivos de log e executar benchmarks para testar o desempenho da CPU. Se você estiver executando um servidor web, você pode querer fazer backup de seu site usando a linha de comando SSH Como fazer backup do seu site através da linha de comando SSH Como fazer backup do seu site através da linha de comando SSH Fazer backup do seu site ou blog pode ser caro e tarefa árdua, exigindo uma variedade de plugins, ou planos adicionais do seu provedor de hospedagem - mas não precisa ser realmente. Se você tiver SSH ... Leia Mais. Confira esta cartilha rápida para a linha de comando do Linux Um guia rápido para começar com a linha de comando do Linux Um guia rápido para começar com a linha de comando do Linux Você pode fazer muitas coisas incríveis com comandos no Linux e não é difícil de aprender . Leia mais, bem como estes três sites para ajudá-lo a evoluir para um mestre de linha de comando do Linux Top sites e livros para transformá-lo em um herói de linha de comando do Linux Top sites e livros para transformá-lo em um herói de linha de comando do Linux uma ferramenta extremamente poderosa - mas também pode ser intimidante. Use esses sites e livros para lidar com isso. Consulte Mais informação .
SSH: Encontrando o controle remoto
Se você estiver executando um servidor Linux, o SSH é um excelente meio de gerenciá-lo remotamente. Você mantém o controle total da linha de comando e pode até executar aplicativos GUI e realizar transferências de arquivos. Existem possibilidades quase ilimitadas para o que você pode realizar ao gerenciar um servidor Linux remoto via SSH. Você pode configurar um servidor de arquivos, servidor de mídia, servidor de jogos Linux Tudo o que você precisa para construir um servidor de jogos no Linux Tudo que você precisa para criar um servidor de jogos no Linux Desde o início, os jogos quase sempre foram mais divertidos prática que se mudou online. Para sediar um torneio online, você precisará configurar seu próprio servidor de jogo, usando o Linux. Leia mais e muito mais. Você pode até gerenciar um Raspberry Pi sem cabeça Configurando seu Raspberry Pi para uso sem cabeça com SSH Configurando seu Raspberry Pi para uso sem cabeça com SSH O Raspberry Pi pode aceitar comandos SSH quando conectado a uma rede local (por Ethernet ou Wi-Fi), permitindo que você configure facilmente. Os benefícios do SSH vão além de perturbar a triagem diária ... Leia Mais servidor usando SSH. Além do mais, muitos programas clientes SSH são multi-plataforma.
Como você está usando o SSH e que tipo de servidor você está gerenciando?