Лайфхаки

Маленькие, полезные хитрости

How to Configure Proxy in RHEL. Preamble

23.10.2022 в 12:02

How to Configure Proxy in RHEL. Preamble

This guide will walk you through how to install Squid Proxy server on CentOS 8 / RHEL 8 Linux. Squid is a web proxy server application that gives organizations proxy and cache services for the Web supporting HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages. Squid has extensive access controls and makes a great server accelerator. It runs on the most available operating systems, including Windows and is licensed under the GNU GPL. To install Squid on a CentOS 8/RHEL 8 server, proceed by following these steps.

Step 1: Update your server

Let us make sure our house is completely fresh before we embark on getting our server installed in a comfortable place.

sudo dnf update

Step 2: Install Squid

Squid is available on Yum repositories. Run the command below to install it in our clean server.

sudo dnf install squid -y

Step 3: Configure forward proxy settings

You send a connection request to a forward proxy, and then it retrieves data from the internet on your behalf. This way, it can act as a caching server as well by keeping all the pages being frequently visited within it. Next time you access pages that have been cached, your request does not need to go all the way to the internet. The browser retrieves it from the cache.

Before we go on, let us back up the default configuration file.

Wget Proxy. What is wget?

wget is a GNU command-line utility tool primarily used to download content from the internet. It supports HTTP, HTTPS, and FTP protocols.

wget is designed to be effectively reliable over slow or unstable network connections. So if a download stops before completion due to a network error, wget automatically continues the same download from where it left off. And repeats this process until the whole file is successfully retrieved.

The tool also works as a web crawler by scraping linked resources from HTML pages and downloading them in sequence. It repeats this process until all content downloads or a specified recursion depth by the user is obtained. Afterward, the retrieved data is saved in a directory structure mirroring the remote server, thus creating a clone of webpages via HTTP.

wget is versatile, which is another reason it became so popular, it can work for scripts, terminals, and cron jobs . Not to mention the tool is non-interactive and runs independently in the background, meaning it does not matter if you are actively logged on while downloads occur.

Speaking of downloads, the wget tool even supports downloads through HTTP proxies. A proxy server is any machine that translates traffic between networks or protocols. Proxies are an intermediary server separating end-user clients from the destinations that they browse. Proxy servers may exist in schools, workplaces, and other institutions, where users need authentication to access the internet, and in some cases restricts the user from accessing certain websites .

When you use a proxy server, traffic flows through the proxy server to the requested address. Then the request returns through that same server, although this may not always be the case , and that server forwards the received data from the requested webpage back to you.

CentOS 7 Proxy client. How to Install and Configure Squid Proxy on CentOS 7

В этом руководстве объясняется, как настроить Squid на CentOS 7 и настроить браузеры Firefox и Google Chrome для использования прокси.

Squid - полнофункциональный кеширующий прокси, поддерживающий популярные сетевые протоколы, такие как HTTP, HTTPS, FTP и другие. Размещение Squid перед веб-сервером может значительно повысить производительность сервера, кэшируя повторяющиеся запросы, фильтруя веб-трафик и получая доступ к географически ограниченному контенту.

Установка Squid на CentOS

Пакет Squid включен в стандартные репозитории CentOS 7. Для установки выполните следующую команду от имени пользователя sudo :

sudo yum install squid

После завершения установки запустите и включите службу Squid:

sudo systemctl start squidsudo systemctl enable squid

Чтобы убедиться, что установка прошла успешно, введите следующую команду, которая выведет статус службы:

sudo systemctl status squid

● squid.service - Squid caching proxy Loaded: loaded (/usr/lib/systemd/system/squid.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2019-07-13 16:47:56 UTC; 12s ago …

Конфигурирование Squid

Squid можно настроить, отредактировав/etc/squid/squid.confфайл. Дополнительные файлы с параметрами конфигурации могут быть включены с помощью директивы include.

Прежде чем вносить какие-либо изменения, создайте резервную копию исходного файла конфигурации с помощьюcpкоманды:

sudo cp /etc/squid/squid.conf{,.orginal}

Чтобы отредактировать файл, откройте его в текстовом редакторе :

sudo nano /etc/squid/squid.conf

По умолчанию Squid настроен на прослушивание порта3128на всех сетевых интерфейсах на сервере.

Если вы хотите изменить порт и установить интерфейс прослушивания, найдите строку, начинающуюся с,http_portи укажите IP-адрес интерфейса и новый порт. Если интерфейс не указан, Squid будет прослушивать все интерфейсы.

/etc/squid/squid.conf

Запуск Squid на всех интерфейсах и на порте по умолчанию должен подойти большинству пользователей.

Вы можете контролировать доступ к серверу Squid, используя списки контроля доступа (ACL).

По умолчанию Squid разрешает доступ только из localhost и localnet.

Если все клиенты, которые будут использовать прокси-сервер, имеют статический IP-адрес, вы можете создать ACL, который будет включать разрешенные IP-адреса.