iVPS 가상서버호스팅

CentOS 7.2 Squid 프록시 서버 설치 본문

VPS

CentOS 7.2 Squid 프록시 서버 설치

iVPS 영은파더♥ 2016.04.16 17:20

CentOS 7.2 Squid 프록시 서버 설치



SQUID 데몬을 설치해서 PROXY Server 를 운영할 수가 있다.


디폴트 설정이 로컬 네트워크를 위한 환경설정이므로 외부IP에서 접속이 가능한 프록시 서버를 설정해 보자.


테스트 서버는 ConoHa VPS 서버이며 일본 도쿄에 위치해 있다.


IP우회 목적으로 포스팅을 하려고 한 것인데, 네이버, 다음은 로딩이 되는데 페이스북이랑 구글은 왜 안 열리는지 모르겠다.

: 원인을 찾았다.

해결 방법은 아래에 적용되어 있다.


원인은 나중에 알아보고 우선 설치 방법 부터 알아보도록 하겠다.


[root@conoha ~]# yum -y install squid

Loaded plugins: fastestmirror, langpacks

Loading mirror speeds from cached hostfile

 * base: www.ftp.ne.jp

 * epel: ftp.kddilabs.jp

 * epel-debuginfo: ftp.kddilabs.jp

 * epel-source: ftp.kddilabs.jp

 * extras: www.ftp.ne.jp

 * ius: ius.mirror.constant.com

 * updates: www.ftp.ne.jp

Resolving Dependencies

--> Running transaction check

---> Package squid.x86_64 7:3.3.8-26.el7 will be installed

--> Finished Dependency Resolution


Dependencies Resolved


================================================================================

 Package         Arch             Version                  Repository      Size

================================================================================

Installing:

 squid           x86_64           7:3.3.8-26.el7           base           2.6 M


Transaction Summary

================================================================================

Install  1 Package


Total download size: 2.6 M

Installed size: 8.5 M

Downloading packages:

squid-3.3.8-26.el7.x86_64.rpm                              | 2.6 MB   00:00

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

  Installing : 7:squid-3.3.8-26.el7.x86_64                                  1/1

  Verifying  : 7:squid-3.3.8-26.el7.x86_64                                  1/1


Installed:

  squid.x86_64 7:3.3.8-26.el7


Complete!


yum 으로 squid 패키지를 설치한 다음에 /etc/squid/squid.conf 파일을 수정해주자.


# vi /etc/squid/squid.conf

http_access allow localnet

http_access allow localhost

http_access allow all


#http_port 3128

http_port 8080


cache_dir ufs /var/spool/squid 100 16 256



http_access allow all 추가

: all 을 해주면 모든 클라이언트 IP에서 접속이 가능하다. 특정 IP에서만 접속이 가능하게 하려면

acl myip src 특정IP 추가

http_access allow myip 추가

이렇게 해주면 된다.


http_port 3128 을 8080 으로 변경 (3128 포트도 되어야 하나 코노하에서 무슨짓을 해놓은 듯 하다. 그래서 8080으로 변경하였다.)


cache_dir 찾아서 주석을 풀어주자. (프록시서버가 IP우회 목적도 있지만 데이터를 캐싱해서 속도을 높여주는 목적도 있다.)


이제 환경설정 파일 수정은 끝났으니 방화벽에서 8080 포트를 허용해주자.


[root@conoha ~]# firewall-cmd --permanent --zone=public --add-port=443/tcp

success

[root@conoha ~]# firewall-cmd --permanent --zone=public --add-port=8080/tcp

success

[root@conoha ~]# firewall-cmd --reload

success


방화벽이 iptables 라면


# iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

# iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

# service iptables save


구글, 페이스북 처럼 https:// 로 SSL 보안모드로 동작하는 페이지는 443 Port 를 방화벽에서 열어주어야 한다.


그리고 정확한 원인은 모르겠지만 ipv6 를 disable 시켜주어야 한다.


# vi /etc/sysctl.conf (아래 내용 추가)

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv4.ip_forward = 1

# sysctl -p (재적용)

[root@conoha ~]# sysctl -p

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv4.ip_forward = 1


