Infraestrutura · laboratório

adam-pinkman

Servidor, projeto e operações — informação sem segredos.

Home

Apresentação do servidor e projeto

# Informação do servidor

> Inventário recolhido diretamente no host por SSH, em 2026-10-27 (UTC). Os parâmetros do proxy continuam a ser transcritos de `npm.md`; não foi possível validar o proxy externamente.

## Identificação e acesso

| Parâmetro | Valor |
|---|---|
| Nome / identificação | `adam-pinkman` (indicado pelo utilizador) |
| Hostname observado | `adam-pinkman` |
| Tipo | Máquina virtual (indicado em `.env`; dispositivos/driver VMware observados) |
| Endereço IPv4 | `192.168.3.114/24` (`eth0`) |
| Gateway | `192.168.3.1` |
| DNS | `192.168.3.1` |
| Domínio | `114.kx7pm2ql9vb4.duckdns.org` |
| Esquema configurado no proxy | HTTP |
| Force SSL | Ligado |
| HTTP/2 | Ligado |

## Encaminhamento do proxy (NPM)

| Parâmetro | Valor |
|---|---|
| Endereço de destino | `192.168.3.114` |
| Porta de destino | `8081` |
| Suporte a WebSockets | Desligado |

## Sistema operativo e hardware

| Parâmetro | Valor observado |
|---|---|
| Sistema operativo | Alpine Linux 3.24.3 |
| Kernel | Linux `6.18.58-0-virt`, x86_64 |
| Init / gestão de serviços | OpenRC 0.63.2 (não systemd) |
| CPU | 2 vCPU (modelo não exposto em `/proc/cpuinfo`) |
| Memória RAM | ~3.8 GiB |
| Swap | ~4.0 GiB |
| Disco virtual | `/dev/sda`, 32 GiB; `/` em `/dev/sda3` (ext4, 27.1 GiB), `/boot` em `/dev/sda1` (271 MiB) |
| Uso observado de `/` | 60.1 MiB usados, 25.6 GiB disponíveis (2026-10-27) |
| Uptime | Não obtido nesta recolha |

## Utilizadores locais

Contas encontradas em `/etc/passwd` (nomes e UIDs; nenhuma credencial incluída):

`root` (UID 0), `bin` (1), `daemon` (2), `lp` (4), `sync` (5), `shutdown` (6), `halt` (7), `mail` (8), `news` (9), `uucp` (10), `cron` (16), `ftp` (21), `sshd` (22), `games` (35), `ntp` (123), `guest` (405), `nobody` (65534), `klogd` (100).

`root` pertence ao grupo `wheel`. Acesso SSH root por palavra-passe está configurado/funcional nesta sessão; recomenda-se rever esta política e rodar a credencial exposta no ficheiro `.env`.

## Serviços e portas observados

Serviços OpenRC ativos no runlevel `default`: `sshd`, `ntpd`, `crond`, `acpid` e `podman`. O serviço `podman` está habilitado no runlevel `default`; estado e socket validados em 2026-10-27. O Podman é `5.8.9-r0` (Alpine community) e o serviço disponibiliza a API no socket local `/run/podman/podman.sock`. O arranque foi validado no estado atual, não após reboot.

| Porta | Endereço | Serviço identificado |
|---|---|---|
| TCP 22 | `0.0.0.0` e `::` | SSH (`sshd`) |
| TCP 8081 | `0.0.0.0` (publicado por Podman) | `adam-pinkman-hello` (HTTP) |

Na verificação de 2026-10-27, a porta `8081` é publicada pelo container `adam-pinkman-hello`; os caminhos `/`, `/server` e `/podman` responderam HTTP 200 a partir da rede local.

Podman está instalado (versão `5.8.9`, pacote `podman-openrc` `5.8.9-r0`); runtime OCI `crun`. O repositório Alpine `community` da versão `v3.24` foi ativado para permitir a instalação. `iptables` `1.8.13-r0` foi instalado para suportar a rede netavark. Serviço OpenRC habilitado no runlevel `default`; o reboot ainda não foi testado.

### Aplicação Hello World (verificado em 2026-10-27)

- Container `adam-pinkman-hello`, imagem `localhost/adam-pinkman-hello:latest`, estado observado `running`, política de reinício `always`.
- Bind `0.0.0.0:8081` no host para `8081/tcp` no container; IP Podman `10.88.0.3` na rede bridge `podman` (`10.88.0.0/16`, gateway `10.88.0.1`).
- Páginas: `/` (apresentação baseada neste ficheiro), `/server` (`SERVER_LOG.md`) e `/podman` (`PODMAN-LOG.md`). Os dois diários e este ficheiro são montados read-only no container a partir de `/opt/adam-pinkman-hello/data`.
- Build context: `/opt/adam-pinkman-hello/build`; Containerfile `Containerfile`; aplicação `server.py`. Healthcheck do container não configurado; endpoints foram validados por HTTP 200.

## Rede e segurança

- Interface `eth0` ativa, MTU 1500; IPv4 `192.168.3.114/24`.
- Rota predefinida via `192.168.3.1`.
- Firewall: estado/regras não confirmados (as ferramentas/comandos de inspeção disponíveis não permitiram concluir se há filtragem ativa).
- SSH está a escutar na porta 22 em todas as interfaces IPv4 e IPv6.
- Serviço web HTTP observado na porta TCP `8081`, publicado pelo Podman em `0.0.0.0`; não foi feita validação externa de firewall/rede.

## Ficheiros de configuração encontrados

- `npm.md` — parâmetros do encaminhamento de proxy acima.
- `.env` — ficheiro de variáveis de ambiente presente; valores omitidos por poderem conter segredos.

## Informação por confirmar

- Reboot efetivo ainda não testado para confirmar comportamento do container `restart=always` em conjunto com serviço OpenRC.
- Validação externa do domínio, proxy NPM, certificado SSL e estado de HTTP/2.
- Regras de firewall (host e rede), política de SSH, backups e monitorização.
- Modelo exato de CPU/hipervisor e uptime (não obtidos nesta recolha).
- Atualizações pendentes e estado de segurança dos pacotes.

Não incluir neste inventário palavras-passe, tokens, chaves privadas ou valores secretos do `.env`.

## Notas

- A inspeção ao vivo foi apenas de leitura; não foram alterados serviços nem configurações.
- Atualizar este documento quando a configuração mudar e registar alterações relevantes no diário de bordo.