생성된 폴더/파일에서 403을 수신하지 않는 FTP 사용자 생성 - Ubuntu

생성된 폴더/파일에서 403을 수신하지 않는 FTP 사용자 생성 - Ubuntu

apache2를 실행하는 Ubuntu 14.04 서버가 있습니다.

SSH를 통해 로그인하면 /var/www/html에 디렉터리와 파일을 만들 수 있으며 적절하게 제공됩니다.

내가 설정한 사용자("홈페이지"를 /var/www/html로 설정)를 사용하여 FTP를 사용하는 경우 디렉터리를 만들거나 파일을 업로드할 수 없습니다. 해당 FTP 사용자를 HTML 디렉토리의 소유자로 지정하면 디렉토리를 생성하고 파일을 업로드할 수 있지만 해당 파일은 제공되지 않습니다. 대신 이것이 금지되어 있다는 403 오류가 발생합니다.

따라서 권한 문제인 것은 확실하지만 디렉토리와 페이지를 생성하기 위해 SSH를 통해 모든 작업을 수행할 필요는 없습니다. 문제를 피하기 위해 /var/www/html을 다시 루트 소유자로 만들었습니다.

그렇다면 디렉토리를 생성하고 FTP를 통해 파일을 업로드할 수 있는 권한을 가진 FTP 사용자(FTPUser라는 이름)를 생성하는 가장 좋은 절차는 무엇입니까? 나는 이미 사용자를 생성했지만 Ubuntu를 처음 접했고 "모범 사례"에 익숙하지 않습니다. 이것은 전 세계를 향한 서버이므로 집에 없을 때에도 액세스할 수 있으므로 원하지 않습니다. 쉽게 전체 액세스 권한을 부여합니다.

나는 서버에 액세스하는 유일한 사람이 될 것입니다. 따라서 FTP를 통해 액세스하고 /var/www/html에서 콘텐츠를 생성/삭제/편집할 수 있는 사용자가 한 명만 있으면 됩니다.

답변1

403은 FTP 업로드로 생성된 파일의 권한 문제로 인해 발생했을 가능성이 높습니다. 해당 파일은 "다른 사람"이 읽을 수 없으며 웹 서버 프로세스가 속하지 않는 그룹이 소유하고 있을 수 있습니다.

이 문제를 해결하는 방법에는 여러 가지가 있으며, 가장 간단한 방법은 FTP 사용자의 기본 그룹을 "www-data"로 설정하는 것입니다. 그러면 해당 사용자로 업로드된 모든 파일을 웹 서버에서 읽을 수 있습니다.

또는 FTP 서버가 "기타" 비트가 설정되는 것을 방지하는 "umask"로 구성되어 있음을 알 수 있으며 이를 022와 같은 것으로 변경하면 업로드된 파일이 "기타"의 기본 rx 비트를 유지한다는 의미입니다. .

두 번째 문제는 FTP의 전반적인 보안(예: 일반 텍스트 비밀번호)입니다. 보다 안전한 SSH 키를 사용하여 SFTP를 사용해 보시기 바랍니다. 그룹/권한 문제는 동일하게 유지될 수 있으며 동일한 해결 방법이 필요할 수 있습니다.

관련 정보