FTP com autenticação LDAP
Configurando um servidor FTP com autenticação dos usuários no LDAP de forma simples.
Introdução
Ambiente que utilizo e que está em funcionamento: Ubuntu 8.04 - Hardy Heron GNU/Linux.
Instale o pacote proftpd-ldap:
sudo aptitude install proftpd-ldap
Durante a instalação será solicitado escolher o jeito que você quer que o proftp seja iniciado, inetd ou standalone (modo solitário). Escolha standalone (modo solitário).
Verifique sua senha do LDAP:
sudo cat /etc/ldap.secret
Verifique o nome do seu servidor:
hostname
É necessário editar 3 arquivos, vamos lá! :)
sudo gedit /etc/proftpd/ldap.conf
* Não esqueça de alterar cn=,dc= e senha, conforme suas configurações do LDAP.
sudo gedit /etc/proftpd/proftpd.conf
Altere essa linha para a casa dos usuários, no meu caso:
DefaultRoot /home/ldap
Altere essa linha para o nome de sua máquina:
ServerName "vm-pc"
Instale o pacote proftpd-ldap:
sudo aptitude install proftpd-ldap
Durante a instalação será solicitado escolher o jeito que você quer que o proftp seja iniciado, inetd ou standalone (modo solitário). Escolha standalone (modo solitário).
Verifique sua senha do LDAP:
sudo cat /etc/ldap.secret
Verifique o nome do seu servidor:
hostname
É necessário editar 3 arquivos, vamos lá! :)
Editando o ldap.conf
Edite o arquivo abaixo, apague todo seu conteúdo e substitua pelo seguinte:sudo gedit /etc/proftpd/ldap.conf
LDAPServer localhost
LDAPDNInfo cn=root,dc=jrf "senha"
LDAPDoAuth on "ou=Usuarios,dc=jrf" (&(uid=%v)(objectclass=posixAccount))
LDAPDoUIDLookups on "ou=Usuarios,dc=jrf"
LDAPDoGIDLookups on "ou=Grupos,dc=jrf"
LDAPDNInfo cn=root,dc=jrf "senha"
LDAPDoAuth on "ou=Usuarios,dc=jrf" (&(uid=%v)(objectclass=posixAccount))
LDAPDoUIDLookups on "ou=Usuarios,dc=jrf"
LDAPDoGIDLookups on "ou=Grupos,dc=jrf"
* Não esqueça de alterar cn=,dc= e senha, conforme suas configurações do LDAP.
Editando o proftpd.conf
Edite o arquivo abaixo, apague todo seu conteúdo e substitua pelo seguinte:sudo gedit /etc/proftpd/proftpd.conf
Include /etc/proftpd/modules.conf
UseIPv6 off
ServerName "vm-pc"
ServerType standalone
ServerIdent on "SOME TEXT FOR PEOPLE NOT TO SEE THIS IS PROFTP RUNNING"
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
ListOptions "-l"
DenyFilter \*.*/
DefaultRoot /home/ldap
DefaultChDir samba
RequireValidShell off
Port 21
MaxInstances 30
User proftpd
Group nogroup
Umask 022 022
AllowOverwrite on
TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log
Include /etc/proftpd/ldap.conf
DebugLevel 3
UseIPv6 off
ServerName "vm-pc"
ServerType standalone
ServerIdent on "SOME TEXT FOR PEOPLE NOT TO SEE THIS IS PROFTP RUNNING"
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
ListOptions "-l"
DenyFilter \*.*/
DefaultRoot /home/ldap
DefaultChDir samba
RequireValidShell off
Port 21
MaxInstances 30
User proftpd
Group nogroup
Umask 022 022
AllowOverwrite on
TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log
Include /etc/proftpd/ldap.conf
DebugLevel 3
Altere essa linha para a casa dos usuários, no meu caso:
DefaultRoot /home/ldap
Altere essa linha para o nome de sua máquina:
ServerName "vm-pc"