Squid 소개 : 단계별 설정

오징어 로고와 턱시도

Squid는 또 다른 응용 수준 필터입니다. iptables를 보완 할 수 있습니다. Squid는 캐시 된 웹 프록시 서버이며 매우 인기 있고 무료이며 크로스 플랫폼입니다. 인터넷 연결 성능을 향상시키는 데 사용할 수 있지만 보안 목적으로도 사용할 수 있습니다. 프로젝트가 90 년대에 시작된 이래 Squid는 매우 발전했으며 이제 사용 방법을 알 수 있도록이를 여러분에게 제공합니다.

설치를 위해, 당신은 액세스 할 수 있습니다 프로젝트의 공식 웹 사이트 운영 체제 또는 배포에 대한 바이너리 패키지를 선택합니다. 컴파일하여 소스 코드 패키지에서 설치하려면 당신은 그 선택권이 있습니다. 사용 가능한 tarball은 tar.gz, tar.bz2 및 tar.xz입니다. 설치 방법을 모르는 경우이 블로그에서 편집 한 기사로 이동할 수 있습니다. 리눅스에서 패키지를 설치하는 방법. 눈! 데비안 또는 파생 제품이 있고 sudo "apt-get install squid"로 설치되어있는 것을 확인한 경우 "squid"를 "squid3"로 바꿔야 적용되므로 오류가 발생할 수 있습니다. .

이제 우리는 설명하는 행동으로 직접 이동합니다. 오징어 사용법의 몇 가지 예 장비를 보호합니다. Squid가 ACL 기반, 즉 액세스 제어 목록 또는 액세스 제어 목록, 즉이 경우 네트워크 흐름을 제어 할 권한을 자세히 설명하고 iptables와 유사한 필터를 구현하는 목록을 기반으로 설명하기 전에 애플리케이션 수준에서.

