Como ter várias diretivas AuthUserFile no proftpd.conf [closed]

3

No meu CentOS, onde o CPanel está instalado no proftpd.conf, consigo ver a diretiva

AuthUserFile /etc/proftpd/passwd.vhosts

Eu queria adicionar mais uma diretiva AuthUserFile , então o Profptd usa mais um arquivo para pesquisar os usuários ao lado de /etc/proftpd/passwd.vhosts então adicionei mais uma linha abaixo de AuthUserFile

AuthUserFile /home/public_html/cgi-bin/ftp/ftp.users

mas parece que não está usando minha nova diretiva AuthUserFile

Alguém pode me ajudar a fazer o Proftpd procurar outro arquivo para usuários além deste /etc/proftpd/passwd.vhosts

Como você sugeriu, adicionei isso no proftpd.conf e iniciei o daemon Proftpd no modo de depuração, mas ainda assim ele não está usando este arquivo.

<VirtualHost www8.example.com>
  ServerName                    "www8.example.com's FTP Server"

  MaxClients                    40
  MaxLoginAttempts              3


  DeferWelcome                  on

  AuthUserFile /home/xxx/public_html/cgi-bin/ftp/ftp.users

</VirtualHost>

aqui está o log de depuração:

- dispatching CMD command 'AUTH TLS' to mod_tls
 - dispatching LOG_CMD command 'AUTH TLS' to mod_log
 - dispatching PRE_CMD command 'USER testuser' to mod_tls
 - dispatching PRE_CMD command 'USER testuser' to mod_core
 - dispatching PRE_CMD command 'USER testuser' to mod_delay
 - dispatching PRE_CMD command 'USER testuser' to mod_auth
 - dispatching CMD command 'USER testuser' to mod_auth
 - dispatching POST_CMD command 'USER testuser' to mod_delay
 - dispatching LOG_CMD command 'USER testuser' to mod_log
 - dispatching PRE_CMD command 'PASS (hidden)' to mod_tls
 - dispatching PRE_CMD command 'PASS (hidden)' to mod_core
 - dispatching PRE_CMD command 'PASS (hidden)' to mod_wrap
 - dispatching PRE_CMD command 'PASS (hidden)' to mod_delay
 - dispatching PRE_CMD command 'PASS (hidden)' to mod_auth
 - dispatching CMD command 'PASS (hidden)' to mod_auth
 - mod_auth_file/0.9: using passwd file '/etc/proftpd/passwd.vhosts'
 - USER testuser: no such user found from 117.x.x.x
    
por chown 28.06.2015 / 09:39

1 resposta

3

De acordo com a documentação , você pode ter várias AuthUserFile -diretrizes se as tiver em diferentes VirtualHosts. Não me parece que o que você está fazendo é suportado.

Existem outras maneiras de conseguir o que você está tentando:

  • mesclar os dois arquivos (manualmente ou automaticamente pelo cron, por exemplo)
  • usa outro método de autenticação para o proftpd
    • consulte as Perguntas frequentes para obter uma lista completa.
    • O proftpd usa usuários do sistema por padrão junto com o arquivo especificado em AuthUserFile . Isso é configurado por AuthOrder

Você também pode usar o VirtualHosts, mas precisa estar ciente de como eles funcionam :

The definition of the File Transfer Protocol, unfortunately, does not (currently) support name-based virtual hosts, as HTTP1.1 supports. All FTP virtual hosts are based on unique IP address/port combinations, not on DNS names. The similarity of ProFTPD's configuration file syntax to Apache's sometimes leads users to assuming that proftpd will handle these the same way -- but more on this later. The bottom line is that ProFTPD does not support name-based virtual hosts; not because they are not implemented, but simply because the protocol itself does not support them.

    
por 28.06.2015 / 10:53