ufw를 사용하여 웹페이지를 차단할 수 있나요?

ufw를 사용하여 웹페이지를 차단할 수 있나요?

기본적으로 X와 Y라는 두 대의 컴퓨터가 있습니다.

ufw를 사용하여 HTTP 포트 80의 컴퓨터 X에서 "http:// <IP-of-Y-Here> /AFolder/"를 차단하고 싶습니다.

간단하게는 다음을 통해 ufw를 사용하여 이 작업을 (끔찍하게) 완료할 수 있습니다.

sudo ufw deny out 80

그러나 다음과 같은 방법으로 뭔가를 하는 것이 가능합니까?

ufw deny from (X IP ADDRESS) port 80 to (Y IP ADDRESS)/AFolder

그게 내 요구 사항을 충족할까요?

답변1

아니요, ufw를 사용하여 웹 서버의 일부 특정 페이지에 대한 액세스를 차단할 수는 있지만 다른 페이지에는 액세스를 차단할 수 없습니다.

ufw는 프런트엔드입니다.iptables이는넷필터Linux 커널에 내장된 방화벽입니다. 이것은 일반적인 방화벽입니다. 헤더를 기반으로 패킷을 필터링하는 데 사용할 수 있습니다.

IP 주소와 포트는 패킷의 헤더에 포함되지만어떤 웹 문서검색되는 것은 아닙니다. 대신, 이 정보는 연결이 이미 설정된 후에 패킷 본문으로 전송됩니다.

아시다시피 특정 웹사이트에 대한 액세스를 차단하는 것이 가능하며(일반적으로 누군가가 차단을 우회하는 것은 매우 쉽습니다), 특정 페이지를 차단하는 동시에 다른 페이지에 대한 액세스를 허용하는 세분성을 제공하는 유틸리티가 있습니다. 동일한 서버. 하지만 귀하가 요청한 내용을 해결하려면 ufw는 이 작업을 수행하지 않습니다.

답변2

를 사용하여 서버의 포트에 대한 액세스를 차단할 수 있습니다 ufw. man ufw많은 예제가 있지만 활성화되었다고 가정하면 다음과 같아야 합니다.

sudo ufw deny out to <<ip address>> port 80

방금 내 서버에 대해 이것을 테스트했는데 작동합니다. 포트 443은 SSL에 사용되므로 차단이 필요할 수도 있습니다.

이는 이 서버의 포트 80 전체를 차단한다는 점을 기억하십시오.


하위 폴더를 기준으로 필터링을 시작하려면(일부 경로는 허용하고 다른 경로는 허용하지 않음) 요청을 프록시하는 것이 필요합니다. 방화벽은 콘텐츠를 보는 것이 아니라 연결을 봅니다. 방화벽에 대한 /subfolder 요청은 /a-다른-하위 폴더에 대한 요청과 동일합니다.

따라서 당신이 찾고 있는 것은 트래픽의 일부를 차단할 수 있는 투명한 프록시입니다. 자녀 보호 소프트웨어는 아마도 빠른 설정을 위한 최선의 선택일 것입니다. dansguardian확실히 인기가 있었던 것과 같은 것이 탐구가 필요하다고 말하고 싶습니다. 자세한 내용은 위키에서 확인할 수 있습니다.

관련 정보