Fedora의 Apache2 홈 디렉터리

Fedora의 Apache2 홈 디렉터리

내 홈 디렉터리에서 내 개발 서버에 대한 문서를 제공하고 싶습니다. 이것은 개인용 노트북이므로 대부분의 서버/웹 호스팅 상황에서 보안에 대해서는 별로 신경 쓰지 않습니다.

다음과 같습니다 httpd.conf.

DocumentRoot "/home/myuser/www"

#
# Relax access to content within /var/www.
#
<Directory "/home/myuser/www">
    AllowOverride all
    # Allow open access:
    Require all granted
</Directory>

# Further relax access to the default document root:
<Directory "/home/myuser/www">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride None

    #
    # Controls who can get stuff from this server.
    #
    Require all granted
</Directory>

지금까지는 매우 좋았으므로 이제 myuser/www디렉토리에 있는 문서를 볼 수 있습니다 http://localhost/.

그러나 Apache는 디렉토리에 쓸 수 없으며 selinux 보안 경고가 표시됩니다.

apache내 사용자를 그룹에 추가하고 디렉터리에 대한 권한을 myuser/www설정하려고 시도했지만 작동하지 않았습니다.755

아파치가 이 디렉토리에 쓰도록 허용하려면 어떻게 해야 합니까?

편집하다:

디렉토리의 그룹 및 권한을 변경한 후 /home/myuser/www/파일이 표시되지만 애플리케이션은 Apache가 tmp 디렉토리에 쓸 수 없다고 불평하고 selinux 오류를 발생시킵니다. 보안 메시지에 제안된 수정 사항은 다음 명령을 실행하는 것인데, 저는 아무런 변경 없이 수행했습니다.

# semanage fcontext -a -t httpd_sys_rw_content_t 'tmp'
# restorecon -v 'tmp'

답변1

chgrp apache홈 디렉터리(및 Apache가 쓸 수 있도록 하려는 모든 파일 및 하위 디렉터리)에서 작업을 수행한 다음 chmod g+w해당 디렉터리에서 작업을 수행합니다. 그러면 디렉토리가 7로 설정됩니다.75 모드, 파일 크기는 664입니다.

답변2

httpd_selinux패키지에 제공된 매뉴얼 페이지에서 이를 확인하십시오 selinux-policy-doc.

httpd가 홈 디렉토리를 읽을 수 있도록 하려면 httpd_enable_homedirs 부울을 활성화해야 합니다. 기본적으로 비활성화되어 있습니다.

  setsebool -P httpd_enable_homedirs 1

귀하의 질문은 /tmp귀하가 정확히 무엇을 원하는지에 따라 달라질 수 있습니다. 기본적으로 httpdFedora는 개인 네임스페이스를 사용하므로 /tmp이는 소프트웨어에서 원하는 것이 아닐 수도 있습니다. 귀하의 애플리케이션은 이를 어떤 용도로 사용합니까?

관련 정보