1
resposta

[Dúvida] Acesso remoto com níveis de permissões "maiores" que 400?

Não sei se faz muito sentido essa pergunta, mas...

  • É possível ter acesso remoto com outros níveis de permissões além de 400?
    • Por exemplo, 700, 600 ou 500. Pois, nesses casos, ainda é só o dono que pode ler a chave.

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Olá amigo.
Sua pergunta é interessante mesmo!
Vamos lá!
Faz todo sentido . Sim: os modos 700, 600, 500 etc. existem e têm efeitos diferentes, mas o ponto chave para o SSH é quem consegue ler/alterar os ficheiros (grupo/outros não podem). Vou resumir o que importa na prática e dar recomendações.
Para ficheiros de chave privada, os bits de execução não fazem sentido (não é um binário), mas não prejudicam a segurança se apenas o dono tiver permissão. O que importa é grupo/outros não terem permissões.

Como o SSH usa isso (prática)

  • Chave privada no cliente (~/.ssh/id_rsa, id_ed25519, etc.): o cliente SSH espera que apenas o dono consiga ler (ou ler+escrever). Modos 600 ou 400 são normalmente recomendados/aceitos.
    • chmod 600 ~/.ssh/id_rsa (recomendado)
    • chmod 400 ~/.ssh/id_rsa também funciona (mais restritivo).
  • Diretório .ssh no servidor/cliente: deve ser somente acessível ao dono : normalmente 700 (drwx------).
    • chmod 700 ~/.ssh
  • authorized_keys no servidor (~/.ssh/authorized_keys): deve ser acessível só ao dono : 600 é a recomendação.
    • chmod 600 ~/.ssh/authorized_keys
  • Home directory: se for demasiado permissivo (por ex. world-writable), o sshd pode recusar chaves; idealmente não deve permitir escrita para grupo/others.

E o sshd (servidor)?

  • O sshd verifica permissões dos ficheiros quando StrictModes yes (padrão). Se as permissões forem “inseguras” (por ex. grupo/outros com escrita/leitura) ele poderá recusar autenticação por chave.
  • Você poderia desligar essa verificação (StrictModes no) no sshd_config, mas não é recomendado: abre risco de segurança.

Exemplos de comandos úteis

# no cliente (chave privada)
chmod 600 ~/.ssh/id_rsa      # recomendado
# ou
chmod 400 ~/.ssh/id_rsa      # também aceitável
# no servidor (diretório e authorized_keys)
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
# garantir propriedade correta
chown -R usuario:usuario ~/.ssh

Sobre modos 500/700 com chaves

  • 500 (r-x) dá permissão de execução ao ficheiro — desnecessário para chaves, não acrescenta segurança.
  • 700 (rwx) também inclui bit de execução; igualmente desnecessário mas não faz com que o SSH recuse desde que grupo/outros não tenham permissão.
  • 600 e 400 são semanticamente mais corretos para chaves privadas.

Sistemas de ficheiros remotos (NFS) ou com ACLs/SELinux podem introduzir comportamentos diferentes.
Aí convém verificar logs (/var/log/auth.log ou journalctl -u sshd) se algo falhar.
Se a autenticação falhar por causa de permissões, o log do sshd normalmente explica (“Authentication refused: bad ownership or modes for file ...”).
Espero que tenha respondido sua pergunta senão comente ai.
Comente ai de qualquer jeito.
Bons estudos.