pureftpd auth usando crypt sha512

1

Instalei o pure-ftpd-mysql e ele funciona bem com o hashing de senha md5. Isso não é muito seguro, então eu gostaria de usar o crypt com sha512 salgado, do jeito que estou usando no pombal.

Como configurar isso no pure-ftpd?

Criando um novo usuário com o sha512 pass:

INSERT INTO 'ftpd' ('User', 'status', 'Password', 'Uid', 'Gid', 'Dir', 
  'ULBandwidth', 'DLBandwidth', 'comment', 'ipaccess', 'QuotaSize', 'QuotaFiles')
   VALUES ('MyUserName',
    '1',
    ENCRYPT('_mypassword_', CONCAT('$6$', SUBSTRING(SHA(RAND()), -16))),
    '2001',
    '2001',
    '/var/www/test',
    '100',
    '100',
    '',
    '*',
    '50',
    '0');

Os valores no arquivo de configuração:

MYSQLCrypt md5
MYSQLGetPW SELECT Password FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*"  OR ipaccess LIKE "\R")

Então, minha pergunta é o que eu preciso colocar no arquivo de configuração para ter a senha gerada usando o método acima trabalhando.

Eu achei que mudar MYSQLCrypt para crypt deveria ser suficiente. Mas isso não funciona.

No caso de qualquer outro método não funcionar, o manual descreve como criar um link (mas como faço para ativá-lo?)

    
por Sfisioza 23.09.2014 / 15:17

1 resposta

2

O pure-ftpd-mysql suporta sha512 crypt com sal.

É tão fácil quanto:

MYSQLCrypt crypt

E certifique-se de que sua coluna Password seja longa o suficiente. Para cripta $ 6 $ é 106 caracteres.

Assim, a estrutura da tabela que trabalha com sua consulta pode ser assim:

CREATE TABLE ftpd (
 User varchar(16) NOT NULL default '',
 status enum('0','1') NOT NULL default '0',
 Password varchar(106) NOT NULL default '',
 Uid varchar(11) NOT NULL default '-1',
 Gid varchar(11) NOT NULL default '-1',
 Dir varchar(128) NOT NULL default '',
 ULBandwidth smallint(5) NOT NULL default '0',
 DLBandwidth smallint(5) NOT NULL default '0',
 comment tinytext NOT NULL,
 ipaccess varchar(15) NOT NULL default '*',
 QuotaSize smallint(5) NOT NULL default '0',
 QuotaFiles int(11) NOT NULL default 0,
 PRIMARY KEY (User),
 UNIQUE KEY User (User)
 ) ENGINE=MyISAM;
    
por 24.09.2014 / 09:52