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 여기를 참고하면 된다.
'VPS' 카테고리의 다른 글
해외 Alvotech VPS 소개 (0) | 2016.05.10 |
---|---|
CentOS 7.x BIND 네임서버(DNS) 설치 및 설정하기 (0) | 2016.05.09 |
SQUID 프록시 특정 사이트만 허용 또는 차단하기 (0) | 2016.05.03 |
Squid Proxy 트래픽 제한 걸기 (0) | 2016.04.19 |
ConoHa VPS 커스텀 이미지 설치하는 방법 (21) | 2016.04.07 |