차례:
Squid는 HTTP, HTTPS, FTP 등과 같은 널리 사용되는 네트워크 프로토콜을 지원하는 모든 기능을 갖춘 캐싱 프록시입니다. Squid는 대부분 반복 요청을 캐싱하고 웹 트래픽을 필터링하며 지리적으로 제한된 컨텐트에 액세스하여 웹 서버 성능을 향상시키는 데 사용됩니다.
이 튜토리얼은 Ubuntu 18.04에서 Squid Proxy를 설정하고이를 사용하도록 Firefox 및 Chrome 웹 브라우저를 구성하는 과정을 안내합니다.
우분투에 오징어 설치
오징어 패키지는 기본 Ubuntu 18.04 리포지토리에 포함되어 있습니다. 설치하려면 sudo 사용자로 다음 명령을 입력하십시오.
sudo apt update
sudo apt install squid
설치가 완료되면 Squid 서비스가 자동으로 시작됩니다.
성공적으로 설치되었고 Squid 서비스가 실행 중인지 확인하려면 다음 명령을 입력하여 서비스 상태를 인쇄하십시오.
sudo systemctl status squid
● squid.service - LSB: Squid HTTP Proxy version 3.x Loaded: loaded (/etc/init.d/squid; generated) Active: active (running) since Thu 2019-06-27 11:45:17 UTC…
오징어 구성
/etc/squid/squid.conf
파일을 편집하여 오징어를 구성 할 수 있습니다. “include”지시문을 사용하여 포함 할 수있는 구성 옵션과 함께 별도의 파일을 사용할 수도 있습니다.
구성 파일에는 각 구성 옵션의 기능을 설명하는 주석이 포함되어 있습니다.
변경하기 전에 원본 구성 파일을 백업하는 것이 좋습니다.
sudo cp /etc/squid/squid.conf{,.orginal}
파일을 편집하려면 텍스트 편집기에서 파일을여십시오.
sudo nano /etc/squid/squid.conf
기본적으로 Squid는 서버의 모든 네트워크 인터페이스에서 포트
3128
을 수신하도록 구성되어 있습니다.
# Squid normally listens to port 3128 http_port IP_ADDR:PORT
모든 인터페이스와 기본 포트에서 Squid를 실행하면 대부분의 사용자에게 적합합니다.
Squid에서는 클라이언트가 ACL (액세스 제어 목록)을 사용하여 웹 리소스에 액세스하는 방법을 제어 할 수 있습니다.
기본적으로 Squid는 로컬 호스트에서만 액세스를 허용합니다.
프록시를 사용할 모든 클라이언트에 고정 IP 주소가 있으면 허용 된 IP를 포함하는 ACL을 작성할 수 있습니다.
기본 구성 파일에 IP 주소를 추가하는 대신 IP를 보유 할 새로운 전용 파일을 만듭니다.
/etc/squid/allowed_ips.txt
192.168.33.1 # All other allowed IPs
완료되면 기본 구성 파일을 열고
allowed_ips
(첫 번째 강조 표시된 행)라는 새 ACL을 작성하고
http_access
지시문 (두 번째 강조 표시된 행)을 사용하여 해당 ACL에 대한 액세스를 허용하십시오.
#… acl allowed_ips src "/etc/squid/allowed_ips.txt" #… #http_access allow localnet http_access allow localhost http_access allow allowed_ips # And finally deny all other access to this proxy http_access deny all
http_access
규칙의 순서가 중요합니다.
http_access deny all
하기 전에 행을 추가해야합니다.
http_access
지시문은 방화벽 규칙과 유사한 방식으로 작동합니다. Squid는 위에서 아래로 규칙을 읽으며, 규칙이 일치하면 아래 규칙이 처리되지 않습니다.
구성 파일을 변경할 때마다 Squid 서비스를 다시 시작해야 변경 사항이 적용됩니다.
오징어 인증
Squid는 인증 된 사용자에게 Samba, LDAP 및 HTTP 기본 인증을 포함하여 다른 백엔드를 사용할 수 있습니다.
이 자습서에서는 기본 인증을 사용하도록 Squid를 구성합니다. HTTP 프로토콜에 내장 된 간단한 인증 방법입니다.
openssl
을 사용하여 비밀번호를 생성하고 아래에 표시된 것처럼
tee
명령을 사용하여
username:password
쌍을
/etc/squid/htpasswd
파일에 추가합니다.
printf "USERNAME:$(openssl passwd -crypt PASSWORD)\n" | sudo tee -a /etc/squid/htpasswd
비밀번호가 "
Sz$Zdg69
"인 "josh"라는 사용자를 작성하십시오.
printf "josh:$(openssl passwd -crypt 'Sz$Zdg69')\n" | sudo tee -a /etc/squid/htpasswd
josh:RrvgO7NxY86VM
이제 사용자가 생성
htpasswd
다음 단계는 HTTP 기본 인증을 활성화하고
htpasswd
파일을 포함시키는 것입니다.
기본 구성을 열고 다음을 추가하십시오.
#… auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/htpasswd auth_param basic realm proxy acl authenticated proxy_auth REQUIRED #… #http_access allow localnet http_access allow localhost http_access allow authenticated # And finally deny all other access to this proxy http_access deny all
처음 세 개의 강조 표시된 줄은
authenticated
된 새 ACL을 작성하고 마지막 강조된 줄은 인증 된 사용자에 대한 액세스를 허용합니다.
오징어 서비스를 다시 시작하십시오.
방화벽 구성
방화벽을 관리하기 위해
UFW
를 사용한다고 가정하면 테그 오징어 포트를 열어야합니다. 이를 위해 기본 오징어 포트에 대한 규칙이 포함 된 '오징어'프로필을 활성화하십시오.
sudo ufw allow 'Squid'
상태 유형을 확인하려면
sudo ufw status
결과는 다음과 같습니다.
Status: active To Action From -- ------ ---- 22/tcp ALLOW Anywhere Squid ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6) Squid (v6) ALLOW Anywhere (v6)
Squid가 기본이 아닌 다른 포트 (예:
8888
)에서 실행중인 경우
sudo ufw allow 8888/tcp
하여 해당 포트에서 트래픽을 허용 할 수 있습니다.
프록시를 사용하도록 브라우저 구성
Squid를 설정 했으므로 마지막 단계는 선호하는 브라우저를 사용하도록 구성하는 것입니다.
Firefox
아래 단계는 Windows, macOS 및 Linux에서 동일합니다.
-
오른쪽 상단에서 햄버거 아이콘
☰
을 클릭하여 Firefox 메뉴를 엽니 다.⚙ Preferences
링크를 클릭하십시오.Network Settings
섹션으로 스크롤하여Settings…
버튼을 클릭하십시오.새로운 창이 열립니다.
-
Manual proxy configuration
단일 선택 단추를 선택하십시오.HTTP Host
필드에 Squid 서버 IP 주소를 입력하고Port
필드에3128
을 입력하십시오.Use this proxy server for all protocols
선택란을 선택하십시오.OK
단추를OK
하여 설정을 저장하십시오.
-
이 시점에서 Firefox가 구성되었으며 Squid 프록시를 통해 인터넷을 탐색 할 수 있습니다. 확인하려면
google.com
열고 "what is my ip"를 입력하면 Squid 서버 IP 주소가 표시됩니다.
기본 설정으로 되돌리려면
Network Settings
설정으로 이동하여
Use system proxy settings
라디오 버튼을 선택하고
Use system proxy settings
을 저장하십시오.
FoxyProxy와 같은 Firefox의 프록시 설정을 구성하는 데 도움이되는 몇 가지 플러그인이 있습니다.
구글 크롬
Chrome은 기본 시스템 프록시 설정을 사용합니다. 운영 체제 프록시 설정을 변경하는 대신 SwitchyOmega와 같은 애드온을 사용하거나 명령 줄에서 Chrome 웹 브라우저를 시작할 수 있습니다.
새 프로필을 사용하여 Chrome을 시작하고 Squid 서버에 연결하려면 다음 명령을 사용하십시오.
리눅스:
/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
맥 OS:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
윈도우:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="http://SQUID_IP:3128"
프로필이 없으면 자동으로 생성됩니다. 이 방법으로 여러 개의 Chrome 인스턴스를 동시에 실행할 수 있습니다.
프록시 서버가 제대로 작동하는지 확인하려면
google.com
열고“what is my ip”를 입력하십시오. 브라우저에 표시된 IP는 서버의 IP 주소 여야합니다.
결론
Ubuntu 18.04에 Squid를 설치하고이를 사용하도록 브라우저를 구성하는 방법을 배웠습니다.
Squid는 가장 널리 사용되는 프록시 캐싱 서버 중 하나입니다. 웹 서버의 속도를 향상시키고 인터넷에 대한 사용자 액세스를 제한하는 데 도움을 줄 수 있습니다.
프록시 우분투우분투 18.04에서 스왑 공간을 추가하는 방법

스왑은 실제 RAM 메모리 용량이 가득 찬 경우 사용되는 디스크 공간입니다. Linux 시스템에 RAM이 부족하면 비활성 페이지가 RAM에서 스왑 공간으로 이동합니다. 이 튜토리얼은 Ubuntu 18.04에 스왑 파일을 추가하는 데 필요한 단계를 설명합니다.
centos 7에서 오징어 프록시 설치 및 구성 방법

Squid는 HTTP, HTTPS, FTP 등과 같은 널리 사용되는 네트워크 프로토콜을 지원하는 모든 기능을 갖춘 캐싱 프록시입니다. 이 튜토리얼은 CentOS 7에서 오징어를 설정하는 방법을 설명합니다
데비안 10 리눅스에서 오징어 프록시 설치 및 구성 방법

Squid는 HTTP, HTTPS, FTP 등과 같은 널리 사용되는 네트워크 프로토콜을 지원하는 모든 기능을 갖춘 캐싱 프록시입니다. 이 튜토리얼에서는 데비안 버스터에서 오징어 프록시를 설정하는 방법을 설명합니다.