Nesta dica colocarei a instalação e configuração básica do
Proftp autenticando a uma base
OpenLDAP e fazendo um filtro por um grupo específico.
Entendendo que você já possui uma base LDAP configurada e funcionando
No
Debian vamos instalar:
# apt-get install proftpd proftpd-mod-ldap
Em seguida editamos o arquivo "/etc/proftpd/ldap.conf" com o seguinte conteúdo:
<IfModule mod_ldap.c>
LDAPServer 192.168.35.228:389
LDAPAuthBinds on
LDAPDNInfo "cn=Manager,dc=ldap,dc=net" "testes2011"
LDAPDoAuth on "ou=Pessoas,dc=ldap,dc=net"
LDAPDoGIDLookups on "ou=Grupos,dc=ldap,dc=net"
</IfModule>
Pronto, basicamente indicamos para o Proftpd qual servidor é o OpenLDAP.
No arquivo "/etc/proftpd/modules.conf" apenas remova o comentário ("#") da linha "LoadModule mod_ldap.c".
Agora para finalizarmos, editamos o arquivo "/etc/proftpd/proftpd.conf", além de outras configurações mais específicas o importante para autenticar é o seguinte:
DefaultRoot /media/diretorioftp ## Alterar pelo seu diretório padrão
DefaultRoot ~
RootLogin off
RequireValidShell off
<Limit LOGIN>
AllowGroup FTP
DenyAll
</Limit>
Include /etc/proftpd/ldap.conf
Pronto, somente isso.
Uma breve explicação sobre o "Limit LOGIN" é onde eu digo que apenas os usuários do meu LDAP que fazerem parte do grupo
FTP também do LDAP podem autenticar no Proftpd.
Existe ainda muita configuração em relação aos diretórios que você pode por exemplo deixar único para cada conta de LDAP, no meu caso, o principal foi deixar que apenas os participantes do grupo FTP do meu OpenLDAP possam conectar no Proftpd e acessarem a pasta "/media/ftpserver".