Proftpd-Benutzerauthentifizierung mit mod_sql/mod_sql_passwd

Proftpd-Benutzerauthentifizierung mit mod_sql/mod_sql_passwd

Ich lese gerade nach, wie man ProFTPd mit MySQL für eine Implementierung verbindet, an der ich gerade arbeite. Dabei ist mir aufgefallen, dass in allen Beispielcodes und Anweisungen, die ich sehe, das Benutzeranmeldefeld in MySQL auf „varchar(30)“ eingestellt zu sein scheint.

Ich sehe nichts, was darauf hinweist, dass es eine Begrenzung der Feldlänge für ProFTPd gibt, aber ich wollte mich trotzdem umsehen. Das Projekt, in das dieses Setup integriert werden soll, plante, dass die universellen Benutzernamen „varchar(255)“ unterstützen. Kann ich das sicher verwenden? Oder gibt es woanders eine FTP-Beschränkung, die ich übersehen habe?

ProFTPd 1.3.4a (benutzerdefiniert kompiliert), MySQL 5.1.54 (Ubuntu-Repos) wird ausgeführt

Antwort1

Habe es gerade trotzdem bei meiner Implementierung mit diesem Layout ausprobiert:

CREATE TABLE IF NOT EXISTS `users` (
  `userid` varchar(255) NOT NULL,
  `passwd` varchar(255) NOT NULL,
  `uid` int(11) DEFAULT NULL,
  `gid` int(11) DEFAULT NULL,
  `homedir` varchar(255) DEFAULT NULL,
  `shell` varchar(255) DEFAULT NULL,
  UNIQUE KEY `userid` (`userid`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Getestet durch Verbindung mit Filezilla mit einem 180 Zeichen langen Benutzernamen. Ich glaube nicht, dass sie so hoch sein sollten, aber wir wollen Sicherheit und werden die Länge bei der Erstellung begrenzen, nicht auf DB-Ebene. Jedenfalls sah es so aus, als ob es mit der Feldgröße von 255 funktionierte. Ich hätte einen 255 Zeichen langen Benutzernamen erstellt und überprüft, aber ich hatte mit dem System einfach keine Zeit.

verwandte Informationen