> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://ajuda.streethosting.com.br/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Como configurar VPS Ubuntu 24.04

# Como configurar um VPS Ubuntu 24.04 do zero (passo a passo)

Acabou de contratar seu VPS e recebeu o IP, usuário root e senha? Este guia mostra exatamente o que fazer nos primeiros 30 minutos para deixar o servidor seguro e pronto para receber suas aplicações.

## Pré-requisitos

* VPS ativo com Ubuntu 24.04 LTS instalado.
* IP do servidor, usuário root e senha (fornecidos pelo provedor).
* Terminal ou cliente SSH instalado no seu computador (PowerShell, Terminal do macOS ou qualquer cliente SSH).

## Passo 1: conectar ao servidor

Abra o terminal e conecte via SSH:

```bash
ssh root@SEU_IP_DO_SERVIDOR
```

Na primeira conexão, confirme a fingerprint digitando `yes`. Depois, insira a senha fornecida pelo provedor.

## Passo 2: atualizar o sistema

A primeira coisa a fazer em qualquer servidor novo é atualizar todos os pacotes:

```bash
apt update && apt upgrade -y
```

Se houver atualização de kernel, reinicie o servidor pelo painel de controle. Prefira não usar comandos de reboot.

> **Por que isso importa?** Pacotes desatualizados podem conter vulnerabilidades conhecidas. Atualizar logo no início reduz a superfície de ataque antes de qualquer deploy.

## Passo 3: criar usuário administrativo

Operar como root o tempo inteiro é arriscado — qualquer erro pode comprometer todo o sistema. Crie um usuário com privilégios sudo:

```bash
adduser seuusuario
usermod -aG sudo seuusuario
```

Teste o acesso com o novo usuário:

```bash
su - seuusuario
sudo apt update
```

Se o `sudo` funcionar, o usuário está pronto.

## Passo 4: configurar SSH com chave pública

A autenticação por chave é muito mais segura do que senha. No **seu computador local**, gere o par de chaves (se ainda não tiver):

```bash
ssh-keygen -t ed25519 -C "seu@email.com"
```

Copie a chave pública para o servidor:

```bash
ssh-copy-id seuusuario@SEU_IP_DO_SERVIDOR
```

Teste a conexão sem senha:

```bash
ssh seuusuario@SEU_IP_DO_SERVIDOR
```

Se conectou sem pedir senha, a chave está funcionando.

### Desativar login por senha (recomendado)

Edite o arquivo de configuração do SSH no servidor:

```bash
sudo nano /etc/ssh/sshd_config
```

Altere estas linhas:

```
PasswordAuthentication no
PermitRootLogin no
```

Reinicie o SSH:

```bash
sudo systemctl restart ssh
```

> **Atenção:** antes de desativar a senha, confirme que consegue acessar com a chave. Caso contrário, você pode perder o acesso ao servidor.

## Passo 5: ativar firewall (UFW)

O UFW (Uncomplicated Firewall) é a forma mais simples de controlar quais portas estão abertas no servidor:

```bash
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status
```

Depois, libere apenas as portas que sua aplicação precisa:

```bash
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
```

Para um guia completo, veja [Como configurar firewall UFW no VPS](/pt/article/como-configurar-firewall-ufw-no-vps).

## Passo 6: instalar fail2ban

O fail2ban monitora tentativas de login e bloqueia IPs que erram a senha muitas vezes:

```bash
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
```

Com a configuração padrão, ele já protege o SSH. Para personalizar regras, edite `/etc/fail2ban/jail.local`.

## Passo 7: ativar atualizações automáticas de segurança

```bash
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure -plow unattended-upgrades
```

Selecione "Sim" para ativar. Isso garante que patches críticos sejam aplicados automaticamente.

## Checklist de configuração inicial

* [x] Sistema atualizado
* [x] Usuário administrativo criado
* [x] SSH por chave configurado
* [x] Login root e senha desativados
* [x] Firewall ativo (portas mínimas)
* [x] Fail2ban instalado
* [x] Atualizações automáticas ativas

## Perguntas frequentes (FAQ)

### Posso usar outro sistema além do Ubuntu?
Sim. Debian, AlmaLinux e CentOS Stream são alternativas populares. Os conceitos de segurança são os mesmos, mas os comandos podem variar.

### Perdi o acesso SSH, o que faço?
A maioria dos provedores oferece console de emergência (VNC) pelo painel. Na StreetHosting, você pode acessar o console direto pelo painel de gerenciamento.

### Preciso instalar painel de controle?
Não é obrigatório. Painéis como hPanel ou Portainer facilitam a gestão visual, mas muitos desenvolvedores preferem administrar por linha de comando por ter mais controle.

## Próximos passos

* Aprenda a conectar com segurança em [Como acessar VPS via SSH](/pt/article/como-acessar-vps-via-ssh)
* Reforce a proteção com [Hardening Linux para VPS](/pt/article/hardening-linux-para-vps)
* Instale seu ambiente com [Docker + Compose no VPS](/pt/article/instalar-docker-no-vps-com-docker-compose)
