Proteger um VPS
Informações sobre a tradução
Esta tradução foi automaticamente gerada pelo nosso parceiro SYSTRAN. Em certos casos, poderão ocorrer formulações imprecisas, como por exemplo nomes de botões ou detalhes técnicos. Recomendamos que consulte a versão inglesa ou francesa do manual, caso tenha alguma dúvida. Se nos quiser ajudar a melhorar esta tradução, clique em "Contribuir" nesta página.
Objetivo
Quando encomendar o seu VPS, pode escolher uma distribuição ou um sistema operativo a pré-instalar. O servidor está pronto para ser utilizado após a entrega. No entanto, cabe-lhe a si, enquanto administrador, implementar medidas que garantam a segurança e a estabilidade do seu sistema.
Este manual fornece-lhe alguns conselhos gerais para proteger um servidor baseado em GNU/Linux.
A OVHcloud fornece-lhe serviços pelos quais é responsável em termos de configuração e gestão. Assim, é responsável pelo seu bom funcionamento.
Se encontrar dificuldades para realizar estas ações, contacte um fornecedor de serviços especializado e/ou discuta o problema com a nossa comunidade de utilizadores em https://community.ovh.com/en/. A OVHcloud não lhe pode fornecer apoio técnico a este respeito.
Requisitos
- Um VPS na sua conta OVHcloud
- Ter acesso de administrador (sudo) ao seu servidor através de SSH
Instruções
Tenha em conta que se trata de um guia geral baseado nos sistemas operativos Ubuntu, Debian e CentOS. Algumas encomendas precisam de ser adaptadas à distribuição que utiliza e certos truques convidam-no a utilizar ferramentas de terceiros. Consulte a documentação oficial destas aplicações caso necessite de ajuda.
Se configurar o primeiro VPS da OVHcloud, recomendamos que consulte primeiro o nosso manual sobre a implementação de um VPS.
Os exemplos abaixo pressupõem que está ligado enquanto utilizador com autorizações elevadas.
Índice:
- Atualizar o sistema operativo
- Criar e utilizar uma chave SSH
- Modificar a porta de escuta SSH
- Criar um utilizador com direitos restritos
- Configurar firewall interna (iptables)
- Instalar o Fail2ban
- Configuração da Network Firewall OVHcloud
- Proteger o sistema e os dados
Atualizar o sistema operativo
Os programadores de distribuições e de sistemas operativos propõem atualizações frequentes de pacotes, muitas vezes por razões de segurança.
Assegurar a atualização da sua distribuição ou sistema operativo é um ponto essencial para proteger o seu VPS.
Esta atualização será realizada em duas etapas:
- Atualização da lista dos pacotes:
- Atualização dos pacotes reais:
O comando é idêntico ao Ubuntu porque Debian e Ubuntu utilizam o apt.
No CentOS, o comando de atualização do sistema operativo utiliza yum or dnf, conforme a versão.
Esta operação deve ser efetuada regularmente para manter um sistema atualizado.
Criar e utilizar uma chave SSH
A autenticação com chave SSH é uma das formas mais eficazes de proteger o acesso ao seu VPS.
Ao contrário da autenticação com palavra-passe, esta baseia-se num par de chaves criptográficas e permite reduzir significativamente os riscos de ataques por força bruta.
Recomendamos vivamente que configure uma chave SSH logo na primeira ligação ao seu servidor e que depois prefira esta metodologia para os seus acessos de administrador.
Consoante o seu ambiente e a ferramenta utilizada para se ligar ao seu VPS, consulte um dos seguintes guias:
- Como criar e utilizar chaves de autenticação para ligações SSH aos servidores OVHcloud
- Tutorial - Como utilizar o PuTTY para ligações SSH e autenticação
Estes guias detalham as etapas para:
- gerar um par de chaves SSH;
- implementar a chave pública no seu servidor;
- ligar-se de forma segura através de SSH.
Depois de configurada e funcional a autenticação com chave SSH, pode ir mais longe reforçando a configuração do serviço SSH, por exemplo alterando a porta de escuta ou desativando a autenticação com palavra-passe.
Modificar a porta de escuta SSH
Antes de qualquer modificação do serviço SSH, certifique-se de ter um acesso funcional através de uma chave SSH para evitar a perda de acesso ao seu servidor.
Para esta secção, as seguintes linhas de comando são as mesmas para Ubuntu, Debian e CentOS.
Uma das primeiras ações a realizar no seu servidor é a configuração da porta de escuta do serviço SSH. Por predefinição, este é definido na porta 22, pelo que as tentativas de hack do servidor por robots vão direcionar esta porta prioritariamente. A alteração deste parâmetro, em benefício de uma porta diferente, é uma medida simples para reforçar a proteção do seu servidor contra ataques automatizados.
Para isso, altere o ficheiro de configuração do serviço com o editor de texto à sua escolha (nano é utilizado neste exemplo):
Deve encontrar as seguintes linhas ou equivalentes:
Substitua o número 22 pelo número de porta à sua escolha.
No entanto, certifique-se de que não indica um número de porta já utilizado no seu sistema.
Para uma maior segurança, utilize um número entre 49152 e 65535.
Você também pode visualizar as portas atribuídas ao seu sistema usando o seguinte comando:
Se a linha estiver "comentada" (ou seja, precedida por um "#") como no exemplo acima, certifique-se de que remove o "#" antes de guardar o ficheiro para que a alteração seja tida em conta. Exemplo:
Se estiver configurado um firewall no seu sistema operativo (UFW ou iptables), terá de ajustar as suas definições para autorizar o tráfego na nova porta antes de reiniciar o serviço. Se estiver a utilizar o iptables, consulte este guia: Configurar a firewall em Linux com iptables. Se não estiver configurado nenhum firewall por predefinição, reinicie o serviço.
Guarde e saia do ficheiro de configuração.
Reinicie o serviço:
Isto deveria ser suficiente para aplicar as alterações. Caso contrário, reinicie o VPS (sudo reboot).
Para Ubuntu 24.04 e versões posteriores
Para as últimas versões de Ubuntu, a configuração SSH é agora gerida no ficheiro ssh.socket.
Para atualizar a porta SSH, edite a linha Listenstream no ficheiro de configuração com um editor de texto à sua escolha (nano utilizado neste exemplo):
O seu ficheiro deve ser semelhante aos exemplos a seguir, dependendo da versão do Ubuntu que você instalou:
ou
Guarde as alterações e execute os seguintes comandos:
Reinicie o serviço:
Lembre-se de que deve indicar a nova porta a cada pedido de ligação SSH ao seu servidor:
Exemplo:
Se você estiver bloqueado fora do seu sistema, pode usar o nosso ambiente modo rescue para anular as suas alterações.
Criar um utilizador com direitos restritos
Em geral, as tarefas que não exijam privilégios root devem ser realizadas através de um utilizador standard. Para mais informações consulte este guia.
Configurar firewall interna (iptables)
As distribuições GNU/Linux comuns são fornecidas com um serviço de firewall designado iptables. A configuração inicial não tem nenhuma regra predefinida (ativa). Para confirmar o tipo de configuração, deverá executar o comando:
Para mais informações sobre iptables, consulte o nosso guia dedicado.
Recomendamos que crie e adapte regras de firewall à sua utilização. Para mais informações sobre as várias operações, consulte a documentação oficial da distribuição utilizada.
Instalar o Fail2ban
Fail2ban é um framework de prevenção contra as intrusões cujo objetivo é bloquear os endereços IP a partir dos quais bots ou atacantes tentam penetrar no seu sistema.
Este pacote é recomendado, ou mesmo indispensável em certos casos, para proteger o seu servidor contra ataques do tipo Brute Force ou Denial of Service.
Para instalar o pacote de software, utilize o seguinte comando:
Em CentOS 7 e CentOS 8 (ou RHEL), instale primeiro o repositório EPEL (Extra Packages for Enterprise Linux), e depois em Fail2ban:
Pode personalizar os ficheiros de configuração Fail2ban para proteger os serviços expostos à Internet pública contra as tentativas de ligações repetidas.
Como recomendado pelo Fail2ban, crie um ficheiro de configuração local dos seus serviços copiando o ficheiro "jail.conf":
A seguir, abra o ficheiro com um editor de texto:
Leia as informações no topo do ficheiro, nomeadamente as observações em [DEFAULT].
Os parâmetros [DEFAULT] são globais e aplicar-se-ão a todos os serviços definidos para serem ativados (enabled) neste ficheiro.
É importante saber que os parâmetros globais só serão tidos em conta se não existirem valores diferentes definidos nas secções de serviços (JAILS) mais abaixo do ficheiro.
Tomemos como exemplo estas linhas em [DEFAULT]:
Isto significa que um endereço de IP a partir do qual um host tenta conectar-se será bloqueado durante dez minutos após a quinta tentativa de abertura de sessão falhada.
Além disso, todos os parâmetros especificados pela [DEFAULT] e nas secções seguintes permanecem desativados, exceto se a linha enabled = true for adicionada para um serviço (listada abaixo # JAILS).
A título de exemplo de utilização, o facto de ter as seguintes linhas na secção [sshd] só ativará restrições para o serviço OpenSSH:
Neste exemplo, se uma tentativa de ligação SSH falhar três vezes em cinco minutos, o período de interdição dos IP será de 30 minutos.
Pode substituir "ssh" pelo número de porta real se o alterou.
A melhor abordagem consiste em ativar o Fail2ban apenas para os serviços que são realmente executados no servidor. Cada parâmetro personalizado adicionado sob # JAILS será então prioritário relativamente aos valores predefinidos.
Depois de finalizar as suas modificações, registe o ficheiro e feche o editor.
Reinicie o serviço para se certificar de que ele é executado com as personalizações aplicadas:
1. Comando recomendado com systemctl:
2. Comando com service (método antigo, ainda compatível):
Fail2ban dispõe de numerosos parâmetros e filtros de personalização, bem como de opções pré-definidas, por exemplo quando deseja adicionar uma camada de proteção a um servidor web Nginx.
Para mais informações e recomendações sobre o Fail2ban, não hesite em consultar a documentação oficial desta ferramenta.
Configuração da Network Firewall OVHcloud
As soluções da OVHcloud incluem a possibilidade de ativar uma firewall no ponto de entrada da infraestrutura, designada Network Firewall. Uma configuração correta desta firewall permite bloquear as ligações antes mesmo que estas cheguem ao seu servidor.
Consulte o guia "Configurar a Network Firewall" se desejar ativá-la.
Proteger o sistema e os dados
O conceito de segurança não se limita à proteção de um sistema contra ataques.
A segurança dos seus dados é um elemento chave. É por isso que a OVHcloud oferece-lhe várias opções de backup enquanto serviços:
- A opção
Snapshotque lhe permite criar uma imagem manual. - A opção de
Backup automáticopermite-lhe conservar os backups regulares do seu VPS (à exceção dos discos suplementares).
Na página do produto e nos respetivos guias, poderá encontrar todas as informações sobre as soluções de backup disponíveis para o seu serviço.
Quer saber mais?
Configurar a firewall em Windows
Configurar a firewall em Linux com iptables
Junte-se à nossa comunidade de utilizadores em https://community.ovh.com/en/.