Como definir permissões e propriedade do servidor sftp em uma pasta compartilhada sftp? (ACL's?)

4

Eu preciso de uma configuração especializada para que o nosso servidor sftp da empresa possa trocar arquivos com nossos clientes de maneira segura (o servidor executa o Debian Linux 8.7).

  • Precisamos de uma pasta "clientes" em que todo o nosso pessoal de suporte (cada um com uma conta de usuário separada) tenha acesso de leitura / gravação.
  • Na pasta "clientes", precisamos de uma subpasta para cada um de nossos clientes.
  • Cada cliente também tem sua própria conta de usuário no servidor.
  • Os "usuários de suporte" devem ser "chrooted" na pasta "clientes".
  • Cada "usuário do cliente" deve ser chrooted em seu próprio diretório.
  • O método de autenticação deve ser via certificado protegido por frase secreta (não por senha)
  • Nem os usuários de suporte nem os usuários do cliente devem poder adicionar, alterar ou remover arquivos e / ou pastas na pasta superior (clientes)
customers  <--------- All support personel entry point
  |  
  +--customer_001  <-------- Customer 1 entry point
  |        |  
  |        +--files...  
  |  
  +--customer_002  <-------- Customer 2 entry point
  |        |  
  |        +--files...  
  |  
  +--customer_003  <-------- Customer 3 entry point
  |        |  
  |        +--files...  
  .  
  .  
  .

Eu configurei o sshd da seguinte forma:

[...]
PasswordAuthentication yes
[...]

# Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp

[...]

Match Group kunden
  ChrootDirectory %h
  ForceCommand internal-sftp

Match Group wit-user
  ChrootDirectory /var/sftp/customers
  ForceCommand internal-sftp
  • Os "usuários clientes" são configurados de forma que seus diretórios pessoais sejam o diretório correspondente em "clientes".
  • Os "usuários de suporte" são configurados, que o diretório inicial é a pasta "clientes" (embora não tenha certeza, se isso é importante ou até mesmo correto)

Meu problema é que não sei como configurar a propriedade e as permissões nas pastas e arquivos. Até onde entendi, o servidor "internal-sftp" precisa de root: root ownership em seu diretório-raiz (ch). Como o diretório raiz é em ambos os casos diferentes:

  • Como preciso configurar permissões de arquivo / diretório?

  • Como preciso configurar a propriedade em arquivos e diretórios?

  • Como devo lidar com as pastas ~ / .ssh para os diferentes usuários quando a pasta base é o diretório sftp chroot correspondente (se esta é uma solução correta)?

  • Preciso de ACLs para isso? Em caso afirmativo: como devo configurá-lo para atender aos requisitos mencionados acima?

Eu tentei esta (entrada do wiki ubunutusers.de em alemão sobre "sshd-configuration") mas somente isso resolve a parte do problema com os "usuários clientes" e não com os "usuários de suporte".

    
por Shoobdidoo 12.09.2017 / 08:55

0 respostas