특정 디렉터리에 FTP 액세스 권한 부여

특정 디렉터리에 FTP 액세스 권한 부여

로컬 네트워크의 컴퓨터에 CentOS를 설치하고 httpd, PHP, Webmin(및 UserMin) 등을 설치했습니다. ProFTPd를 선택하고 FTP, Webmin 및 Apache용 포트를 열었습니다.

이제 로컬 네트워크를 통해 Webmin에 액세스하고 기본 Apache 테스트 페이지를 볼 수 있습니다. 내가 만든 사용자로 SFPT 연결을 설정할 수도 있습니다. 하지만 FTP를 통해 /var/www/에 파일을 쓸 수는 없습니다.

한 명 이상의 사용자가 문제의 디렉터리에 액세스할 수 있도록 하려면 어떻게 해야 합니까?

답변1

LDJames의 답변(더 이상 여기에 없음)이 전체 사용자 및 그룹 문제에 관심을 갖게 되었지만 완전히 도움이 되지는 않았습니다. 다행히도 Google이 참여할 만큼 충분합니다. 문제를 해결하기 위해 취한 단계는 다음과 같습니다.

폴더는 루트 소유이므로 사용자를 추가하는 데 적합하지 않습니다. 해결책은 특수 그룹을 만드는 것입니다. 나는 매우 창의적이기 때문에 그것을 "www"라고 부릅니다. 그런 다음 html 폴더를 이 그룹으로 이동합니다.

<user>내 시스템 사용자의 사용자 이름입니다

  1. 루트로 su(또는 각 줄에 sudo 사용)
  2. groupadd www(그룹을 구성하세요)
  3. usermod -a -G www <user>(그룹에 사용자 추가)
  4. /var/www/로 이동하세요.
  5. chgrp www html(폴더를 그룹으로 설정)
  6. chmod g+rwx html(폴더에 대한 그룹 액세스 허용 - 다음 항목도 참조하세요.http://ss64.com/bash/chmod.html도움이 됩니다)

결과적으로 이제 파일을 업로드할 수 있고 원할 경우 다른 사용자도 동일한 작업을 수행하도록 할 수 있습니다.

  1. 어떤 메시지가 나타나면 www 그룹으로 실행되도록 Apache도 설정했습니다.

이는 환경 변수를 설정하여 수행됩니다(환경 변수의 정확한 위치는 Linux 버전에 따라 다릅니다).

다른 답변에도 불구하고 올바른 접근 방식은 다음과 같습니다.

export APACHE_RUN_USER=www
export APACHE_RUN_GROUP=www

위의 내용은 www라는 사용자도 생성했다고 가정하고 있으며 이것이 내 책상 위에 있는 개발 상자이기 때문에 이제 Apache가 루트로 실행되고 있어 기쁩니다.

Apache를 설정하는 사용자 및 그룹에 대한 정보는 다음을 통해 발견되었습니다.Apache와 PHP는 어떤 사용자로 실행해야 합니까? /var/www 파일에는 어떤 권한이 있어야 합니까?

관련 정보