SquidGuard 구성, 콘텐츠 규칙 활성화 및 Squid 로그 분석 - 6부
LFCE(Linux Foundation Certified Engineer)는 Linux 시스템에서 네트워크 서비스를 설치, 관리 및 문제 해결하는 데 필요한 기술을 보유하고 있으며, 시스템 아키텍처 전체의 설계, 구현 및 지속적인 유지 관리.
Linux Foundation 인증 프로그램을 소개합니다.
이전 게시물에서는 Squid + squidGuard를 설치하는 방법과 액세스 요청을 적절하게 처리하거나 제한하도록 Squid를 구성하는 방법에 대해 논의했습니다. 이 게시물에서 다룰 배경과 컨텍스트를 설정하기 전에 이 두 튜토리얼을 검토하고 Squid와 squidGuard를 모두 설치했는지 확인하십시오. 작업 중인 오징어 환경에 Squidguard를 통합하여 블랙리스트 규칙과 콘텐츠 제어를 구현하는 것입니다. 프록시 서버.
요구사항
- Squid 및 SquidGuard 설치 - 1부
- 제한된 액세스로 Squid 프록시 서버 구성 – 5부
SquidGuard를 어떤 용도로 사용할 수 있나요?
squidGuard가 확실히 Squid의 기능을 강화하고 향상시키겠지만, 그것이 할 수 있는 것과 할 수 없는 것을 강조하는 것이 중요합니다.
squidGuard를 사용하여 다음을 수행할 수 있습니다.
- 일부 사용자에게 허용된 웹 액세스를 승인된/잘 알려진 웹 서버 및/또는 URL 목록으로만 제한하고, 블랙리스트에 있는 다른 웹 서버 및/또는 URL에 대한 액세스는 거부합니다.
- 일부 사용자의 정규식 또는 단어 목록과 일치하는 사이트(IP 주소 또는 도메인 이름 기준)에 대한 액세스를 차단합니다.
- 도메인 이름 사용을 요구하거나 URL에 IP 주소 사용을 금지합니다.
- 차단된 URL을 오류 또는 정보 페이지로 리디렉션합니다.
- 시간, 요일, 날짜 등에 따라 고유한 액세스 규칙을 사용합니다.
- 고유한 사용자 그룹에 대해 서로 다른 규칙을 구현합니다.
그러나 squidGuard나 Squid는 다음 용도로 사용할 수 없습니다.
- 문서 내부의 텍스트를 분석하고 결과에 따라 조치를 취합니다.
- HTML 코드 내에 JavaScript, Python 또는 VBscript와 같은 내장된 스크립팅 언어를 탐지하거나 차단합니다.
블랙리스트 – 기본 사항
블랙리스트는 squidGuard의 필수 부분입니다. 기본적으로 특정 키워드를 기반으로 콘텐츠 필터를 구현할 수 있는 일반 텍스트 파일입니다. 무료로 사용할 수 있는 블랙리스트와 상업용 블랙리스트가 모두 있으며, Squidguard 블랙리스트 프로젝트 웹사이트에서 다운로드 링크를 찾을 수 있습니다.
이 튜토리얼에서는 Shalla Secure Services가 제공하는 블랙리스트를 squidGuard 설치에 통합하는 방법을 보여 드리겠습니다. 이러한 블랙리스트는 개인적/비상업적 용도로 무료로 제공되며 매일 업데이트됩니다. 여기에는 현재 1,700,000개 이상의 항목이 포함됩니다.
편의를 위해 블랙리스트 패키지를 다운로드할 디렉터리를 생성해 보겠습니다.
mkdir /opt/3rdparty
cd /opt/3rdparty
wget http://www.shallalist.de/Downloads/shallalist.tar.gz
아래 강조 표시된 대로 최신 다운로드 링크를 항상 사용할 수 있습니다.
새로 다운로드한 파일의 압축을 푼 후 블랙리스트(BL) 폴더를 찾아보겠습니다.
tar xzf shallalist.tar.gz
cd BL
ls
ls의 출력에 표시된 디렉터리는 백업 목록 범주로, 해당(선택적) 하위 디렉터리는 파일에 나열되는 특정 URL 및 도메인까지 내려가는 하위 범주로 생각할 수 있습니다. 각각 URL 및 도메인입니다. 자세한 내용은 아래 이미지를 참고하세요.
블랙리스트 설치
전체 블랙리스트 패키지 또는 개별 범주의 설치는 BL 디렉터리 또는 해당 하위 디렉터리 중 하나를 각각 /var/에 복사하여 수행됩니다. lib/squidguard/db 디렉토리.
물론 처음에 이 디렉토리에 블랙리스트 타르볼을 다운로드할 수도 있지만 앞서 설명한 접근 방식을 사용하면 특정 시간에 어떤 범주를 차단해야 하는지(또는 차단하지 말아야 하는지)를 더 잘 제어할 수 있습니다.
다음으로 anonvpn, 해킹 및 채팅 블랙리스트를 설치하는 방법과 이를 사용하도록 squidGuard를 구성하는 방법을 보여 드리겠습니다.
1단계: /opt/3rdparty/에서 anonvpn, hacking 및 chat 디렉터리를 반복적으로 복사합니다. BL을 /var/lib/squidguard/db로 변경하세요.
cp -a /opt/3rdparty/BL/anonvpn /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/hacking /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/chat /var/lib/squidguard/db
2단계: 도메인과 URL 파일을 사용하여 squidguard의 데이터베이스 파일을 만듭니다. 다음 명령은 설치된 모든 블랙리스트에 대한 .db 파일을 생성하는 데 작동합니다. 특정 범주에 2개 이상의 하위 범주가 있는 경우에도 마찬가지입니다.
squidGuard -C all
3단계: Squid가 데이터베이스 파일을 읽을 수 있도록 /var/lib/squidguard/db/ 디렉터리의 소유권과 그 내용을 프록시 사용자로 변경합니다.
chown -R proxy:proxy /var/lib/squidguard/db/
4단계: squidGuard를 사용하도록 Squid를 구성합니다. /etc/squid/squid.conf에 있는 Squid의 url_rewrite_program 지시문을 사용하여 SquidGuard를 URL 재작성기/리디렉터로 사용하도록 Squid에 지시합니다.
squid.conf에 다음 줄을 추가하고 /usr/bin/squidGuard가 귀하의 경우에 올바른 절대 경로인지 확인하세요.
which squidGuard
echo "url_rewrite_program $(which squidGuard)" >> /etc/squid/squid.conf
tail -n 1 /etc/squid/squid.conf
5단계: squidGuard 구성 파일(/etc/squidguard/squidGuard.conf에 위치)에 필요한 지시어를 추가합니다.
자세한 내용은 다음 코드 다음에 나온 위의 스크린샷을 참조하세요.
src localnet {
ip 192.168.0.0/24
}
dest anonvpn {
domainlist anonvpn/domains
urllist anonvpn/urls
}
dest hacking {
domainlist hacking/domains
urllist hacking/urls
}
dest chat {
domainlist chat/domains
urllist chat/urls
}
acl {
localnet {
pass !anonvpn !hacking !chat !in-addr all
redirect http://www.lds.org
}
default {
pass local none
}
}
6단계: Squid를 다시 시작하고 테스트합니다.
service squid restart [sysvinit / Upstart-based systems]
systemctl restart squid.service [systemctl-based systems]
로컬 네트워크 내의 클라이언트에서 웹 브라우저를 열고 블랙리스트 파일(도메인 또는 URL)에서 발견된 사이트로 이동합니다. 다음 예에서는 http://spin.de/ 채팅을 사용합니다. ) 이 경우 다른 URL인 www.lds.org로 리디렉션됩니다.
요청이 프록시 서버에 이루어졌으나 거부되었고(301 http 응답 – 영구 이동) 대신 www.lds.org로 리디렉션되었음을 확인할 수 있습니다.
제한사항 제거
어떤 이유로 과거에 차단되었던 카테고리를 활성화해야 하는 경우 /var/lib/squidguard/db에서 해당 디렉토리를 제거하고 관련 acl에 주석을 달거나 삭제하세요. squidguard.conf 파일에 있습니다.
예를 들어, anonvpn 카테고리에 의해 블랙리스트에 오른 도메인과 URL을 활성화하려면 다음 단계를 수행해야 합니다.
rm -rf /var/lib/squidguard/db/anonvpn
그리고 squidguard.conf 파일을 다음과 같이 편집하세요.
BEFORE에서 노란색으로 강조 표시된 부분은 AFTER에서 삭제되었습니다.
특정 도메인 및 URL을 허용 목록에 추가
경우에 따라 특정 URL 또는 도메인을 허용하지만 전체 블랙리스트 디렉터리는 허용하지 않을 수 있습니다. 이 경우 myWhiteLists(또는 선택한 이름)라는 디렉터리를 만들고 아래에 원하는 URL 및 도메인을 삽입해야 합니다. /var/lib/squidguard/db/myWhiteLists는 각각 urls 및 domains라는 파일에 있습니다.
그런 다음 이전과 같이 새 콘텐츠 규칙을 초기화합니다.
squidGuard -C all
squidguard.conf를 다음과 같이 수정하세요.
이전과 마찬가지로 노란색으로 강조 표시된 부분은 추가해야 할 변경 사항을 나타냅니다. myWhiteLists 문자열은 pass로 시작하는 행의 첫 번째 문자열이어야 합니다.
마지막으로, 변경 사항을 적용하려면 Squid를 다시 시작하는 것을 잊지 마세요.
결론
이 튜토리얼에 설명된 단계를 수행한 후에는 Squid 프록시와 함께 작동하는 강력한 콘텐츠 필터와 URL 리디렉터를 갖게 됩니다. 설치/구성 과정에서 문제가 발생하거나 질문이나 의견이 있는 경우 squidGuard의 웹 설명서를 참조할 수 있지만 언제든지 아래 양식을 사용하여 언제든지 연락해 주시면 최대한 빨리 연락드리겠습니다. 가능한.