mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-11-02 10:52:22 +00:00
Merge pull request #488 from jcastro/docs/review-security
docs: review security documentation in all seven translations
This commit is contained in:
@@ -0,0 +1,152 @@
|
||||
{
|
||||
"meta": {
|
||||
"title": "Fail2Ban | Documentação do ProxMenux",
|
||||
"description": "Instalar Fail2Ban com três jails sintonizado para Proxmox (SSH agressivo, Proxmox UI 8006, ProxMenux Monitor 8008). Inclui o journald MaxLevelStore correção, serviços de log personalizados para confiabilidade, backend nftables/iptables detectado automaticamente e SSH MaxAuthTries endurecimento.",
|
||||
"ogTitle": "Fail2Ban | Documentação do ProxMenux",
|
||||
"ogDescription": "Proteção contra força bruta para SSH e interfaces web Proxmox, com correções do journald e do backend específicas para Proxmox."
|
||||
},
|
||||
"header": {
|
||||
"title": "Fail2Ban",
|
||||
"description": "Instala Fail2Ban para Proxmox: três jails (SSH agressivo, interface Proxmox em 8006, ProxMenux Monitor em 8008 e proxy inverso), correção do nível do journald para guardar eventos SSH, dois serviços que copiam o journal para ficheiros para contornar um problema do backend systemd, deteção do backend de firewall e reforço SSH com MaxAuthTries.",
|
||||
"section": "Segurança"
|
||||
},
|
||||
"intro": {
|
||||
"title": "O que isto faz",
|
||||
"body": "Instala Fail2Ban dos repositórios Debian e cria uma configuração Proxmox que protege de imediato SSH, interface web Proxmox e ProxMenux Monitor. Se detetar uma instalação existente, oferece um menu de gestão para reinstalar ou remover."
|
||||
},
|
||||
"firstLaunch": {
|
||||
"heading": "Janela de primeiro lançamento",
|
||||
"body": "Sem Fail2Ban instalado, o script resume num diálogo o que vai instalar e configurar. Cancelar termina sem alterações; confirmar inicia a instalação.",
|
||||
"imageAlt": "Confirmação de instalação do Fail2Ban com três jails, correção do journald e reforço SSH"
|
||||
},
|
||||
"jails": {
|
||||
"heading": "As três jails",
|
||||
"headerJail": "Jail",
|
||||
"headerProtects": "Protege",
|
||||
"headerRetries": "Tentativas / Janela",
|
||||
"headerBan": "Duração do bloqueio",
|
||||
"rows": [
|
||||
{
|
||||
"jail": "[sshd]",
|
||||
"protects": "SSH (modo aggressive — inclui ddos, mode, normal)",
|
||||
"retries": "2 / 60 min",
|
||||
"ban": "9 horas"
|
||||
},
|
||||
{
|
||||
"jail": "[proxmox]",
|
||||
"protects": "Interface web do Proxmox (porta 8006)",
|
||||
"retries": "3 / 10 min",
|
||||
"ban": "1 hora"
|
||||
},
|
||||
{
|
||||
"jail": "[proxmenux]",
|
||||
"protects": "ProxMenux Monitor (porta 8008 + proxy inverso http/https)",
|
||||
"retries": "3 / 10 min",
|
||||
"ban": "1 hora"
|
||||
}
|
||||
],
|
||||
"outro": "Defaults globais de <code>jail.local</code>: <code>ignoreip = 127.0.0.1/8 ::1</code>, <code>ignoreself = true</code>,<code> bantime = 86400</code> (fallback de 24h para prisões que não o sobrepõem), <code>maxretry = 2</code>, <code>findtime = 1800</code>."
|
||||
},
|
||||
"journald": {
|
||||
"heading": "Por que a correção journald é importante",
|
||||
"intro": "O Proxmox fornece <code>/etc/systemd/journald.conf</code> com <codeNw>MaxLevelStore=warning</codeNw>. O journald descarta as mensagens de nível <em>inferior</em> a warning antes de as guardar. SSH e PAM emitem falhas de autenticação nos níveis <em>info</em> / <em>notice</em>, pelo que:",
|
||||
"diagram": {
|
||||
"sshLabel": "SSH / PAM",
|
||||
"sshDetail": "falha de autenticação\n(nível info / notice)",
|
||||
"journaldLabel": "journald",
|
||||
"journaldDetail": "MaxLevelStore=warning\n→ evento descartado sem aviso",
|
||||
"fail2banLabel": "Fail2Ban",
|
||||
"fail2banDetail": "não vê nada\n→ nunca proíbe nada",
|
||||
"arrowLabel": "Proxmox por omissão"
|
||||
},
|
||||
"afterDiagram": "O instalador detecta isso e escreve um drop-in em <codeXs>/etc/systemd/journald.conf.d/proxmenux-loglevel.conf</codeXs> elevando tanto <code>MaxLevelStore</code> quanto <code>MaxLevelSyslog</code> para <code>info</code>:",
|
||||
"code": "[Journal]\nMaxLevelStore=info\nMaxLevelSyslog=info",
|
||||
"outro": "Em seguida, reinicia <code>systemd-journald</code>. O drop-in é removido ao desinstalar, restaurando o padrão original do Proxmox."
|
||||
},
|
||||
"loggers": {
|
||||
"heading": "Porquê dois serviços de registo personalizado",
|
||||
"intro1": "O Fail2Ban pode ler diretamente o journal do systemd (<code>backend = systemd</code>), mas no Proxmox este backend tem problemas conhecidos com processos worker de <code>pvedaemon</code>: os eventos de autenticação aparecem no journal mas nem sempre são detetados. O problema também afeta ocasionalmente <code>sshd</code>.",
|
||||
"intro2": "O ProxMenux cria dois pequenos serviços systemd que acompanham as unidades relevantes com <code>journalctl -f</code> e acrescentam cada linha a um ficheiro. O Fail2Ban lê esses ficheiros com o fiável <code>backend = auto</code> (modo ficheiro):",
|
||||
"headerService": "Serviço",
|
||||
"headerSource": "Unidade de origem",
|
||||
"headerOutput": "Ficheiro de saída",
|
||||
"rows": [
|
||||
{
|
||||
"service": "proxmox-auth-logger.service",
|
||||
"source": "pvedaemon.service",
|
||||
"output": "/var/log/proxmox-auth.log"
|
||||
},
|
||||
{
|
||||
"service": "ssh-auth-logger.service",
|
||||
"source": "ssh.service",
|
||||
"output": "/var/log/ssh-auth.log"
|
||||
}
|
||||
],
|
||||
"outro": "Ambos os serviços são declarados <code>PartOf=fail2ban.service</code> para que eles reiniciar com Fail2Ban e parar com ele. Modo 640 de propriedade do <code>root:adm</code> nos arquivos de log. O terceiro log usado pela cadeia <code>[proxmenux]</code> (<code>/var/log/proxmenux-auth.log</code>) é escrito diretamente pelo aplicativo ProxMenux Monitor Flask — nenhum serviço de registrador necessário para esse."
|
||||
},
|
||||
"backend": {
|
||||
"heading": "Deteção automática do backend de firewall",
|
||||
"intro": "O instalador sonda o host: se o <code>nft list ruleset</code> funcionar, ele escolhe o <code>nftables</code> como ação de ban. Caso contrário, volta para <code>iptables-multiport</code> / <code>iptables-allports</code>. A escolha é escrita em <code>jail.local</code>:",
|
||||
"code": "# nftables host\nbanaction = nftables\nbanaction_allports = nftables[type=allports]\n\n# iptables host (fallback)\nbanaction = iptables-multiport\nbanaction_allports = iptables-allports"
|
||||
},
|
||||
"hardening": {
|
||||
"heading": "Reforço SSH: MaxAuthTries",
|
||||
"intro": "O controlo Lynis <strong>SSH-7408</strong> recomenda <code>MaxAuthTries 3</code> em <code>sshd_config</code>. A jail SSH utiliza <code>maxretry = 2</code> para bloquear após falhas repetidas; MaxAuthTries limita as tentativas numa ligação. Este ajuste SSH acrescenta defesa em profundidade, mesmo quando Fail2Ban está parado para manutenção.",
|
||||
"installerIntro": "O instalador:",
|
||||
"items": [
|
||||
"Lê o valor atual do <code>MaxAuthTries</code> (ou padrão para 6 se ausente).",
|
||||
"Guarda-o em <code>/usr/local/share/proxmenux/sshd_maxauthtries_backup</code>.",
|
||||
"Edita <code>sshd_config</code> diretamente: substitui a linha existente, remove o comentário da linha comentada ou acrescenta uma nova.",
|
||||
"Recarrega o <code>sshd</code> (recarregar, não reiniciar, para manter as sessões existentes vivas)."
|
||||
],
|
||||
"outro": "Na desinstalação, o valor original salvo é restaurado e <code>sshd</code> é recarregado novamente."
|
||||
},
|
||||
"manage": {
|
||||
"heading": "Gerenciar uma instalação existente",
|
||||
"intro": "Se o Fail2Ban já estiver instalado quando você abrir o menu, o script detecta-o e mostra um menu de gerenciamento em vez de repetir o instalador:",
|
||||
"headerAction": "Ação",
|
||||
"headerWhat": "O que ele faz",
|
||||
"rows": [
|
||||
{
|
||||
"action": "Reinstalar",
|
||||
"what": "Repete a instalação completa e reescreve todas as jails com os valores atuais do ProxMenux. Utilize quando uma atualização alterar as recomendações."
|
||||
},
|
||||
{
|
||||
"action": "Remover",
|
||||
"what": "Para fail2ban e os dois serviços de registro, limpa o pacote apt, remove todos os jail / arquivos de filtro, exclui o drop-in journald (restaurando o padrão do Proxmox) e restaura o SSH original MaxAuthTries."
|
||||
}
|
||||
]
|
||||
},
|
||||
"verify": {
|
||||
"heading": "Verifica se está a funcionar.",
|
||||
"intro": "Após a instalação, comandos úteis da máquina:",
|
||||
"code": "# Service status and version\nsystemctl status fail2ban\nfail2ban-client --version\n\n# All active jails\nfail2ban-client status\n\n# Detail on one jail\nfail2ban-client status sshd\nfail2ban-client status proxmox\nfail2ban-client status proxmenux\n\n# Currently banned IPs in a jail\nfail2ban-client status sshd | grep \"Banned IP\"\n\n# Manually unban an IP (use this if you ban yourself)\nfail2ban-client unban 192.0.2.10\n\n# Tail the auth logs Fail2Ban watches\ntail -f /var/log/ssh-auth.log\ntail -f /var/log/proxmox-auth.log\ntail -f /var/log/fail2ban.log"
|
||||
},
|
||||
"troubleshoot": {
|
||||
"heading": "Resolução de Problemas",
|
||||
"neverBansTitle": "O Fail2Ban é executado mas nunca proíbe nada",
|
||||
"neverBansBody": "Verifique se <code>tail -f /var/log/ssh-auth.log</code> recebe uma entrada após uma tentativa SSH com palavra-passe errada a partir de outra máquina. Caso contrário, consulte <code>systemctl status ssh-auth-logger.service</code>. Se o serviço estiver ativo, veja os eventos recentes com <code>journalctl -u ssh.service -n 50 --no-pager -p info</code> e confirme que o complemento journald permite o nível <em>info</em>.",
|
||||
"monitorEmptyTitle": "A jail ProxMenux Monitor não tem entradas mesmo após inícios de sessão falhados",
|
||||
"monitorEmptyBody": "O <code>[proxmenux]</code> jail lê <code>/var/log/proxmenux-auth.log</code>, que é escrito pelo aplicativo ProxMenux Monitor Flask — não por um criador de logs journald. Se você não executar o Monitor, o arquivo permanecerá vazio e o jail nunca será acionado. Isso é esperado; a configuração jail é inofensiva. Se você executar o Monitor e o log estiver vazio, verifique a configuração de registro do Flask.",
|
||||
"selfBanTitle": "Eu bani-me.",
|
||||
"selfBanIntro": "A partir de uma consola / IPMI / iKVM (ou de outro IP autorizado):",
|
||||
"selfBanCode": "fail2ban-client unban '<'YOUR_IP'>'\n\n# To prevent it next time, edit /etc/fail2ban/jail.local and add your IP:\nignoreip = 127.0.0.1/8 ::1 192.168.1.0/24 203.0.113.42\n\n# Then reload\nfail2ban-client reload",
|
||||
"aptFailTitle": "O apt-get falha: ''Unable to locate package fail2ban''",
|
||||
"aptFailBody": "O host está faltando o Debian repos (comum nas instalações do 'barebones' Proxmox). O instalador detecta isso e escreve <code>/etc/apt/sources.list.d/debian.sources</code> com o codinome certo (<code>bookworm</code> / <code>trixie</code>) antes de tentar novamente. Se ainda falhar, verifique <code>/etc/os-release</code> para <code>VERSION_CODENAME</code> e confirme que o URL do repo está acessível.",
|
||||
"lockoutTitle": "SSH me bloqueia depois de instalar",
|
||||
"lockoutBody": "O instalador define <code>MaxAuthTries=3</code>. Se seu gerenciador de senhas / agente repetir várias chaves, você pode exceder isso em uma única tentativa de conexão. Limite as chaves oferecidas: <code>ssh -o IdentitiesOnly=yes -i ~/.ssh/specific_key user@host</code>. Ou aumentar temporariamente o <code>MaxAuthTries</code> em <code>sshd_config</code> enquanto você depura."
|
||||
},
|
||||
"files": {
|
||||
"heading": "Ficheiros gravados",
|
||||
"code": "/etc/fail2ban/jail.local # global defaults + [sshd]\n/etc/fail2ban/jail.d/proxmox.conf # [proxmox]\n/etc/fail2ban/jail.d/proxmenux.conf # [proxmenux]\n/etc/fail2ban/filter.d/proxmox.conf # auth-failure regex for pvedaemon\n/etc/fail2ban/filter.d/proxmenux.conf # auth-failure regex for Monitor\n/etc/systemd/system/proxmox-auth-logger.service # journal → file (pvedaemon)\n/etc/systemd/system/ssh-auth-logger.service # journal → file (sshd)\n/etc/systemd/journald.conf.d/proxmenux-loglevel.conf # MaxLevelStore=info\n/etc/ssh/sshd_config # MaxAuthTries=3 (in-place edit)\n/var/log/proxmox-auth.log # written by logger service\n/var/log/ssh-auth.log # written by logger service\n/var/log/proxmenux-auth.log # written by Monitor Flask app\n/usr/local/share/proxmenux/sshd_maxauthtries_backup # for restore on uninstall"
|
||||
},
|
||||
"related": {
|
||||
"heading": "Relacionado",
|
||||
"monitorLabel": "ProxMenux Monitor → Guia de segurança",
|
||||
"monitorTail": " — instalação pelo painel, estado das jails em direto, IPs bloqueados e ajuste de tentativas e duração do bloqueio por jail no navegador.",
|
||||
"lynisLabel": "Lynis",
|
||||
"lynisTail": " — execute uma auditoria antes e depois para confirmar que o controlo SSH-7408 é cumprido.",
|
||||
"securityLabel": "Visão geral da segurança",
|
||||
"securityTail": " — voltar ao panorama da secção."
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
{
|
||||
"meta": {
|
||||
"title": "Segurança do Proxmox — Fail2Ban e auditoria de reforço com Lynis | ProxMenux",
|
||||
"description": "Duas ferramentas de segurança para Proxmox VE: Fail2Ban (prevenção de intrusões para SSH, interface web do Proxmox e ProxMenux Monitor) e Lynis (auditoria de segurança e reforço do sistema, instalado a partir do repositório original no GitHub).",
|
||||
"ogTitle": "Segurança do Proxmox — Fail2Ban e auditoria de reforço com Lynis",
|
||||
"ogDescription": "Fail2Ban e Lynis para Proxmox VE: prevenção de intrusões e auditoria de reforço, instalados e geridos pelo ProxMenux.",
|
||||
"twitterTitle": "Segurança do Proxmox | ProxMenux",
|
||||
"twitterDescription": "Fail2Ban e Lynis para Proxmox VE: prevenção de intrusões e auditoria de reforço."
|
||||
},
|
||||
"header": {
|
||||
"title": "Segurança",
|
||||
"description": "Duas ferramentas complementares para Proxmox VE: defesa ativa (Fail2Ban bloqueia IPs que atacam SSH ou interfaces web) e auditoria local (Lynis procura falhas de reforço e dá uma pontuação de 0 a 100). Cada ferramenta tem o seu menu de instalação e gestão, com deteção de instalações existentes antes de agir.",
|
||||
"section": "Segurança"
|
||||
},
|
||||
"intro": {
|
||||
"title": "Defesa ativa e auditoria local",
|
||||
"body": "Respondem a perguntas diferentes. <strong>Fail2Ban</strong> responde a <em>«Estamos a ser atacados agora?»</em> observando os registos de autenticação e bloqueando os IPs responsáveis. <strong>Lynis</strong> responde a <em>«Qual é o nível de reforço deste anfitrião?»</em> através de uma auditoria pontual com recomendações concretas. Utilize ambos: Lynis indica o que melhorar e Fail2Ban reage aos ataques em curso."
|
||||
},
|
||||
"opening": {
|
||||
"heading": "Abrir o menu",
|
||||
"body": "No menu principal do ProxMenux selecione <strong>Segurança</strong>. Verá o seguinte:",
|
||||
"imageAlt": "Menu de segurança com opções Fail2Ban e Lynis"
|
||||
},
|
||||
"pick": {
|
||||
"heading": "Escolha sua ferramenta",
|
||||
"body": "As duas ferramentas de segurança são independentes — instale uma, ambas ou nenhuma. Cada carta abaixo salta para a seção que explica a ferramenta em detalhes."
|
||||
},
|
||||
"cards": {
|
||||
"fail2ban": {
|
||||
"title": "Fail2Ban",
|
||||
"body": "Prevenção ativa de intrusões. Observa os registos de autenticação SSH e web e bloqueia IPs após falhas repetidas.",
|
||||
"bullets": [
|
||||
"Três jails: SSH, interface Proxmox (8006), ProxMenux Monitor (8008)",
|
||||
"Corrige as predefinições do journald no Proxmox que bloqueiam os registos de autenticação",
|
||||
"Detecta automaticamente nftables / iptables",
|
||||
"Endurecimento de SSH: MaxAuthTries=3 (recomendação Lynis)"
|
||||
]
|
||||
},
|
||||
"lynis": {
|
||||
"title": "Lynis",
|
||||
"body": "Auditor local de segurança. Analisa o anfitrião e apresenta uma pontuação de reforço e sugestões concretas de correção.",
|
||||
"bullets": [
|
||||
"Instalado a partir do repositório original da CISOfy no GitHub (versão mais recente)",
|
||||
"Pontuação de reforço 0–100 e lista de avisos e sugestões",
|
||||
"Auditoria e atualização através do menu",
|
||||
"Concebido apenas para leitura: nunca altera o sistema"
|
||||
]
|
||||
}
|
||||
},
|
||||
"workflowTip": {
|
||||
"title": "Fluxo de trabalho que utiliza ambos",
|
||||
"body": "Execute primeiro Lynis para conhecer a pontuação inicial e as principais recomendações. Aplique as correções desejadas. Depois instale Fail2Ban: implementa automaticamente a proteção SSH contra força bruta e ajusta <code>MaxAuthTries</code> em <code>sshd_config</code> para cumprir o controlo SSH-7408. Execute Lynis novamente para verificar a melhoria."
|
||||
},
|
||||
"fail2banSection": {
|
||||
"heading": "Fail2Ban",
|
||||
"body": "O ProxMenux instala Fail2Ban com uma configuração específica para Proxmox. Além da jail SSH padrão, protege a interface web Proxmox e o ProxMenux Monitor. Contorna dois problemas específicos: uma predefinição do journald que descarta eventos de autenticação e um problema do backend systemd que impede a leitura fiável de certas fontes do registo. A página detalhada explica a instalação, as três jails, a correção do journald, o reforço SSH e a resolução de problemas.",
|
||||
"optionTitle": "Fail2Ban — instalar e gerenciar",
|
||||
"optionDescription": "Três jails pré-configuradas (sshd agressivo, interface Proxmox em 8006, ProxMenux Monitor em 8008 e proxy inverso), deteção de nftables/iptables, correção do journald e reforço SSH com MaxAuthTries."
|
||||
},
|
||||
"lynisSection": {
|
||||
"heading": "Lynis",
|
||||
"body": "O ProxMenux clona Lynis de <code>github.com/CISOfy/lynis</code> para <code>/opt/lynis</code> e disponibiliza-o como <code>/usr/local/bin/lynis</code>. Evita o pacote Debian porque está várias versões principais atrás do projeto original. A página detalhada explica instalação, auditoria, atualização, desinstalação, leitura do relatório e ações sobre os resultados.",
|
||||
"optionTitle": "Lynis — instalar, auditar e gerenciar",
|
||||
"optionDescription": "Instala a versão mais recente do Lynis a partir do repositório oficial CISOfy no GitHub (em vez do pacote Debian mais antigo), executa auditorias com pontuação de reforço e atualiza através de git pull."
|
||||
},
|
||||
"componentStatus": {
|
||||
"heading": "Estado do componente",
|
||||
"body": "Ambos os instaladores registram seu estado em <code>/usr/local/share/proxmenux/components_status.json</code> na categoria <code>security</code>. ProxMenux usa este arquivo para decidir se deve mostrar a instalação ou o menu de gerenciamento em sequências, e os mesmos dados alimentam os painéis no ProxMenux Monitor quando presente."
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,170 @@
|
||||
{
|
||||
"meta": {
|
||||
"title": "Lynis | Documentação do ProxMenux",
|
||||
"description": "Instale a versão mais recente do Lynis do repositório oficial CISOfy no GitHub, execute uma auditoria com pontuação de reforço de 0 a 100 e atualize através de git pull. Auditor apenas de leitura: não altera o sistema.",
|
||||
"ogTitle": "Lynis | Documentação do ProxMenux",
|
||||
"ogDescription": "Instale e execute Lynis no Proxmox VE. Instalação do repositório original GitHub, auditoria e atualização."
|
||||
},
|
||||
"header": {
|
||||
"title": "Lynis",
|
||||
"description": "Clona a versão mais recente do Lynis do repositório oficial CISOfy no GitHub, disponibiliza-a como /usr/local/bin/lynis e oferece auditoria, atualização, reinstalação e desinstalação no menu. O auditor apenas lê e apresenta resultados sem alterar o sistema.",
|
||||
"section": "Segurança"
|
||||
},
|
||||
"intro": {
|
||||
"title": "O que isto faz",
|
||||
"body": "Instala Lynis, o auditor de segurança de código aberto da CISOfy, do repositório GitHub em <code>/opt/lynis</code> e cria um lançador em <code>/usr/local/bin/lynis</code> para o disponibilizar no <code>PATH</code>. Se detetar uma instalação existente, apresenta um menu de auditoria, atualização, reinstalação ou remoção."
|
||||
},
|
||||
"manageMenu": {
|
||||
"heading": "Menu de gestão (após a instalação)",
|
||||
"intro": "Uma vez instalado o Lynis, cada invocação subsequente abre o menu de gerenciamento em vez de repetir o instalador. A partir daqui você inicia uma auditoria, atualização via git pull, reinstalar ou desinstalar:",
|
||||
"imageAlt": "Menu de gerenciamento do Lynis com as opções de auditoria, atualização, reinstalação e remoção"
|
||||
},
|
||||
"whyUpstream": {
|
||||
"heading": "Porquê o repositório oficial GitHub em vez de apt",
|
||||
"intro": "O Debian distribui Lynis através de apt, mas o pacote costuma estar várias versões principais atrás do projeto original. Novos controlos, correções de novos vetores de ataque e recomendações melhoradas chegam primeiro ao GitHub. Lynis é um script shell autónomo, sem compilação nem dependências de instalação além de <code>git</code>; clonar o repositório é o método recomendado pela CISOfy.",
|
||||
"headerSource": "Origem",
|
||||
"headerPath": "Install path",
|
||||
"headerUpdate": "Método de atualização",
|
||||
"headerFresh": "Atualidade da versão",
|
||||
"rows": [
|
||||
{
|
||||
"sourceRich": "<strong>ProxMenux (este programa)</strong>",
|
||||
"path": "/opt/lynis/",
|
||||
"update": "git pull (no menu)",
|
||||
"fresh": "Versão mais recente do projeto original"
|
||||
},
|
||||
{
|
||||
"sourceRich": "<strong>Debian apt</strong>",
|
||||
"path": "/usr/bin/lynis",
|
||||
"update": "apt upgrade",
|
||||
"fresh": "Muitas vezes meses / anos atrás"
|
||||
}
|
||||
]
|
||||
},
|
||||
"install": {
|
||||
"heading": "Como funciona a instalação",
|
||||
"node1Label": "github.com/CISOfy/lynis",
|
||||
"node1Detail": "git clone\n(instale git primeiro, se faltar)",
|
||||
"node2Label": "/opt/lynis/",
|
||||
"node2Detail": "repositório completo\nincluindo o script ./lynis",
|
||||
"node3Label": "/usr/local/bin/lynis",
|
||||
"node3Detail": "lançador:\ncd /opt/lynis && ./lynis $@",
|
||||
"outro": "O lançador é necessário: Lynis precisa de ser executado no próprio diretório porque utiliza caminhos relativos para plugins e perfis. O lançador esconde esse detalhe e permite que <code>lynis audit system</code> funcione a partir de qualquer diretório."
|
||||
},
|
||||
"detection": {
|
||||
"heading": "Caminhos de detecção",
|
||||
"intro": "Antes de mostrar o menu, o script verifica três locais para decidir se Lynis já está presente:",
|
||||
"items": [
|
||||
"<code>/usr/local/bin/lynis</code> — invólucro instalado por ProxMenux",
|
||||
"<code>/opt/lynis/lynis</code> — caminho direto (caso o invólucro tenha sido removido)",
|
||||
"<code>/usr/bin/lynis</code> — versão apt-instalada, se o usuário a instalou dessa forma anteriormente"
|
||||
],
|
||||
"outro": "Se encontrar um destes caminhos, abre o menu de gestão. O script <strong>não</strong> desinstala Lynis instalado por apt; remove apenas o que gere em <code>/opt/lynis</code> e o respetivo lançador."
|
||||
},
|
||||
"audit": {
|
||||
"heading": "Executar uma auditoria",
|
||||
"intro": "No menu de gestão escolha <strong>Executar auditoria de segurança agora</strong>. Equivale a executar:",
|
||||
"code": "lynis audit system --no-colors",
|
||||
"outro": "A auditoria demora de 30 segundos a alguns minutos conforme a dimensão do anfitrião. A saída aparece diretamente no terminal, sem animação de espera. Lynis organiza os controlos por categoria e marca cada teste como <ok>[ OK ]</ok>, <warn>[ WARNING ]</warn> ou <sugg>[ SUGGESTION ]</sugg>. O resumo final apresenta os números principais:",
|
||||
"summary": "================================================================================\n\n Lynis security scan details:\n\n Hardening index : 76 [############ ]\n Tests performed : 247\n Plugins enabled : 0\n\n Components:\n - Firewall [V]\n - Malware scanner [X]\n\n Lynis modules:\n - Compliance status [?]\n - Security audit [V]\n - Vulnerability scan [V]\n\n================================================================================"
|
||||
},
|
||||
"report": {
|
||||
"heading": "Ler o relatório",
|
||||
"intro": "As duas seções importantes são <strong>Avisos</strong> (coisas que você deve corrigir em breve) e <strong>Sugestão</strong> (recomendações para melhorar o endurecimento). Cada item carrega um ID de controle como <code>SSH-7408</code> — útil ao pesquisar os documentos Lynis para a lógica e a correção.",
|
||||
"headerMarker": "Marcador",
|
||||
"headerMeaning": "Significado",
|
||||
"headerAction": "Ação",
|
||||
"rows": [
|
||||
{
|
||||
"markerRich": "<strong>OK</strong>",
|
||||
"meaning": "Passado o teste",
|
||||
"action": "Nada."
|
||||
},
|
||||
{
|
||||
"markerRich": "<strong>WARNING</strong>",
|
||||
"meaning": "Problema real, correção recomendada",
|
||||
"action": "Leia a descrição do controle, planeje uma correção"
|
||||
},
|
||||
{
|
||||
"markerRich": "<strong>SUGGESTION</strong>",
|
||||
"meaning": "Melhoria do endurecimento disponível",
|
||||
"action": "Aplicar se se encaixa no seu modelo de ameaça"
|
||||
}
|
||||
],
|
||||
"outro": "Relatório completo e dados legíveis por máquina são escritos para <code>/var/log/lynis.log</code> e <code>/var/log/lynis-report.dat</code> pelo próprio Lynis."
|
||||
},
|
||||
"pairFail2ban": {
|
||||
"title": "Combinar com Fail2Ban",
|
||||
"body": "SSH-7408 (MaxAuthTries) é uma das advertências mais comuns. Instalar o <link>Fail2Ban</link> da ProxMenux o limpa automaticamente porque o instalador configura o <code>MaxAuthTries=3</code> como parte da sua etapa de endurecimento do SSH. Corra Lynis novamente depois para confirmar que o aviso se foi."
|
||||
},
|
||||
"update": {
|
||||
"heading": "Actualizar o Lynis",
|
||||
"body": "No menu, <strong>Atualizar Lynis para a versão mais recente</strong> executa <code>git pull --quiet</code> em <code>/opt/lynis</code>. Se o diretório existir mas não for uma cópia de trabalho Git, por exemplo após copiar ficheiros manualmente, o script reinstala por completo."
|
||||
},
|
||||
"reinstall": {
|
||||
"heading": "Reinstalar / desinstalar",
|
||||
"headerAction": "Ação",
|
||||
"headerWhat": "O que ele faz",
|
||||
"rows": [
|
||||
{
|
||||
"actionRich": "<strong>Reinstalar</strong>",
|
||||
"whatRich": "Remove <code>/opt/lynis</code>, clona novamente do GitHub e recria o lançador. Utilize se a cópia local estiver danificada."
|
||||
},
|
||||
{
|
||||
"actionRich": "<strong>Remover</strong>",
|
||||
"whatRich": "Exclui <code>/opt/lynis</code> e <code>/usr/local/bin/lynis</code>. Os logs em <code>/var/log/lynis*</code> são mantidos (são histórico de auditoria). Um Lynis apt-instalado em <code>/usr/bin/lynis</code> é deixado intocado."
|
||||
}
|
||||
]
|
||||
},
|
||||
"cli": {
|
||||
"heading": "Opções CLI úteis",
|
||||
"intro": "Uma vez instalado, Lynis pode ser invocado diretamente de uma shell com opções extras não expostas pelo menu:",
|
||||
"code": "lynis show version # version + build date\nlynis show commands # list every available command\nlynis show details TEST-ID # explain a specific control\nlynis audit system --quick # skip slow tests (e.g. malware scan)\nlynis audit system --pentest # treat host as untrusted (more aggressive)\nlynis update info # check if a newer Lynis is available\n\n# Filter the report log for just the warnings\ngrep \"Warning\" /var/log/lynis.log\n\n# Same, for suggestions only\ngrep \"Suggestion\" /var/log/lynis.log"
|
||||
},
|
||||
"troubleshoot": {
|
||||
"heading": "Resolução de Problemas",
|
||||
"cloneTitle": "git clone falha durante a instalação",
|
||||
"cloneBody": "O host precisa de acesso à rede e DNS para alcançar <code>github.com</code>. A partir de um console: <code>curl -sI https://github.com</code> e <code>git ls-remote https://github.com/CISOfy/lynis.git</code> irá revelar o erro real (DNS, TLS, proxy, URL repo). Se for necessário um proxy, defina <code>https_proxy</code> no ambiente antes de executar novamente o menu.",
|
||||
"notFoundTitle": "lynis: comando não encontrado após a instalação",
|
||||
"notFoundIntro": "O lançador <code>/usr/local/bin/lynis</code> não foi criado ou foi removido. A solução mais rápida é reinstalar a partir do menu. Correção manual:",
|
||||
"notFoundCode": "cat > /usr/local/bin/lynis <<'EOF'\n#!/bin/bash\ncd /opt/lynis && ./lynis \"$@\"\nEOF\nchmod +x /usr/local/bin/lynis",
|
||||
"sshTitle": "A auditoria mostra \"Warning: Test SSH-7408 — MaxAuthTries set incorrectly\"",
|
||||
"sshIntro": "O servidor SSH permite demasiadas tentativas de autenticação por ligação. Instale o <link>Fail2Ban</link> do ProxMenux (que define o <code>MaxAuthTries=3</code> automaticamente) ou edite o <code>/etc/ssh/sshd_config</code> à mão:",
|
||||
"sshCode": "sed -i 's/^#?MaxAuthTries.*/MaxAuthTries 3/' /etc/ssh/sshd_config\nsystemctl reload sshd",
|
||||
"scoreTitle": "A pontuação caiu após uma atualização do Proxmox",
|
||||
"scoreBody": "Executar <code>lynis update info</code> primeiro — uma atualização Lynis pode ter adicionado novos controles que sinalizam a configuração existente. Atualizar Lynis do menu, reauditar e abordar as novas descobertas."
|
||||
},
|
||||
"files": {
|
||||
"heading": "Ficheiros gravados",
|
||||
"code": "/opt/lynis/ # full Lynis git checkout\n/usr/local/bin/lynis # wrapper script (cd + exec)\n/var/log/lynis.log # human-readable audit log (Lynis itself)\n/var/log/lynis-report.dat # machine-readable report (Lynis itself)"
|
||||
},
|
||||
"sample": {
|
||||
"heading": "Relatório de exemplo",
|
||||
"intro": "O ProxMenux Monitor gera um PDF de várias páginas para cada execução do Lynis no <link>separador Segurança</link>. A primeira página resume a pontuação de reforço, informações do sistema e estado da segurança. As seguintes explicam cada aviso, ordenam sugestões por impacto e incluem o inventário de pacotes utilizado na auditoria.",
|
||||
"imageAlt": "Primeira página do Lynis Security Audit Report PDF — resumo executivo com índice de endurecimento 71/100, bloco de informações do sistema e visão geral da postura de segurança com firewall, scanner de malware e contagem de pacotes instalados",
|
||||
"captionPrefix": "Primeira página de um relatório de amostra. O PDF completo (",
|
||||
"captionLink": "amostra",
|
||||
"captionSuffix": ") continua com advertências detalhadas, sugestões e a lista de pacotes instalados.",
|
||||
"cli": "No lado CLI os mesmos dados estão em <code>/var/log/lynis-report.dat</code> (arquivo plano legível por máquina) e <code>/var/log/lynis.log</code> (o log de execução legível por humanos). O PDF é gerado sob demanda pelo ProxMenux Monitor — executar o <code>lynis</code> a partir da linha de comando não produz um."
|
||||
},
|
||||
"related": {
|
||||
"heading": "Relacionado",
|
||||
"items": [
|
||||
{
|
||||
"href": "/docs/monitor/dashboard/security",
|
||||
"label": "ProxMenux Monitor → Guia de segurança",
|
||||
"tail": " — executar a auditoria, procurar relatórios históricos e baixar o PDF diretamente do painel."
|
||||
},
|
||||
{
|
||||
"href": "/docs/security/fail2ban",
|
||||
"label": "Fail2Ban",
|
||||
"tailRich": " — implementa a proteção SSH à força bruta que Lynis recomenda."
|
||||
},
|
||||
{
|
||||
"href": "/docs/security",
|
||||
"label": "Visão geral da segurança",
|
||||
"tail": " — voltar ao panorama da secção."
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,169 @@
|
||||
{
|
||||
"meta": {
|
||||
"title": "HTTPS para ProxMenux Monitor — certificado do anfitrião Proxmox ou caminhos personalizados | ProxMenux",
|
||||
"description": "Disponibilize o ProxMenux Monitor por HTTPS com o certificado do anfitrião Proxmox (detetado automaticamente, incluindo Let’s Encrypt instalado pelo ACME do Proxmox) ou um certificado personalizado em qualquer caminho do disco.",
|
||||
"ogTitle": "HTTPS para ProxMenux Monitor — Host Proxmox ou certificado personalizado",
|
||||
"ogDescription": "Habilite o HTTPS na porta 8008 com o certificado de host Proxmox ou qualquer par personalizado .pem / .key."
|
||||
},
|
||||
"header": {
|
||||
"title": "HTTPS para ProxMenux Monitor",
|
||||
"description": "Ative HTTPS para o Monitor na porta 8008 com o certificado do anfitrião Proxmox detetado automaticamente ou um certificado personalizado no disco. A opção Proxmox prefere o certificado ACME, se existir, e reutiliza Let’s Encrypt gerido pelo Proxmox sem outra tarefa de renovação.",
|
||||
"section": "Segurança"
|
||||
},
|
||||
"intro": {
|
||||
"title": "O que esta página cobre",
|
||||
"body": "Como mudar o Monitor de HTTP para HTTPS no painel Configurações → Painel de segurança, o que cada fonte de certificado realmente aponta no disco, como a opção Proxmox se comporta quando o host tem um certificado Let's Encrypt, e como definir caminhos personalizados se você gerenciar certs fora do Proxmox."
|
||||
},
|
||||
"wheresetting": {
|
||||
"heading": "Onde se encontra a configuração",
|
||||
"body": "Abra o Monitor e vá a <strong>Configurações → Segurança → HTTPS / SSL</strong>. O painel mostra HTTP ou HTTPS e, se HTTPS ainda estiver desativado, as fontes de certificados detetadas.",
|
||||
"imageAlt": "Configurações → Segurança → Painel HTTPS / SSL no Monitor mostrando o estado HTTPS-off, o certificado Proxmox auto-detectado (sujeito, emissor, expiração) e a opção Use Custom Certificate",
|
||||
"caption": "Painel Configurações → Segurança → HTTPS / SSL antes da ativação. O Monitor mostra o certificado utilizado pelo Proxmox e permite escolhê-lo com um clique."
|
||||
},
|
||||
"twoways": {
|
||||
"heading": "Duas maneiras de ativar o HTTPS",
|
||||
"proxmox": {
|
||||
"title": "Usar certificado Proxmox",
|
||||
"summary": "Um clique: o Monitor reutiliza o certificado apresentado pelo Proxmox VE na porta 8006.",
|
||||
"items": [
|
||||
"Detetado automaticamente, sem introduzir caminhos",
|
||||
"Prefere o certificado ACME, se existir; caso contrário usa o certificado autoassinado predefinido",
|
||||
"O Proxmox renova; o Monitor valida e carrega o certificado na próxima nova ligação TLS"
|
||||
]
|
||||
},
|
||||
"custom": {
|
||||
"title": "Usar certificado personalizado",
|
||||
"summaryRich": "Aponte o monitor em um par <code>.pem</code> / <code>.key</code> em qualquer lugar no disco.",
|
||||
"items": [
|
||||
"Apenas caminhos absolutos (o processo Monitor deve ser capaz de ler ambos)",
|
||||
"Útil para certificados de <code>certbot</code>, <code>acme.sh</code> ou certificados wildcard",
|
||||
"A renovação fica a seu cargo: reinicie o Monitor quando os ficheiros mudarem"
|
||||
]
|
||||
}
|
||||
},
|
||||
"proxmoxCert": {
|
||||
"heading": "Certificado Proxmox — o que ele realmente aponta",
|
||||
"intro": "Proxmox VE mantém dois pares de certificados em <code>/etc/pve/local/</code>:",
|
||||
"table": {
|
||||
"headers": {
|
||||
"file": "Arquivo",
|
||||
"origin": "Origem",
|
||||
"when": "Quando o Monitor o usa"
|
||||
},
|
||||
"rows": [
|
||||
{
|
||||
"fileRich": "<code>pveproxy-ssl.pem</code><br /><code>pveproxy-ssl.key</code>",
|
||||
"originRich": "Certificado personalizado carregado através da UI Proxmox — incluindo o certificado Let's Encrypt emitido sob <em>Datacenter → Node → Certificados → ACME</em>.",
|
||||
"when": "Preferido quando ambos os ficheiros existem; o Monitor utiliza o certificado apresentado pelo Proxmox."
|
||||
},
|
||||
{
|
||||
"fileRich": "<code>pve-ssl.pem</code><br /><code>pve-ssl.key</code>",
|
||||
"originRich": "Certificado autoassinado gerado no momento da instalação pelo Proxmox PKI.",
|
||||
"whenRich": "Alternativa quando não existe <code>pveproxy-ssl.pem</code>."
|
||||
}
|
||||
]
|
||||
},
|
||||
"callout": {
|
||||
"title": "A mesma prioridade que o próprio Proxmox",
|
||||
"bodyRich": "<code>pveproxy</code> aplica a mesma seleção. Com a opção Proxmox, o Monitor utiliza o certificado apresentado pela interface Proxmox em 8006, sem cópias nem processo de renovação separado."
|
||||
}
|
||||
},
|
||||
"letsencrypt": {
|
||||
"heading": "Obtendo um certificado Let's Encrypt via Proxmox ACME",
|
||||
"intro": "O Proxmox VE inclui o seu cliente ACME. <em>«Order Certificate Now»</em> guarda o resultado em <code>/etc/pve/local/pveproxy-ssl.pem</code>, que o Monitor lê. Os cinco passos seguintes resumem o <extlink1>guia oficial do Proxmox</extlink1> nos comandos necessários.",
|
||||
"prereqs": {
|
||||
"title": "Pré-requisitos",
|
||||
"items": [
|
||||
"O nó tem um verdadeiro nome DNS (não apenas um IP) apontando para ele.",
|
||||
"<strong>Ou</strong> porta 80 acessível a partir da Internet (validação HTTP-01, a mais simples), <strong>ou</strong> fornecedor DNS com credenciais API (DNS-01, funciona atrás de NAT e suporta certificados wildcard).",
|
||||
"Um endereço de email para a conta ACME."
|
||||
]
|
||||
},
|
||||
"step1": {
|
||||
"heading": "Etapa 1 — Registo da conta ACME",
|
||||
"introRich": "Substitua o email pelo seu. O nome da conta <code>default</code> é apenas um rótulo — você pode usar qualquer string.",
|
||||
"code": "pvenode acme account register default you@example.com",
|
||||
"afterRich": "A Proxmox pede que você aceite os termos de serviço Let's Encrypt. Depois disso, a conta é persistida em <code>/etc/pve/priv/acme/</code> e a guia ACME na GUI irá mostrá-la."
|
||||
},
|
||||
"step2": {
|
||||
"heading": "Passo 2 — Escolha um tipo de desafio",
|
||||
"http01Rich": "<strong>HTTP-01</strong> é o mais fácil: é embutido, sem plugin extra. O Let's Encrypt conecta-se ao <code>http://<your-host>/.well-known/acme-challenge/...</code> na porta 80, então a porta 80 deve estar aberta da internet pública ao seu nó — normalmente uma porta para frente no seu roteador.",
|
||||
"dns01Rich": "<strong>DNS-01</strong> funciona sem expor o porto 80 (bom para homelabs atrás do CG-NAT) e é a única opção para certificados wildcard. Você adiciona um plugin DNS uma vez com o token API do seu provedor. Exemplo Cloudflare:",
|
||||
"code": "pvenode acme plugin add dns cf \\\n --api cloudflare \\\n --data CF_Token=YOUR_CLOUDFLARE_API_TOKEN",
|
||||
"outroRich": "Para outros fornecedores (Gandi, OVH, AWS Route 53, etc.), consulte <code>pvenode acme plugin add dns --help</code>. O Proxmox inclui <extlink2>todos os plugins DNS do acme.sh</extlink2>."
|
||||
},
|
||||
"step3": {
|
||||
"heading": "Passo 3 — Ligar o domínio ao seu nó",
|
||||
"http01Rich": "Para o HTTP-01 (usa o plug- in incorporado do <code>standalone</code>):",
|
||||
"code1": "pvenode config set --acme domains=host.example.com,account=default",
|
||||
"dns01": "Para DNS-01 com o plugin Cloudflare do Passo 2:",
|
||||
"code2": "pvenode config set --acmedomain0 domain=host.example.com,plugin=cf\npvenode config set --acme account=default",
|
||||
"wildcardRich": "Wildcard? Adicionar <code>domain=*.example.com</code> em uma entrada separada <code>--acmedomainN</code>. Wildcards requerem DNS-01."
|
||||
},
|
||||
"step4": {
|
||||
"heading": "Passo 4 — Ordenar o certificado",
|
||||
"code": "pvenode acme cert order",
|
||||
"afterRich": "A primeira execução normalmente leva 30–60 segundos enquanto o desafio se propaga. No sucesso Proxmox escreve <code>/etc/pve/local/pveproxy-ssl.pem</code> + <code>.key</code>, reinicia <code>pveproxy</code>, e um cron de renovação é agendado automaticamente (Let's Encrypt certs são válidos 90 dias; Proxmox renova em 60)."
|
||||
},
|
||||
"step5": {
|
||||
"heading": "Etapa 5 — Verificar o emitente",
|
||||
"code": "openssl x509 -in /etc/pve/local/pveproxy-ssl.pem -noout -issuer",
|
||||
"afterRich": "Deve imprimir um emissor começando com <code>O = Let's Encrypt</code>. Se em vez disso ele lê <code>CN = Proxmox Virtual Environment</code> a ordem falhou e o arquivo ainda é o certificado PVE auto-assinado — re-executar <code>pvenode acme cert order --debug 1</code> para ver porquê."
|
||||
},
|
||||
"gui": {
|
||||
"title": "Preferes a GUI? Os mesmos cinco passos",
|
||||
"bodyRich": "<em>Datacenter → ACME</em> regista a conta; <em>Datacenter → ACME → Plugins</em> adiciona o plugin DNS; <em>Node → Certificates → ACME</em> associa o domínio; <em>Order Certificates Now</em> executa o passo 4. Os comandos anteriores são úteis para scripts e sistemas sem interface gráfica."
|
||||
}
|
||||
},
|
||||
"switchToHttps": {
|
||||
"heading": "Mudar o monitor para HTTPS",
|
||||
"bodyRich": "Quando <code>/etc/pve/local/pveproxy-ssl.pem</code> estiver assinado por Let's Encrypt, abra <strong>Configurações → Segurança → HTTPS / SSL</strong>, confirme que o emissor é <em>Let's Encrypt</em> e não a CA local Proxmox, e clique em <strong>Usar certificado Proxmox</strong>. O Monitor reinicia e o próximo carregamento utiliza HTTPS em 8008 com uma cadeia de confiança pública. As renovações ACME seguintes são validadas e selecionadas na próxima nova ligação TLS, sem consultas periódicas nem reinício por renovação. <strong>Atualizar certificado</strong> continua disponível em Segurança para diagnóstico e recuperação."
|
||||
},
|
||||
"custom": {
|
||||
"heading": "Certificado personalizado — quando usá-lo",
|
||||
"intro": "Clique em <strong>Usar certificado personalizado</strong> e introduza dois caminhos absolutos:",
|
||||
"items": [
|
||||
"<strong>Certificado</strong> — cadeia completa em PEM (<code>.pem</code> ou <code>.crt</code>).",
|
||||
"<strong>Chave privada</strong>: chave correspondente em PEM (<code>.key</code>)."
|
||||
],
|
||||
"outro": "Ambos os arquivos são lidos pelo processo Monitor na inicialização. Certifique-se de que eles permanecem legíveis pelo usuário que a unidade systemd executa como (root por padrão). Locais comuns quando o ACME é administrado fora do Proxmox:",
|
||||
"code": "# certbot\n/etc/letsencrypt/live/<your-host>/fullchain.pem\n/etc/letsencrypt/live/<your-host>/privkey.pem\n\n# acme.sh\n~/.acme.sh/<your-host>_ecc/fullchain.cer\n~/.acme.sh/<your-host>_ecc/<your-host>.key",
|
||||
"symlinkCallout": {
|
||||
"title": "Alvos do Symlink vs. arquivos",
|
||||
"bodyRich": "<code>certbot</code> armazena os arquivos reais em <code>/etc/letsencrypt/archive/</code> e o caminho <code>live/</code> é um link simbólico. Aponte o Monitor no link simbólico <code>live/</code>, não no arquivo <code>archive/</code> — dessa forma cada ciclo de renovação simplesmente reescreve o alvo do link simbólico e o Monitor capta o novo certificado no próximo início do serviço."
|
||||
}
|
||||
},
|
||||
"afterHttps": {
|
||||
"heading": "Após activar o HTTPS",
|
||||
"bodyRich": "Salvar a mudança escreve <code>/etc/proxmenux/ssl_config.json</code> e ativa um reinício da unidade <code>proxmenux-monitor</code> systemd. A guia do navegador perderá sua conexão atual — recarregue-a no <code>https://<host>:8008/</code>. A primeira carga com um certificado Let's Encrypt não deve mostrar nenhum aviso; com o certificado auto-assinado Proxmox o navegador exigirá uma exceção, a mesma que para porta 8006.",
|
||||
"reverse": {
|
||||
"heading": "Proxies inversos e webhooks",
|
||||
"bodyRich": "Quando o Monitor muda para HTTPS, as URLs Proxmox VE webhook registradas para notificações também passam de <code>http://</code> para <code>https://</code> automaticamente. Entradas webhook existentes são reescritas da próxima vez que uma regra de notificação for salva ou redetectada, então nenhuma edição manual da configuração de notificação Proxmox é necessária."
|
||||
}
|
||||
},
|
||||
"trustCa": {
|
||||
"heading": "Confiar na CA autoassinada do Proxmox",
|
||||
"intro1Rich": "Para manter o certificado Proxmox predefinido sem ACME, importe a CA raiz do cluster para o repositório de confiança do sistema ou do navegador. O Monitor deteta <code>/etc/pve/local/pve-ssl.pem</code> como certificado de recurso. O cliente passa a confiar no emissor; o URL tem ainda de corresponder a um nome do certificado.",
|
||||
"intro2Rich": "O arquivo CA vive em <code>/etc/pve/pve-root-ca.pem</code> em cada nó. Em um cluster, o caminho está no sistema de arquivos <code>pmxcfs</code> compartilhado, então todos os nós compartilham a mesma raiz, e uma única importação cobre todo o datacenter. Copie para a sua máquina:",
|
||||
"code": "scp root@<your-host>:/etc/pve/pve-root-ca.pem ./pve-root-ca.pem",
|
||||
"thenImport": "Depois importa-o do lado do cliente:",
|
||||
"items": [
|
||||
"<strong>Linux (todo o sistema):</strong> execute <code>sudo cp pve-root-ca.pem /usr/local/share/ca-certificates/pve-root-ca.crt</code> e depois <code>sudo update-ca-certificates</code>. Os navegadores que utilizam o repositório de certificados do sistema (Chromium, Edge) reconhecem a CA após reiniciar; Firefox usa um repositório próprio e requer a importação manual abaixo.",
|
||||
"<strong>macOS:</strong> abra o ficheiro <code>.pem</code> com duplo clique no Acesso a Porta-chaves, adicione-o ao porta-chaves <em>Sistema</em> e defina <em>Confiança → Confiar sempre</em>.",
|
||||
"<strong>Windows:</strong> clique com o botão direito no ficheiro → <em>Instalar certificado</em> → coloque-o em <em>Autoridades de certificação de raiz fidedigna</em>.",
|
||||
"<strong>Firefox (qualquer SO):</strong> <em>Configurações → Privacidade e segurança → Certificados → Ver certificados → Autoridades → Importar</em>; selecione <em>Confiar nesta CA para identificar sites</em>."
|
||||
],
|
||||
"standalone": {
|
||||
"title": "Nós autônomos fora de um cluster",
|
||||
"bodyRich": "Cada host Proxmox não-aglomerado tem seu próprio <code>pve-root-ca.pem</code>. Se você gerenciar vários hosts autônomos, repita a cópia/importação para cada um, ou junte-os a um cluster para que eles compartilhem uma única raiz."
|
||||
}
|
||||
},
|
||||
"disable": {
|
||||
"heading": "Desactivando o HTTPS",
|
||||
"bodyRich": "Clique em <strong>Desativar HTTPS</strong> no mesmo painel. O Monitor reinicia com HTTP sem cifragem, útil se um certificado personalizado ilegível impedir o arranque. Não existe outro passo de desinstalação e os ficheiros de certificados não são alterados.",
|
||||
"stateCallout": {
|
||||
"title": "Onde é guardado o estado",
|
||||
"bodyRich": "<code>/etc/proxmenux/ssl_config.json</code> armazena os caminhos do certificado ativo e a fonte (<code>none</code>, <code>proxmox</code>, <code>custom</code>). Excluir o arquivo é equivalente a desativar o HTTPS — no início seguinte o Monitor cai para o HTTP."
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user