vsftpd chroot opps no Ubuntu 12.04

2

Não estou familiarizado com sistemas baseados em deb, por isso peço desculpas se a solução for simples.

Estou tentando configurar o vsftpd para prender usuários em seus diretórios pessoais. Eu recebo os 500 OOPS: vsftpd: recusando-se a rodar com root gravável dentro do chroot ()

Eu pesquiso este problema e descubro que a solução comum é usar o backport fornecido pelo thefrontiergroup da seguinte forma:

sudo add-apt-repository ppa:thefrontiergroup/vsftpd

Quando faço isso, recebo um erro de python:

You are about to add the following PPA to your system:
 vsftpd 2.3.5 with the allow_writeable_chroot feature backported from vsftpd 3.
 More info: https://launchpad.net/~thefrontiergroup/+archive/vsftpd
Press [ENTER] to continue or ctrl-c to cancel adding it

Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/dist-packages/softwareproperties/ppa.py", line 99, in run
    self.add_ppa_signing_key(self.ppa_path)
  File "/usr/lib/python2.7/dist-packages/softwareproperties/ppa.py", line 132, in  add_ppa_signing_key
    tmp_keyring_dir = tempfile.mkdtemp()
  File "/usr/lib/python2.7/tempfile.py", line 322, in mkdtemp
    name = names.next()
  File "/usr/lib/python2.7/tempfile.py", line 141, in next
    letters = [choose(c) for dummy in "123456"]
  File "/usr/lib/python2.7/random.py", line 274, in choice
    return seq[int(self.random() * len(seq))]  # raises IndexError if seq is empty
ValueError: cannot convert float NaN to integer

Tentando encontrar outra solução, eu acho uma recomendação para alterar as permissões dos diretórios home como neste artigo vsftpd - restringe os usuários ao diretório home No entanto, seguir isso levaria a muitas redefinições manuais de permissão, porque eu quero que um subdiretório de cada usuário seja acessível via apache como descrito no apache UserDir config link

No final, eu quero poder adicionar o adduser foo e magicamente acabar com a capacidade de foo ter privilégios de R / W completos em / home / foo SEM poder ver qualquer outra parte do sistema de arquivos, ter link acessível para qualquer pessoa, e acesso ao shell se eu mudar seu shell de nologin para bash.

Ubuntu 12.04 LTS, vsftpd 2.3.5

Por favor, ofereça algum conselho ... Estou preso coçando minha cabeça!

    
por Brad 20.02.2013 / 00:27

1 resposta

1

Estou apenas supondo aqui, porque a sua situação não é exatamente a mesma, mas ...

apt-get install python-software-properties

(ou talvez apt-get update python-software-properties )?

Esse foi um passo pré-requisito no sistema 12.04 que eu estava configurando, mas eu também recebi o erro "add-apt-repository: command not found", não erros de python. São esses erros que me fazem pensar que python é o seu problema, já que esse comando foi executado com sucesso para mim uma vez que eu instalei o python-software-properties.

A única outra alternativa que posso criar - tarde demais para tentar / consertar minha própria configuração - em vez de adicionar um repositório externo, seria fazer com que todos fiquem em casa / home / e modificar as permissões em todos os outros diretórios para que o único diretório que eles têm permissão para VER quando eles lêem / home / é "foo" .. Eles ainda teriam que navegar para ele ou você teria que de alguma forma script alterando seu CWD após o login, mas quando o A tela inicial não mostra nada além de "foo" e não é regravável, deve ter um impacto bastante baixo para ter que "cd foo" ou clicar na pasta foo se estiver usando uma GUI. E aparentemente isso não é tão simples como eu imaginava, eu estava pensando no IIS com permissões de NTFS quando imaginei uma configuração de permissão que determina se um diretório pode ser visto .. Eu descobri que há uma opção no vsftpd.conf chamada " hide_files, "que pode ser capaz de fazer isso com termos cuidadosamente selecionados (ele permite que você especifique um regex, mas eu não sei se você poderia fazer algo como expandir uma variável com base no login do usuário atual para torná-lo diferente para cada usuário ...)

    
por Gerald Mitchell 10.10.2013 / 23:35