Portgrid Docs v0.1.36

Como usar a CLI (cgnatsh)#

cgnatsh é o shell de administração, no estilo VyOS/Juniper. É o shell de login do usuário operador e substitui o bash.

Modos#

Modo Prompt Uso
Operacional usuario@host> show, ping, traceroute, monitor, request, license, restart...
Configuração usuario@host# set, delete, compare, commit, rollback... (entre com configure)

Recursos de edição: Tab completa, ? lista opções com ajuda, abreviações (sh int), histórico (setas), shell abre o bash do Debian (só admin). Dentro de configure, comandos operacionais usam o prefixo run (ex.: run show cgnat stats).

Fluxo de configuração#

configure
set ...                  # altera o CANDIDATO (nada muda no servidor ainda)
delete ...
compare                  # diferença entre o candidato e o que está rodando
commit                   # aplica
commit-confirm 10        # aplica e volta sozinho em 10 min se você não rodar "confirm"
confirm                  # mantém a configuração
rollback [id]            # volta para um commit anterior
discard                  # descarta o candidato
exit

Os commits ficam em /var/lib/cgnatsh/ e show commits lista o histórico.

Sempre commit-confirm por SSH

Mexer em interfaces, rotas, firewall ou SSH pode cortar seu acesso. Com commit-confirm, mesmo que a sessão caia, o servidor volta à configuração anterior.

Onde cada área é gravada#

Área Fonte Aplicação
interfaces ethernet/bridge/bonding /etc/network/interfaces ip/ethtool na hora + arquivo
firewall nft (tabela inet cgnatsh), /etc/cgnatsh/firewall.nft validado com nft -c, carga atômica
system (host-name, sysctl, DNS, NTP, SSH, usuários, tuning) arquivos do Debian hostnamectl, sysctl, chronyc...
routing static-route /etc/cgnatsh/routes ip route + reaplicação no boot
cgnat (pools, políticas, proteções, timeouts) API do cgnatd POST/DELETE na API
cgnat dataplane /etc/cgnat/cgnatd.env arquivo; vale após restart cgnatd

Papéis#

Papel Pode Não pode
admin (grupo cgnatsh) tudo —
read-only (grupo cgnatsh-ro) show, ping/traceroute limitados, monitor bandwidth, trocar a própria senha configure, shell, restart, reboot, monitor traffic...
set system login user maria role read-only
set system login user joao role admin
commit
run change password maria

O sistema não deixa ficar sem administrador ativo nem rebaixar/remover o próprio usuário da sessão.

Ver a configuração#

show configuration                 # só o que você definiu
show configuration all             # tudo, inclusive o automático (marcado com "# auto")
show configuration commands        # em formato de comandos set
load merge <arquivo.set>           # aplica um arquivo de comandos ao candidato

Referências desta wiki#

Portgrid v0.1.36 · gerado em 04/10/2026 17:50 · © Portgrid · Documentação do produto.