일반적으로 설치 후 다음 위치에서 찾을 수있는 구성 파일이 포함됩니다. /etc/squid3/squid.conf 그리고 이것은 우리가 nano 또는 gedit와 같은 편집기로 편집해야하는 것입니다. 여기에서 필터링 규칙을 생성 할 수 있지만 cache_dir, cache_mem 및 http_port 옵션이 있지만 보안 규칙에 후자를 사용할 것입니다. 또 다른 세부 사항은이 파일이 Squid 서비스에서 사용하는 기본 포트를 지정한다는 것입니다. 기본 포트는 3128입니다 ( "http_port 3128"행 또는 지시문을 참조하고 활성화하려면 #을 제거하십시오). 원하는 경우 8080과 같은 다른 포트로 변경할 수 있습니다. 호스트 이름을 구성하는 데 필요한 또 다른 사항은 "TAG : Visible_hostname"주석을 찾아 보면 "visible_hostname"이라는 줄을 입력해야합니다. 귀하의 호스트 이름.

호스트 이름을 알기 위해 터미널에 입력 할 수 있습니다.

hostname

그리고 표시되는 이름은 주석으로 무시되지 않도록 앞에 #이 붙어서는 안되는 줄에 추가합니다. 즉, 다음과 같습니다.

visible_hostname hostname_which_you_appeared

구성 파일이 표시되면 주석이 많이 달린 것을 볼 수 있습니다. 생성 된 규칙을 재정의하려면 #으로 줄을 시작할 수 있습니다. Squid가이를 무시하는 주석으로 변환하고 다시 서비스로 전환하려면 #을 삭제하면됩니다. 실제로 #을 제거하여 사용할 수있는 작성 및 주석 처리 된 규칙이 많이 있습니다. 따라서 규칙을 삭제하고 다시 작성할 필요가 없습니다. 특정 규칙이나 필터를 추가하려면 ACL과 수행 할 작업을 나타내는 지시문이 있어야합니다.

그런데 규칙을 활성화하기 위해 #을 제거하면 줄의 시작 부분에 공백을 남기지 않도록하십시오. 예 :

잘못된 방법:

http_port 3128

올바른 방법 :

http_port 3128

아무것도 듣지 못했습니까? 걱정하지 마세요. 모든 것을 훨씬 더 잘 볼 수 있습니다. 이것을 상상해보십시오.

페이스 북으로 url_regex를 차단하는 acl
http_access 거부 차단

이 규칙의 의미 "blocking"이라는 이름의 acl은 "facebook"이 포함 된 URL에 대한 액세스를 금지한다는 것입니다 (따라서 Facebook에 들어 가려고하면 브라우저에서 오류를 건너 뜁니다). "거부"대신 "허용"을 사용하는 경우 금지하는 대신 액세스를 허용합니다. 당신은 또한 사용할 수 있습니다! 예를 들어, 제외하려면 list1가 아닌 list2에 대한 액세스를 허용한다고 가정합니다.

http_access allow lista1 !lista2

또 다른 예는 / etc / squid3 / ips allowed 액세스를 허용 할 IP 목록을 저장합니다. 예를 들어 허용 된 ip의 내용이 다음과 같다고 가정합니다.

192.168.30.1

190.169.3.250

192.168.1.26

그런 다음 acl을 만듭니다. 이러한 IP에 대한 액세스를 허용하려면 :

acl nuevaregla src "/etc/squid3/ipspermitidas"

꽤 실용적인 예컴퓨터를 18 세 미만의 어린이가 사용하고 특정 성인 콘텐츠 사이트에 대한 액세스를 제한하려고한다고 가정 해보십시오. 첫 번째는 내용이 포함 된 / etc / squid3 / list라는 파일을 만드는 것입니다.

성인

포르노

섹스

포링가

그리고 지금  squid.conf 파일 다음 규칙을 적용합니다.

acl denegados url_regex "/etc/squid3/lista"

http_access allow !denegados

보시다시피 우리는 허용을 사용했습니다 원칙적으로 허용하는 것이지만 보시면 추가했습니다! 따라서 거부하는 것은 다음을 입력하는 것과 같습니다.

acl denegados url_regex "/etc/squid3/lista"

http_access deny denegados

또한 도메인 이름이나 IP뿐만 아니라 목록을 만들 수도 있습니다. 당신은 또한 도메인을 넣을 수 있습니다 예를 들어 .xxx, .gov 등과 같은 도메인에 대한 액세스를 제한합니다. 이전 규칙을 기반으로 한 예를 살펴 보겠습니다. 다음과 같은 파일 / etc / squid3 / 도메인을 만듭니다.

. 에듀

.co.uk에서

.ORG

그리고 이제 우리의 규칙, Google에서 생성하는 금지 된 사이트 목록에 대한 액세스를 거부하지만 다음 도메인이있는 URL에 대한 액세스는 허용합니다.

acl denegados url_regex "/etc/squid3/lista" 
acl permitidos dstdomain "/etc/squid3/dominios"

http_access allow !denegados dominios

신장:

죄송합니다. 댓글을 보니 나는 중요한 것을 놓치고 있었다. 나는 그것이 어떻게 사용되는지에 대한 예제를 넣는 것으로 제한했으며 Squid 서버를 시작하는 것을 잊었습니다.

sudo service squid3 start

"/etc/init.d/squid start"가 시작되기 전에, 이제는 제가 여러분을 위해 입력 한 다른 줄을 사용해야합니다. 구성 파일이 더 이상 /etc/squid/squid.conf에 있지 않고 /etc/squid3/squid.conf에있는 것처럼. 좋습니다. 필터링 정책이 생성되고 시작되면 브라우저도 구성해야합니다. 예를 들어 Mozilla Firefox 또는 파생 제품을 사용하는 경우 구성 메뉴 (세 개의 막대)로 이동 한 다음 기본 설정, 고급을 클릭하고 네트워크 탭에서 연결 섹션의 구성을 클릭합니다. 여기에서 수동 프록시 구성을 선택하고 IP와 Squid가 사용중인 포트 (이 경우 3128)를 입력합니다. 또한 "모든 항목에 동일한 프록시 사용"을 선택하고 변경 사항 저장을 종료합니다.

제발 귀하의 의견을 남기는 것을 잊지 마십시오, 의심 또는 당신이 원하는 무엇이든 ... 오징어보다 훨씬 위의 튜토리얼이지만 도움이되기를 바랍니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자: AB Internet Networks 2008 SL
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   니콜라스

    감사합니다!, 도움이됩니다.

  2.   지미 올라 노

    약간 복잡한 주제에 대해 다시 한 번 아주 잘 요약되어 있습니다. "사용자 수준 : 중간"이라고 계속 말하지만 "네트워크"에 대한 몇 가지 개념을 알아야합니다.

    "프록시"를 사용하도록 브라우저를 구성하는 옵션을 추가해야한다고 생각하지만이 항목은 "오징어 소개"이므로 다음 항목에 대해 잘 알고 있습니까? 배달 (마지막으로 나를 귀찮게 할 위험이 있으므로 가정이나 회사에서 사용하는 은행 웹 페이지 및 / 또는 금융 기관을 "프록시"하지 말 것).

    1.    아이작 PE

      안녕하세요, 의견 주셔서 감사합니다. 예, IPTABLES와 Squid는 너무 두껍기 때문에 자세히 설명하는 기사를 만들 수 없으며 일상적인 예제로만 제한해야합니다.

      그러나 당신은 절대적으로 옳습니다. 지금 프록시를 구성하기 위해 추가했으며 계획했지만 잊어 버렸습니다. 내 잘못.

      인사와 감사합니다 !!

      1.    지미 올라 노

        Uffff "트렁크"중요한 것을 깨닫지 못해 죄송합니다.
        서비스 시작 :-( "이모가 없습니다"없이-구어체 연설에 대해 용서해주십시오-매우 성공적인 확장! 8-)

        {부팅 할 때마다 "/ sbin / init"를 수정하여 수정합니다.
        http : // www. ubuntu-es.org/node/ 13012 # .Vsr_SUJVIWw}

        {또 다른 쉬운 방법은 "update-rc.d"를 사용하는 것입니다.
        https : // parbaedlo. wordpress.com/201 3/03/07 / setting-start-and-stop-of-services-linux-update-rc-d /}

        링크에 공백을 추가하고 제거하면 탐색 할 것입니다 ;-)

        관심을 가져 주셔서 대단히 감사합니다.

  3.   ALBERT

    LINUX NEWS : Linux Mint 공격 : 설치 프로그램 감염 및 사용자 자격 증명 손상

    http://www.muylinux.com/2016/02/21/ataque-a-linux-mint

    1.    Azpe

      이미 게시했지만 여기에 다른 페이지를 스팸하지 마십시오.

  4.   ALBERT

    ANDROID NEWS : GM Bot, Mazar가 파생 된 Android 트로이 목마

    http://www.redeszone.net/2016/02/21/gm-bot-el-troyano-para-android-del-que-deriva-mazar/

  5.   에르난

    안녕 Jimmy, 오징어가 당신을 위해 그 페이지를 검색하지 않도록 어떻게합니까? 투명 옵션에 대해 언급하면 ​​각 컴퓨터에 프록시를 구성하는 지루한 작업을 피할 수 있습니다.

    1.    지미 올라 노

      좋은 질문입니다. 고객 웹 페이지의 무료 소프트웨어에 CAPTCHA를 설치했습니다.
      (http : // www. ks7000. net. ve / 2015/04/03 / un-captcha-easy-and-simple-to-implement /
      -Humily, 그것은 "스팸"또는 자기 홍보가 아니라 적절합니다-)
      그리고 Squid를 사용할 때이 이미지는 같은 이름을 붙여서 다시로드되지 않는다고 생각합니다. -ea, 임의의 이름을 생성 할 수도 있습니다. 지금까지 생각한 적이 없었습니다. 같은 이름을 사용하면 Squid가 다음을 반환합니다. "캐시"에 있습니다.

      분명히«프록시»의 주요 기능은 이미지 (웹 페이지 중 가장 무거운 이미지)를 사용하여 대역폭을 절약하는 것입니다. [i] 이러한 이미지는 정적이며 시간이 지나도 변하지 않는다는 가정하에 99 %의 사실입니다. 사례 [/ i].

      그러나 CAPTCHA에서는 "실행 중이 아니므로"이전 저장소를 제거하고 항상 새 이미지를 반환해야합니다.

      은행에 관해서는 스페인에서 가장 큰 것이«Caixa»라는 것을 알고 있습니다. 우리는 EXAMPLE 규칙을 만들 것입니다.

      acl caixa dstdomain .lacaixa.es

      어디서 :
      acl-> 명령을 사용하여 규칙을 만듭니다 (Mr. Isaac의 기사, 위 단락 참조).

      caixa-> 규칙 이름.

      dtsdomain-> "type"옵션은 도메인을 참조 함을 나타냅니다. 중요 시작 부분의 점 ( http://ww w.visolve. com / squid / squid24s1 / access_controls.php)

      도메인-> 필요한 도메인을 공백으로 구분하여 추가 할 수 있다고 생각합니다. 공백에 대해 내가 표시된 웹 링크에 삽입하고 제거하면 탐색 할 것입니다 (영문 페이지).

      여기에 제시된 지식이 귀하에게 도움이 되기를 바랍니다. LinuxAdictos!

    2.    지미 올라 노

      글쎄, 오징어의 투명성에 대한 질문에 다시 대답하기 위해 나는 당신이 중급 수준의 지식을 가져야한다고 주장하고 교훈적인 이유로 내가 생각하는 다음 기사 (영어로)를 가능한 한 많이 요약하려고한다.

      http : // ww w.deckle.co. 영국 / squid-users-guide /transparent-caching-proxy.html

      참고 사항 :
      -저의 핑백을 피하기 위해 링크에 공백을 추가했습니다(저는 팀과 전혀 관련이 없습니다). Linux Adictos, 그러므로 나는 상기 조치를 수행할 권한이 없습니다).
      -이것은 투명성에 대해 몰랐습니다! (그들은 나를 가르치지 않았다고 말합니다).
      -도움이 돼요 저도 저도 돕습니다. ?

      글쎄, 그렇게 말하면서 사업을 시작합시다.

      저는 Mr. Isaac에게 프록시가 설치된 브라우저 구성을 확장 할 것을 제안했고 그는 매우 친절하게했습니다 (와우,이 사람은 많은 일을 할 시간을 어디에서 찾을 수 있습니까?).

      이 체계에서 Squid 사용은 선택 사항입니다. 로컬 영역 네트워크의 각 사용자가 자신의 작업을 담당하게되지만 설치할 수있는 "bash 스크립트"가 있다는 "종이 페세타에 대해 은색"을 걸 수 있습니다. . SSH를 통해 GNU / Linux를 실행하는 다양한 컴퓨터에.

      전제 조건 :이 게시물에서 Mr. Isaac이 가르치는대로 Squid 서버가 작동하고 있다는 것입니다. 이미 테스트하고 "워크로드"를 적용하고 제대로 작동한다면 계속 진행할 수 있습니다.

      투명성 체계에 따라 :

      FIRST.- 우리의 Squid는«eth0»또는«wlan0»에서 기본 경로«gateway»여야합니다.-중간 수준의 지식을 기억하십니까?-잘 설정합니다 (DHCP를 사용하여 기본적으로 수행됩니다. 이러한 서비스의 서버 구성 :
      http : // en.wikipe dia.org/wiki/ Dynamic_Host_Configuration_Protocol).

      오류 발생시 Squid (실행되는 컴퓨터)가 작업 부하로 과부하되면 모든 트래픽을 모뎀으로 직접 리디렉션하고 모뎀 유형 "브리지"를 사용하여 외부로 나가면 해당 이벤트에서 트리거되는 "스크립트"를 만들고 DHCP 서버를 구성합니다.이 서버는 Squid와 다른 컴퓨터에 설치되어야합니다.

      참고 : Squid를 사용하는 컴퓨터는 항상 DHCP의 IP 주소에 의존하지만 동시에 해당 DHCP 서버를 통해 "제어"를 할 수 있습니다. 고정 IP 주소로 작업하고 싶다면 할 수 있지만 더 많은 컴퓨터를 추가하거나 일부를 교체하면 다시 구성해야하며 아이디어가 아닙니다.
      ht tps : // 페노 바르 비탈. wordpress.com/2012/07/23/the-12-reasons-by-who-a-administrator-of-systems-lazy-is-a-good-administrator/)
      또 다른 참고 사항 (두 번째 항목 참조) : 모뎀 및 / 또는 라우터 장치는 DHCP 기능을 비활성화해야하며 DCHP 서버에 의해 관리되어야합니다 (이는 마운트 방법을 보여주기 위해 다른 항목이 나올 것임을 확신합니다.) 말했다 서비스-)

      두 번째 .- 우리는 Squid 서버로 향하는 트래픽을 필터링해야합니다. 무선 네트워크 영역 "wifi"를 커버하는 분산 된 라우터가 여러 개있는 경우 여전히 로컬 영역 네트워크이지만 중간 크기입니다. 기본적으로 첫 번째 지점과 동일하지만 다른 장치 또는 서브넷이있는 경우에도 구성해야합니다. 따라서 대기업에서 "아이언을 분쇄"하는 작업을하는 사람들에게주의해야합니다.

      셋째-Squid를 호스팅하는 GNU / Linux에서 포트를 리디렉션하고«방화벽»을 구성해야합니다 (이전 기사 IPTables 읽기
      http://www.linuxadictos.com/introduccion-a-iptables-configura-un-firewall-en-linux.html )

      iptables -t nat -A PREROUTING -p TCP -dport 80 -j REDIRECT -to-port 3128

      그리고 IPFW에 :

      / sbin / ipfw add 3 fwd 127.0.0.1,3128 tcp from any to any 80

      말할 필요도없이, 우리는 웹 페이지의 기본 포트 인 웹 페이지의 기본 포트 80에서 Apache 또는 Ngix 서버를 실행할 수 없습니다. COMMON SENSE INDICATES는«cache»에 대한 디스크 공간에 종속적 인 Squid를 사용하여 컴퓨터에 더 많은 부하를주지 않도록합니다.-.

      넷째-우리는 Squid 서버를 구성하고 nano 또는 가장 좋아하는 편집기로 "/etc/squid/squid.conf"를 수정하여 해당 모드에서 작동하고 있음을 알려야합니다.

      http_port 3128 투명

      또한 "/etc/sysctl.conf"에서 패킷 전달을 활성화해야합니다.

      net.ipv4.ip_forward = 1
      net.ipv6.conf.all.forwarding = 1

      이 마지막 줄은 IPv6가있는 경우 나중에 한 번 구성하는 것이 좋습니다.

      마지막으로 Mr. Isaac이 권장 한대로 Squid 서비스를 다시 시작하고 네트워크 서비스도 다시 시작합니다.

      /etc/init.d/procps.sh 다시 시작

      에라타에 대한 어떤 믿음 (또는 저의 말도 안되는 부분)이 이와 같은 방식으로 저에게 알려주었습니다. 귀하의 비판과 의견을 환영합니다.
      씨. 이삭은이 "싸움"에서 마지막 말을 할 중재자입니다.

  6.   지미 올라 노

    이 짧은 비디오에서 우리는 ReactOS와 함께 가상 머신을 사용하는 것을 제외하고 프록시 서버를 사용하도록 Mozilla를 구성하는 방법을 볼 수 있습니다. 제거하고 찾아보기) :

    ht tps : / / www. 유튜브. com / watch? v = st47K5t7s-Q

  7.   선생님

    나는 방금 당신의 라디오 방송국을 따르기 시작했고, 나는 이틀 .. 아주 좋은 콘텐츠 ..
    멕시코 인사말 .. (저는 선생님이고 제 모래알은 오픈 소스를 사용하는 것입니다)

  8.   양자리

    사용자에게 Facebook을 볼 수있는 권한을 부여하고 다른 사용자는 이미 구성된 제한 사항과 특정 시간에 인터넷 사용자를 활성화하는 방법을 알고 싶습니다. 조언을 부탁드립니다. 감사합니다.

  9.   벨 키스

    아리 씨가 설명 해주신 것은 당신이 원하는 기계가 제한되지 않고 빠질 필요가 있다는 것인데 그때까지는 설명이 나오고 저도 그 주제에 대해 경험이 없어요

  10.   승리자

    잘자요, 실례합니다. 제 질문은 좀 기초적인 것 같지만 오징어를 설치하고 centos 5.4로 구성하고 와인과 울트라 서핑을 설치했습니다. 제가하려는 것은 울트라 서핑에서 오징어와 인터넷을 공유하는 것입니다. FreeProxy 및 ultrasurf를 사용하는 Windows 컴퓨터 XP에서 문제없이 공유 할 수 있지만 Linux에서 수행하는 방법을 모르겠습니다.

  11.   다니엘 안드라 다

    나는 당신과상의한다. 나는 당신과 같은 구성을 가지고있다. 내 경우에는 오징어가 실행되는 80 포트로 포트 8080을 리디렉션한다. 문제는 일부 사용자가 해당 구성을 컴퓨터에 남겨두고 모든 서비스는 아니지만 포트 80을 통해 취소하고 액세스한다는 것입니다. 이것은 iptables로. 문제가 어디에 있는지 알고 있습니까?

  12.   결혼시키다

    매우 유용하고 잘 설명되어 있습니다. 감사!

    질문이 있습니다. acl을 만들고 싶을 때 어디에서해야하나요, 즉 구성 파일의 어떤 줄에서 수행합니까? 그리고 게시물에 표시되는대로 http_access 명령 아래에 즉시 두 줄을 넣어야합니까? 아니면 어디?

    다시 한 번 감사드립니다 !! 인사말!