Compilação

Compilação a partir do código-fonte

Compilação release

# Via make (recomendado)
make release

# Ou diretamente com cargo
cargo build --release --target x86_64-unknown-linux-musl

O binário resultante encontra-se em:

target/x86_64-unknown-linux-musl/release/ssh-frontiere

É um binário estático de aproximadamente 1 Mo, sem qualquer dependência de sistema. Pode ser copiado diretamente para qualquer servidor Linux x86_64.

Verificação

# Verificar o tipo do binário
file target/x86_64-unknown-linux-musl/release/ssh-frontiere
# ELF 64-bit LSB executable, x86-64, statically linked

# Verificar o tamanho
ls -lh target/x86_64-unknown-linux-musl/release/ssh-frontiere
# ~1-2 Mo

Compilação debug

Para desenvolvimento:

make build
# ou
cargo build

Testes

Antes de implementar, verifique que os testes passam:

# Testes unitários e de integração
make test

# Lints (formatação + clippy)
make lint

# Auditoria das dependências
make audit

Binário auxiliar: proof

Um binário auxiliar está incluído para calcular os proofs de autenticação:

cargo build --release --target x86_64-unknown-linux-musl --bin proof

Este binário é útil para testar a autenticação challenge-response sem implementar o cálculo SHA-256 do lado do cliente.


Seguinte: Configuração — preparar o ficheiro config.toml.