Apache 2.4.6에서는 하나 이상의 특정 호스트(및 나머지 세계)를 제외한 전체 도메인에 대한 액세스를 거부하고 싶습니다. 약간 다음과 같습니다.
Require not host xxx.com ## nobody from this domain gets in...
Require host blah.xxx.com ## --except for this one host in xxx.com
Require all granted ## and the rest of the world!
괜찮나요? 그렇다면 이를 달성하기 위해 RequireAny/All/None의 마법처럼 보이는 조합을 설명할 수 있는 사람이 있습니까?
그 외에도 다른 블랙리스트 도메인과 논리를 복제하고 싶습니다(아마도 자체 예외가 있음).
답변1
이것이 내가하려는 일입니다.
- 귀하의 주문 지침이 허용, 거부로 설정되어 있는지 확인하겠습니다.
그러면 나는:
Allow all granted ## and the rest of the world! Allow host blah.xxx.com ## --except for this one host in xxx.com Deny not host xxx.com ## nobody from this domain gets in...
하지만:
Allow host blah.xxx.com ## --except for this one host in xxx.com
이것이 처음으로 허용되는 것이기 때문에 의미가 없습니다.
왜냐하면:
Order Allow,Deny
Allow from example.org
Deny from foo.example.org
순차적이란 도메인에서 호스트로 제한하는 것이 아니라 호스트로 제한하는 것을 의미합니다.
간단히 말해서, 순서가 작동하는 방식 때문에 아파치만으로는 원하는 것을 실제로 얻을 수 없습니다. 왜냐하면 마지막 명령어가 항상 나머지 명령어를 덮어쓰기 때문입니다.
하지만 원하는 호스트를 방화벽을 통과하지 못하게 함으로써 차단할 수 있습니다.
방화벽이 먼저이기 때문에 필터링이 필요한 서비스에도 접근하지 못합니다.