Quando crio um novo servidor Ubuntu em uma VM ou instalação em máquina real, a primeira coisa que me ocorre é: quais as primeiras medidas de segurança? Quais os primeiros pacotes que preciso instalar? O que configurar de imediato no servidor para que ele rode com segurança, especialmente se for exposto na internet?
Este artigo busca lançar luzes sobre esses passos em uma instalação nova baseada em Ubuntu Server.
Protegendo Root
Devemos proteger o acesso a conta root definindo uma senha super segura, de preferência com vários caracteres complexos, com símbolos e números.
Em instalações do Ubuntu Server, por design inclusive, o root vem desabilitado por razões de segurança. Ao definir a senha com o comando abaixo, você estará habilitando-a, caso esteja desabilitada.
sudo passwd root
Caso queira desabilitar novamente a conta root para uso, utilize o seguinte comando:
sudo passwd -l root
Para alternar entre a conta root e o seu próprio usuário utilize os comandos:
su - su – marcofloriano
Outra possibilidade é desabilitar o acesso root via ssh. Para tanto edite o arquivo de configuração do SSH no Ububtu:
sudo nano /etc/ssh/sshd_config
A seguir procure e altere a seguinte linha
PermitRootLogin no
E depois reinicie o serviço do SSH
Configurando Firewall
Em versões mais recentes do Ubuntu Server, o SO vem com um sistema de firewall pré-instalado chamado Uncomplicated Firewall, ou ainda, UFW. Para verificar se ele está ativo ou não, utilize o comando
sudo ufw status
Caso não esteja instalado, utilize o seguinte comando:
sudo apt-get install ufw
Antes de configurar e ativar o firewall, planeje quais aplicações (portas) irá permitir. A lógica é sempre bloquear tudo por padrão, exceto aquelas aplicações que você definir. No exemplo abriremos as portas para o SSH e o HTTP:
sudo ufw allow ssh sudo ufw allow http
Alternativamente, para abrir uma porta específica, utilize o seguinte o comando:
sudo ufw allow 80/tcp
Após a conclusão das configurações desejadas, habilite o firewall:
sudo ufw enable
Atualizações
Para preparar as atualizações que precisam ser realizadas no servidor, utilize o seguinte comando:
sudo apt-get update
Depois para aplicar as atualizações, utilize:
sudo apt-get upgrade
Referências
1 – The First 5 Tasks a New Ubuntu Server – https://www.liquidweb.com/blog/things-to-do-after-installing-a-ubuntu-server/
2 – User management – https://ubuntu.com/server/docs/how-to/security/user-management/
3 – How to switch between users on one terminal? – https://unix.stackexchange.com/questions/3568/how-to-switch-between-users-on-one-terminal
