lighttpd를 통해 루트 소유 파일의 실행을 방지하는 방법은 무엇입니까?

lighttpd를 통해 루트 소유 파일의 실행을 방지하는 방법은 무엇입니까?

lighttpd를 실행하기 위해 그룹과 사용자를 만들었습니다.

웹 서버에서 이러한 권한(myuser:mygroup)이 있는 파일만 실행하고 싶습니다. 루트 권한으로 파일을 실행하고 싶지 않습니다.

가능합니까?

답변1

여기서 권한이 도움이 될 수 있습니다.

lighttpd제한된 사용자로 실행하십시오. lighttpd에서 자신을 강등시키는 사용자와 그룹을 지정할 수 있다고 생각합니다 lighttpd.conf.

chmod그런 다음 실행 파일이 lighttpd에서 액세스 가능하지만 루트가 소유하고 편집 되었는지 확인하십시오 700. 이렇게 하면 루트(파일 소유자)만 실행 가능하게 됩니다. 해당 내용에 액세스하려면 디렉터리에 대한 실행 권한이 필요하므로 루트가 소유한 디렉터리에 대해 이 설정을 주의해야 합니다.

lighttpd인증 범위를 벗어난 파일 에 어떤 방식으로든 액세스할 수 없도록 하려면 lighttpd옵션 을 확인하세요 chroot. 이렇게 하면 특정 디렉토리가 /의 최상위 디렉토리 처럼 보이게 되어 lighttpd해당 지점 "위"에 있는 항목에 액세스할 수 없게 됩니다.

php나 perl과 같은 스크립트 인터프리터를 사용하는 경우 이러한 스크립트에 액세스할 수 있어야 하기 때문에 이 문제가 포함될 수 있습니다. lighttpd따라서 해당 스크립트와 해당 종속성(구성 파일 포함)의 복사본을 "chroot 감옥"에 넣어야 합니다. 호출됩니다. 단순히 실행 파일을 복사하는 문제가 아니라 모든 라이브러리( ldd {executable-name}.로 식별 가능)와 기타 종속성을 복사해야 하며, 그런 다음 PHP나 Perl을 업데이트할 때 수동으로 업데이트할 책임이 있습니다.

관련 정보