이제 방화벽 셋팅 후에 squid 를 시작 및 부팅시에도 시작되게 셋팅해주면 된다.


[root@conoha ~]# systemctl start squid

[root@conoha ~]# systemctl enable squid

Created symlink from /etc/systemd/system/multi-user.target.wants/squid.service to /usr/lib/systemd/system/squid.service.


자 이제 모든게 완료되었으니 테스트를 해보도록 하자.




크롬 브라우저에서 프록시로 접속하는 방법은 http://itrooms.tistory.com/177 여기를 참고하면 된다.




Trackback : 1 | Comments : 20
  • SQUID 2016.05.12 15:32 안녕하세요..

    이런 메일 써도 되는지 모르겠읍니다 만 , 이해를 구하면서 부탁 드리겠읍니다.
    나이 먹어 동영상 서버를 구축 해서 사용 중인데..
    네트워크 구성을 모르는 초보자라서요.

    SQUID PROXY SERVER 를 구축 하여 원본 화일 서버로 부터
    CACHING 하여 서비스를 하려고 합니다.

    어떻게 구축을 해야 하는지 문의를 몇일 고민 하다 답답한 마음에
    이렇게 메일을 보냅니다.

    자문을 구합니다.

    부탁 드립니다.
  • iVPS 영은파더♥ 2016.05.12 16:23 신고 안녕하세요.
    정확한 용도는 잘 모르겠지만
    단순 캐싱이 목적이라면 아파치에서 제공하는 mod_cache 모듈을 활용하여도 되고
    mod_proxy 모듈을 이용한 reverse proxy pass 를 사용하면 될 것 같습니다.
  • iVPS 영은파더♥ 2016.05.12 16:53 신고 squid proxy 서버를 구축하게 되면 사용자가 일일히 프록시 서버 사용 설정을 해야하는 번거로움이 있기 때문입니다.
    아파치를 듀얼로 구성하여
    하나는 동영상 웹서버
    하나는 프록시 웹서버로 활용하는 방법이 좋을 것 같습니다.
    유저 -> 프록시 웹서버 <-> 동영상 웹서버 이런 구성이 됩니다.
  • 김경환 2016.09.22 12:29 안녕하세요. 몇달간 방황하다 딸기아빠님 포스팅을 보고 질문드리고자합니다.
    포스팅을 보고 centos에서 프록시를 구축하였습니다.
    하지만 컴퓨터를 끄고 켤때마다 로컬ip가 변경되어서 사용하고자 할때마다 squid.conf에서 로컬아이피를 변경해주는
    작업이 여간 귀찮은일이 아닐수 없네요.
    이같은 경우 아이디와 비밀번호를 설정하여 프록시로 접속하는 방법이 있는것으로 알고 있습니다.
    (ex-123.456.78.90:8888:id:password)
    혹시 설정방법을 알고계시면 지식나눔을 부탁드려도 될까요?
  • iVPS 영은파더♥ 2016.09.22 13:26 신고 안녕하세요.
    로컬아이피라는게 클라이언트 pc의 IP를 말씀하신게 맞다면
    http_access allow 192.168.
    이런씩으로 해주면 될 것 같습니다.
  • 김경환 2016.09.22 13:33 해보도록 하겠습니다. 감사합니다.
  • lhi 2017.04.24 13:43 안녕하세요 이곳저곳 다니다가 우연히 방문했습니다
    모르는것이 많아 정말 죄송하지만 답변 부탁드리겠습니다.....

    우선 저는 한국에 거주중입니다.
    미국현지 로컬 호스팅을 통해
    미국 ip 8개정도를 얻고싶은데 어떤방법이 있는지 문의드립니다.

    사용 용도는 해외 쇼핑몰 구매인데
    여기가 아이피차단을 엄격하게 해서 결제가 어렵습니다
    일정사용량 이상 접속하는 서브넷 대역을 전부 차단시켜버려서
    제가 여기를 이용하려면 저 혼자만의 서브넷 대역이 필요할거같습니다

    알아본 바로는 vps를 구매해서 vpn을 구축하면 된다는데 다른방법도 있나요?

    그리고 8개 ip를 얻기위해서는 vps서버를 8개를 사야하는건가요?

    이쪽 전문이 아니라 모르는것이 많네요 ㅜㅜ

    끝으로 긴글 읽어주셔서 감사합니다.... ㅜㅜ
  • iVPS 영은파더♥ 2017.04.24 13:50 신고 안녕하세요~
    VPS 서버에 VPN 이나 프록시서버를 구축해서 아이피를 우회하는 방법이 있습니다.
    그리고 ip 는 서버 하나에 ip 를 여러개 구입이 가능합니다.
    그리고 윈도우 vps 를 구축하면 원격데스크톱 연결을 해서 이용하여도 됩니다.
    vps 업체가 윈도우 os 를 지원하지 않는다면 코노하 처럼 커스텀 iso 이미지를 지원한다면 윈도우도 설치가 가능합니다.
  • lhi 2017.04.24 18:24 답변 정말 감사합니다 혹시 vpn 또는 proxy 서버 구축관련한 포스팅이 있을까요?
    원격데스크톱으로 로그인하는 윈도우vps로 구축하는게 좋을거같네요 !
    c언어라고는 교양으로 들은 얕은 지식밖에 없는데 시작하기에 조금 막막하네요 ㅠㅠ
  • iVPS 영은파더♥ 2017.04.24 18:31 신고 지금 댓글의 본문이 프록시 포스팅입니다.
    구글에서 검색해도 많은 자료가 있을거에요~
    http://blog.ivps.kr/61
    vpn 포스팅입니다.
  • lhi 2017.04.26 16:43 본문은 리눅스에서 squid로 설치하는데 윈도우 os는 어떤걸로 설치하는건가요?
    윈도우 os로 구축을 하면 접속은 원격데스크톱 연결로 하면 되는거 맞나요?
    위에 언급해주신 코노하는 사람들이 많이쓰는 vps라서 알려지지않은 업체 vps를 사용하려고 합니다 ㅠㅠ
  • iVPS 영은파더♥ 2017.04.26 16:48 신고 커스텀 iso 설치가 가능한 vps 업체를 고르신다음에 커스텀 os 설치 방법을 미리 알아보시고 선택하세요~
    코노하에 커스텀 os 올려서 설치하는 건 제 블로그에 있지만 다른 vps 업체는 저도 안해봐서 잘 모르겠습니다.
    아니면 요금은 좀 더 비싸겠지만 윈도우 설치 지원하는 vps 업체를 이용해보시는 것도 괜찮을 것 같네요.
    vultr.com 도 custom iso 를 지원하네요~
  • loaa 2017.12.02 14:33 안녕하세요 질문이 있습니다..
    특정 ip를 여러개 설정하고 싶은데
    acl myip src 192.168.1.1
    acl myip src 192.168.1.2
    http_access allow myip 이렇게 하는게 맞나요?
  • iVPS 영은파더♥ 2017.12.02 14:37 신고 myip1 myip2 이렇게 구분되게 해주세요~
  • loaa 2017.12.02 14:41 답변 감사합니다.. 초보자라 한번더.. 확인 부탁드립니다..
    acl myip1 src 192.168.1.1
    acl myip2 src 192.168.1.2
    http_access allow myip
    이렇게 하는건가요..? 감사합니다.
  • iVPS 영은파더♥ 2017.12.02 15:35 신고 http_access allow myip1
    http_access allow myip2
    이렇게 해주세요~
  • refine 2018.07.11 13:41 영은파더님!
    vultr에서 $2.5는 ip6v로 서비스를 오픈했네요
    vultr도 영은파더님때문에 옮겨타서 쓰고있는데 ㅎ
    감사합니다

    근데 프록시서버 구축하려는데... 잘 안되네요 위방법으로 하면 안되는건가요?
  • iVPS 영은파더♥ 2018.07.11 13:45 신고 정말 저렴하죠~
    ipv6 로 서비스는 안해봐서 잘 모르겠네요~
  • refine 2018.07.11 13:56 지금 세팅해보는데 프록시 이용이 안되네요 ㅎ...
  • iVPS 영은파더♥ 2018.07.11 14:30 신고 잘은 모르겠지만
    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv4.ip_forward = 1
    이 설정과 관련이 있지않을까요~
    ipv4 로 한번 해보세요~
댓글쓰기 폼