Protegendo o sistema de arquivos para o servidor SFTP seguro

12

Isso pode não parecer uma questão de desenvolvimento, mas em essência é. Deixe-me explicar como. Nosso principal foco de desenvolvimento é páginas de conteúdo dinâmico. Alguns de nossos clientes nos pediram para permitir espaço em nossos servidores (que pagam) por seu conteúdo estático antigo. Usamos isso para oferecer ao cliente uma conta de ftp para um domínio diferente. (por exemplo, o domínio do cliente é customer.com, mas eles acessavam o conteúdo estático por meio de otherdomain.com/customerstatic).

Agora queremos aumentar a segurança dando aos clientes contas sftp em seus servidores linux. Eu estou usando o openssh / sftp-server em seu ambiente de shell para que eles não consigam efetuar login ou executar comandos.

O problema é que, por natureza, muitos arquivos do sistema de arquivos são, por padrão (drwxr-xr-x), o que significa que qualquer usuário poderá ler o conteúdo do diretório e possivelmente alguns arquivos. Eu não acho que mudar todo o sistema de arquivos para -rwxr-x-x é uma medida acertada, pois não sei quantos arquivos de sistema precisarão dessa permissão de leitura.

Alguém já enfrentou esse problema no passado. Se você tem, você poderia esclarecer o caminho?

Obrigado

    
por 3 revs, 2 users 67%anon 27.05.2009 / 18:26

4 respostas

22

O SFTP por natureza não é inseguro; deixá-los em todo o seu sistema de arquivos é. Verifique isso para ver como você pode ativar o acesso SFTP em uma base chroot , que bloqueará os diretórios aos quais eles podem acessar, digamos, seus diretórios pessoais ou onde quer que eles façam upload.

No Linux, eu prestaria atenção a essa parte (configurando o / etc / ssh / sshd_config):

  Match Group sftponly
         ChrootDirectory %h
         ForceCommand internal-sftp 
         AllowTcpForwarding no

Isso significa que qualquer pessoa no grupo de usuários 'sftponly' estaria restrita a seus diretórios pessoais.

Veja o link para mais, e também leia a página man do sshd_config. Espero que ajude.

    
por 27.05.2009 / 17:25
1

Isso pode ser de interesse - link

Permitindo restringir alguns usuários apenas ao scp - e também, opcionalmente, fazendo o chroot deles.

    
por 27.05.2009 / 17:50
1

Quando você diz "Muitos sistemas de arquivos são, por padrão, 755 permissões", isso na verdade significa que o umask padrão é 022. Você pode alterar esse padrão (para novos arquivos ) configurando o umask para 027, o que tornaria as permissões padrão 750, ou configuraria o umask para 007, o que tornaria as permissões padrão 770.

    
por 27.05.2009 / 18:09
0

Você pode considerar a configuração de um servidor OpenVZ e, em seguida, a criação de um "container" de ftp / sftp de pequena VM separado para cada empresa. Isso os mantém separados, e assim que você pegar o jeito do OpenVZ, é muito útil para esse tipo de coisa pequena.

    
por 27.05.2009 / 17:43