제가 작업 중인 구현을 위해 ProFTPd와 MySQL을 인터페이스하는 방법을 읽고 있는데, 제가 본 모든 예제 코드나 지침에서 MySQL의 사용자 로그인 필드가 "varchar(30)"로 설정되어 있는 것 같습니다.
ProFTPd의 필드 길이에 제한이 있다는 내용은 없지만 어쨌든 확인해 보고 싶었습니다. 이 설정이 혼합될 프로젝트는 범용 사용자 이름이 "varchar(255)"를 지원하도록 계획하고 있었습니다. 안전하게 사용할 수 있나요? 아니면 내가 놓친 다른 곳에 FTP 제한이 있나요?
ProFTPd 1.3.4a(사용자 정의 컴파일), MySQL 5.1.54(우분투 저장소) 실행
답변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;
180자 사용자 이름으로 filezilla를 사용하여 연결하여 테스트한 결과, 그 높이에 도달해야 한다고는 생각하지 않지만 우리는 안전을 원하며 DB 수준이 아닌 생성 시 길이를 제한할 것입니다. 어쨌든 255 필드 크기에서는 작동하는 것처럼 보였습니다. 255자 사용자 이름을 만들고 확인하려고 했는데 시스템을 다룰 시간이 없었습니다.