Português (Brasil)

Ferramentas de desenvolvedor · Calculadora Chmod

SSH permissões muito abertas: os modos exatos que ~/.ssh precisa e por quê

· Por que é importante

chmod unix controle de acesso

material SSH privado mostrado como um diagrama de bits de permissão Unix distinto
Ilustração vetorial original ToolAcre

OpenSSH recusa chaves e arquivos autorizados_keys que outros usuários possam ler ou alterar. Esta postagem lista os modos esperados, explica a verificação de StrictModes e mostra como verificá-los.

As permissões 0644 para id_ed25519 estão muito abertas — a chave que funcionou ontem foi rejeitada após uma cópia para uma nova máquina

Uma chave privada copiada com modo 0644 é decodificada para rw-r--r--. O proprietário pode lê-lo e alterá-lo, enquanto o grupo e outros podem lê-lo. A predefinição de arquivo privado 600 renderiza rw-------, deixando essas classes vazias. Isso indica os bits com precisão, mas não pode provar por que um cliente SSH aceitou ou rejeitou a chave.

Compare o modo observado com a predefinição privada. As entradas 0644, 644 e 0o644 são equivalentes, e mudar para 600 remove a leitura de grupo e outra leitura, preservando a leitura e gravação do proprietário. O comando gerado é inerte. O comportamento do cliente, a propriedade, as ACLs e a semântica de armazenamento exigem evidências além deste conversor.

Por que o cliente verifica — uma chave privada legível por outros não é mais privada, então o ssh se recusa a confiar nela

O repositório rotula 600 “arquivo privado” e descreve o acesso somente do proprietário. Sua aritmética suporta essa descrição: 6 fornece ao proprietário leitura e gravação, enquanto ambos os zeros removem permissões comuns do grupo e de outros. O resultado simbólico é rw-------. Isso prova que as bolsas estão ausentes da modalidade, e não que o cliente as aceite.

Nenhuma mensagem de implementação, manual, configuração ou tempo de execução do OpenSSH aparece nas fontes, portanto a predefinição não pode estabelecer política de recusa. A calculadora não promete que um modo resolva todos os erros nem valide o conteúdo principal. Ele mostra de forma confiável se um candidato expõe leitura, gravação ou execução além da classe proprietária e nada mais.

O repositório rotula 600 private; a política de recusa do cliente precisa de evidências do OpenSSH

O comportamento de StrictModes não é implementado nem verificado aqui. O navegador não possui servidor SSH, inspeção de diretório inicial, pesquisa de propriedade ou entrada de configuração. Ele não pode saber se as chaves_autorizadas foram consultadas, se outra identidade pode gravar um diretório ou se uma configuração se aplica. Entrar em um modo realiza a conversão, não uma decisão do daemon ou auditoria do sistema de arquivos.

Bits precisos e política precisa são questões distintas. O modo 600 prova rw-------, enquanto 700 prova rwx------. Nenhum deles identifica propriedade, verifica diretórios pais ou modela um daemon. Colete a documentação do servidor e as evidências do sistema de arquivos de forma independente e, em seguida, use a calculadora para decodificar as observações sem apresentar sua saída como um veredicto do StrictModes ou uma auditoria de segurança completa.

O comportamento do StrictModes não é implementado ou verificado aqui

Os modos 600 e 700 são predefinições privadas enviadas. O modo 600 fornece leitura e gravação ao proprietário de arquivo normal, sem grupo ou outras permissões. O modo 700 adiciona a execução do proprietário para um diretório, permitindo entrada e acesso ao conteúdo nomeado, enquanto outras classes não recebem nada por meio de bits comuns. A calculadora ainda não conhece nenhum proprietário real.

Outras regras de arquivo relacionadas a SSH permanecem externas. Embora chaves públicas e chaves_autorizadas possam ser relevantes, o repositório não fornece requisitos verificados para elas. A calculadora pode decodificar 644 como rw-r--r-- mas não pode certificar a aceitação de SSH. Qualquer tabela de requisitos mais ampla precisa de evidências oficiais do OpenSSH ausentes dessas fontes e do artigo existente.

600 e 700 são predefinições privadas enviadas; outras regras de arquivo SSH permanecem externas

Um exemplo suportado converte strings de listagem sem auditar um diretório. Se a saída externa mostrar -rw-r--r--, o analisador retornará 644; se mostrar rw-------, retornará 600. A matriz destaca as caixas alteradas de leitura em grupo e outras leituras. Isso verifica a transcrição e a aritmética, deixando o caminho, a propriedade e a listagem de proveniência sem serem examinados.

As strings de diretório funcionam de forma semelhante. Um drwx------ fornecido torna-se 700 porque o caractere de tipo reconhecido é removido antes de analisar nove posições de permissão. O resumo pode exibir um prefixo de diretório. A página não lista ~/.ssh nem descobre arquivos, proprietários ou indicadores ACL, portanto esta conversão não deve ser descrita como uma auditoria.

Exemplo resolvido: converta strings de modo copiadas sem auditar o diretório

A perda de modo em ferramentas de transferência e sistemas de arquivos está fora da evidência do repositório. Nenhuma fonte copia arquivos, abre arquivos, monta armazenamento ou compara metadados entre locais. A calculadora não pode atribuir um 644 observado a um compartilhamento, unidade, sistema de inicialização ou utilitário de arquivamento. Ele vê apenas o modo digitado em seu campo, sem histórico de transferências.

Quando um item copiado tem um modo inesperado, compare os valores esperados e observados sem atribuir culpa. Entre 600 e 644, as permissões do proprietário permanecem inalteradas enquanto a leitura de grupo e outra leitura aparecem. O conversor suporta esse delta exato. Determinar se a transferência, preservação ou recreação causou isso requer evidências do destino e do caminho de transferência.

A perda de modo em ferramentas de transferência e sistemas de arquivos está fora da evidência do repositório

O formato da chave, o estado do agente e os logs do servidor estão fora desta calculadora. Ele analisa texto de permissão octal e simbólico, nunca chaves privadas, dados ou logs do agente ssh. Uma conversão 600 válida não diz nada sobre material criptográfico, identidades carregadas, troca de rede ou resposta do servidor. Isso prova que apenas o proprietário lê e escreve com grupos vazios e outras classes.

Este limite evita tratar cada falha SSH como trabalho chmod. Se um modo observado for diferente da predefinição privada, a calculadora mostra os bits exatos; se já corresponder, a rota não oferece mais evidências de SSH. Continuar com diagnósticos externos em vez de ampliar o acesso. A conversão bem-sucedida não é autenticação e a visualização não executa nada.

Conclusão: privado significa 600 e 700 – e a calculadora confirma que um modo que você está prestes a definir não dá nada ao grupo ou a outros

A conclusão do repositório é que 600 e 700 reservam permissões comuns para o proprietário. Suas formas simbólicas, rw------- e rwx------, não contêm nenhum grupo ou outras concessões. Octal, texto simbólico, caixas de seleção e resumo verificam essas representações, enquanto posições malformadas são rejeitadas. Nada disso prova SSH aceitação, propriedade, validade de chave ou autenticação.

Não transforme a conversão em uma política SSH universal. A rota não implementa StrictModes, inspeciona diretórios iniciais, identifica proprietários ou valida arquivos-chave. Use-o para confirmar grupos vazios e outras classes e, em seguida, confie em evidências SSH autorizadas e no sistema real. Copiar um comando exibido transfere a responsabilidade para o shell e o sistema de arquivos.