Aula Prática

Instalando Nginx + SSL

Video: 5 min
🎧 Audio: 3 min
📋 5 passos
~15 min total
Nginx e o programa que faz o servidor "servir" suas páginas na internet. SSL e o cadeado verde que aparece no navegador — significa que o site e seguro.
🎙

Resumo em audio — com a voz da Alessandra Camilo

Prefere ouvir enquanto faz? Aperte o play. Mesma explicação do video, só audio.

📋
Passo a passo

Passo 1

Conectar no servidor

Abra o terminal e conecte no seu servidor:

Terminal
$ ssh root@SEU_IP_AQUI
Resultado esperado
Welcome to Ubuntu 22.04.3 LTS
...
Last login: Wed Mar 25 10:30:00 2026 from 189.x.x.x
root@vps:~#
Se já conectou antes, a senha não sera pedida novamente (se configurou chave SSH). Caso contrario, digite a senha root.
Passo 2

Instalar o Nginx

Copie e cole o comando abaixo. Demora 1-2 minutos:

Terminal — VPS
# apt install nginx -y
Resultado esperado
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libnginx-mod-http-geoip2 libnginx-mod-http-image-filter
  libnginx-mod-http-xslt-filter libnginx-mod-mail
  libnginx-mod-stream nginx-common nginx-core
...
Setting up nginx-core (1.18.0-6ubuntu14) ...
Setting up nginx (1.18.0-6ubuntu14) ...
Processing triggers for man-db ...
Processing triggers for ufw ...
root@vps:~#
Quando terminar e o cursor root@vps:~# aparecer de novo, o Nginx foi instalado!
Terminal — instalando Nginx
root@srv1332310:~# apt install nginx -y
Reading package lists... Done
Setting up nginx (1.24.0-1ubuntu1) ...
Processing triggers for ufw (0.36.2) ...
✓ nginx instalado com sucesso.
root@srv1332310:~#
Passo 3

Verificar se esta rodando

Vamos checar se o Nginx esta funcionando:

Terminal — VPS
# systemctl status nginx
Resultado esperado
nginx.service - A high performance web server and a reverse proxy server
    Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled)
    Active: active (running) since Wed 2026-03-25 10:35:00 UTC
      Docs: man:nginx(8)
  Main PID: 12345 (nginx)
     Tasks: 2 (limit: 1024)
    Memory: 5.2M
      CPU: 42ms
    CGroup: /system.slice/nginx.service
            ├─12345 "nginx: master process /usr/sbin/nginx"
            └─12346 "nginx: worker process"
A linha que importa e Active: active (running) em verde. Isso significa que o Nginx esta ligado e funcionando.
Aperte a tecla q para sair dessa tela de status e voltar ao terminal.
Terminal — status do Nginx
root@srv1332310:~# systemctl status nginx
● nginx.service - A high performance web server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled)
Active: active (running) since Thu 2026-04-02 14:30:01 UTC
Process: 1234 ExecStart=/usr/sbin/nginx
Main PID: 1235 (nginx)
Apr 02 14:30:01 srv1332310 systemd[1]: Started nginx.
Aperte q para sair
Passo 4

Testar no navegador

Abra seu navegador e digite o IP do servidor na barra de enderecos:

No navegador
http://SEU_IP_AQUI

Exemplo: http://72.60.54.154

Use http:// (sem o "s"). O SSL ainda não esta configurado, então https não vai funcionar por enquanto.
http://72.60.54.154

Welcome to nginx!


If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

For online documentation and support please refer to nginx.org.

Thank you for using nginx.

Se apareceu "Welcome to nginx!" você tem um servidor web funcionando! Essa página vem do arquivo /var/www/html/index.nginx-debian.html que você viu na aula anterior.
Se apareceu "Não e possivel acessar esse site" ou a página não carregou, veja a secao "Deu erro?" mais abaixo.
Passo 5

Instalar o SSL (certbot)

Isso instala a ferramenta que cria o cadeado verde no navegador. Você vai configurar quando tiver um dominio apontado:

Terminal — VPS
# apt install certbot python3-certbot-nginx -y
Resultado esperado
Reading package lists... Done
Building dependency tree... Done
The following additional packages will be installed:
  python3-acme python3-certbot python3-configargparse
  python3-josepy python3-parsedatetime python3-rfc3339
...
Setting up python3-certbot-nginx (1.21.0-1) ...
Setting up certbot (1.21.0-1) ...
Processing triggers for man-db ...
root@vps:~#

Vamos confirmar que o certbot foi instalado corretamente:

Terminal — VPS
# certbot --version
Resultado esperado
certbot 1.21.0
Se apareceu o número da versão, o certbot esta instalado. Você vai usa-lo quando apontar um dominio para o servidor.
Quando usar o certbot? Quando você apontar um dominio (ex: meusite.com.br) para o IP do servidor, basta rodar certbot --nginx -d meusite.com.br e o cadeado verde sera criado automaticamente.
Terminal — VPS
root@srv1332310:~# certbot --version
certbot 2.9.0
root@srv1332310:~#
Parabens! Você tem um servidor web funcionando. Quando apontar um dominio pra ca, sua página de vendas vai estar no ar.
Deu erro? Veja como resolver

"Página não aparece no navegador"
Verifique o IP. Tente com http:// na frente (sem https). Confirme que o IP esta correto no painel da Hostinger.

"nginx: command not found"
Rode a instalação de novo: apt install nginx -y

"Port 80 already in use"
Rode systemctl stop apache2 e tente de novo. O Apache pode ter sido instalado automaticamente e esta ocupando a porta.

Checklist de Confirmacao

Instalei o Nginx
Status mostra active (running)
Página do Nginx aparece no navegador
Instalei o certbot para SSL