Авторизация пользователя Proftpd с помощью mod_sql/mod_sql_passwd

Авторизация пользователя Proftpd с помощью mod_sql/mod_sql_passwd

Я читаю, как интегрировать ProFTPd с MySQL для реализации, над которой я работаю, и заметил, что во всех примерах кода или инструкциях, которые я вижу, поле входа пользователя в MySQL установлено как «varchar(30)».

Я не вижу ничего, что говорило бы об ограничении длины поля для ProFTPd, но я хотел бы проверить в любом случае. Проект, в который будет включена эта настройка, планировал, что их универсальные имена пользователей будут поддерживать "varchar(255)". Могу ли я использовать это безопасно? или есть ограничение FTP в другом месте, которое я упустил?

Запуск ProFTPd 1.3.4a (компилированный вручную), MySQL 5.1.54 (репозитории Ubuntu)

решение1

Только что попробовал это в своей реализации, используя этот макет:

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;

Протестировано путем подключения с помощью filezilla с именем пользователя из 180 символов, я не думаю, что они должны достичь такой высоты, но мы хотим безопасности и ограничим длину при создании, а не на уровне БД. В любом случае, похоже, что это сработало с размером поля 255. Я бы создал и проверил имя пользователя из 255 символов, у меня просто не было времени с системой.

Связанный контент