Лайфхаки

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

Как создать и настроить прокси-сервер Squid. Режимы работы прокси-сервера Squid

19.07.2022 в 12:41

Как создать и настроить прокси-сервер Squid. Режимы работы прокси-сервера Squid

Прокси-сервер Squid может работать в следующих трех основных режимах:

Прозрачный режим

В этом режиме HTTP соединение осуществляемое клиентами перенаправляется на прокси-сервер без их ведома или явной конфигурации. В этом режиме не требуется настройка клиентов.  Недостатки данного способа : необходима конфигурация NAT и перенаправления трафика, аутентификация клиентов не работает, не перенаправляются FTP и HTTPS запросы.

Аутентифицирующий режим

Для работы в этом режиме клиенты должны быть настроены для работы с прокси-сервером (в настройках соединения должен быть прописан адрес прокси-сервера). Может выполняться аутентификация и авторизация клиентов через Kerberos, Ldap, NTLM, IP и Radius. Возможно построение взаимодействия с серверами Microsoft Active Directory путем аутентификации клиентов – членов домена, используя протокол Kerberos, и последующей авторизации членов групп домена используя LDAP в прозрачном режиме (пользователь вводит свой пароль только при регистрации в домене). Для авторизированных групп возможно применение различных настроек контроля доступа и QoS (delay pools).

Обратный прокси-сервер

Прокси-сервер кэширует исходящие данные. Обратный прокси-сервер Squid получает данные у HTTP сервера от имени клиента и передает их обратно клиенту (например, в Интернет). Этот режим позволяет осуществить:

  • Использование кэширования, которое снижает нагрузку на HTTP сервера;
  • Распределение нагрузки между HTTP серверами;
  • Маскировку HTTP серверов и их характеристик;
  • Предотвращение web атак на сервера.

Настройка Squid debian. Пошаговое руководство по установке и настройке прокси-сервер Squid

Давайте попробуем вместе с ноля создать и настроить собственный прокси-сервер на базе дистрибутивов Ubuntu / Debian с помощью Squid .

Устанавливаем пакеты программного обеспечения

Прежде всего, обновляем репозиторий нашей операционной системы. Для этого выполняем команду apt update :

Важно : здесь и далее управление пакетами с помощью утилиты apt ( Advanced Packaging Tool ) выполняется с правами суперпользователя ( root ) — через команду sudo .

Теперь обновляем пакеты — для этого вводим в командную строку команду apt dist-upgrade :

Настройка Squid debian. Пошаговое руководство по установке и настройке прокси-сервер Squid

Поскольку в результате обновилось ядро Linux , нужно перегрузить систему. Воспользуемся командой shutdown с опцией -r (перезагрузка вместо выключения) и аргументом now (немедленно):

Теперь устанавливаем прокси-сервер Squid . Для этого используем команду apt install , добавив в качестве аргумента squid . Также установим apache2-utils для аутентификации пользователей по паролю:

Настраиваем прокси-сервер Squid

Теперь нам предстоит настроить работу нашего прокси-сервера. На всякий случай делаем резервную копию файла настроек Squid . Для этого сначала переходим в каталог /etc/squid/ с помощью команды cd :

После чего копируем файл squid.conf , изменив имя итогового файла на squid.conf.default с помощью команды cp :

Файл настроек Squid будет находиться там же, но его исходный вариант не будет перезаписываться при работе с утилитой.

Настройка Squid CentO. 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-адреса.

    Настройка прокси-сервера в браузере

    Вы можете подключить сервер-посредник к любому браузеру на вашем компьютере. Сделав это, прокси будет работать только при посещении сайтов через ту программу, в которой вы его настраивали. Принцип подключения прокси практически одинаковый на всех браузерах. Для примера разберем настройку сервера в Google Chrome, Opera, Firefox, Internet Explorer.

    Важно! Перед тем, как использовать прокси очистите кэш и cookie-файлы на вашем браузере, чтобы по ним нельзя было добраться до ваших персональных данных.

    Настройка прокси-сервер в Google Chrome

    Как создать и настроить прокси-сервер Squid. Режимы работы прокси-сервера Squid 01

    Для подключения прокси к этому браузеру следуйте пошаговой инструкции:

    1. Запустите
    2. Перейдите в меню браузера.
    3. Зайдите в «Настройки».
    4. Напишите слово «Прокси» в поле «Поиск настроек», чтобы быстрее найти нужный раздел.
    5. Нажмите на параметр «Открыть настройки прокси-сервера на компьютере».
    6. Браузер перенаправит вас в системные настройки, где нужно активировать использование прокси и ввести его данные.

    Настройка прокси-сервера в Opera

    Как создать и настроить прокси-сервер Squid. Режимы работы прокси-сервера Squid 02

    Следуйте инструкции:

    1. Запустите
    2. Нажмите на «Меню».
    3. Зайдите в «Настройки».
    4. В поле «Поиск настроек» введите слово «Прокси».
    5. Нажмите на параметр «Открыть настройки прокси-сервера для компьютера».
    6. Вы попадаете в системные настройки, где вам нужно активировать прокси и ввести его данные.

    Настройка прокси-сервера в Mozilla Firefox

    Как создать и настроить прокси-сервер Squid. Режимы работы прокси-сервера Squid 03

    Для подключения сервера в этом браузере выполните следующие действия:

    1. Запустите
    2. Нажмите «Открыть меню».
    3. Зайдите в «Настройки».
    4. В поле «Найти в настройках» впишите слово «Прокси».
    5. Нажмите кнопку «Настроить».
    6. Выберите вариант «Ручная настройка прокси».
    7. Введите данные вашего прокси-сервера.
    8. Поставьте галочку возле параметра «Использовать этот прокси-сервер для всех протоколов».
    9. Нажмите «ОК» для сохранения настроек

    Настройка прокси-сервера в Internet Explorer

    Как создать и настроить прокси-сервер Squid. Режимы работы прокси-сервера Squid 04

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

    1. Запустите Internet Explorer.
    2. Нажмите на «Сервис» (шестеренку в правом верхнем углу браузера).
    3. Перейдите в «Свойства браузера».
    4. Зайдите на вкладку «Подключения».
    5. Нажмите «Настройка сети».
    6. Поставьте галочки возле «Использовать прокси-сервер для локальных подключений» и «Не использовать прокси-сервер для локальных адресов».
    7. Введите ip-адрес и порт.
    8. Перейдите в «Дополнительно».
    9. Поставьте галочку возле параметра «Один прокси-сервер для всех протоколов».

    Squid настройка прозрачного прокси. Решение задачи


    Был найден неиспользуемый стационарный компьютер с двух-ядерным Intel-ом, 1 Гб ОЗУ и жестким на 80 Gb.Для решения будет сделано следующее:
    1. Установлена Linux Ubuntu Server 18.04 LTS
    2. На сервер установлен и настроен прозрачный Proxy Squid, собранный из исходных кодов с поддержкой HTTPS.
    3. Интеграция сервера в подсеть, путем перенаправления запросов на Proxy или альтернативным вариантом (в самом конце)
    Начнем.

    3.1. Установка и настройка Ubuntu 18.04

    Процесс установки прост. Качаем дистрибутив Ubuntu Server 18.04 с официального сайта. Рекомендую качать со старым установщиком, так как новый, лично у меня, ушел в бесконечную загрузку во время установки. Записываем образ на флешку/диск любым удобным способом. Для записи на флешку рекомендую использовать Rufus и в начале записи выбрать «Запись DD-образа». Далее, следуя информации на экране, устанавливаем систему. Остановимся только на выборе компонентов, где можно выбрать сразу OpenSSH и всё. Нам много не нужно, а что нужно, установим сами.Итак, Ubuntu установлена. Сеть, если у вас DHCP, уже настроена. Войдем в режим суперпользователя, чтобы каждый раз не добавлять sudo к командам.

    sudo -s

    Введем свой пароль и обновим систему.

    apt-get update apt-get upgrade

    Установим текстовый редактор и файловый менеджер.

    apt-get install nano mc

    Чтобы сохранить файл в nano , необходимо нажать Ctrl+O и следом Y . Выход из редактора осуществляется нажатием Ctrl+X . Можно сохранить файл сразу перед выходом, нажав Ctrl+X и следом Y .Чтобы открыть файловый менеджер, введите mc . Откроется типичный DOS-овский NortonCommander или в Windows TotalCommander/FAR с двумя панелями. Хотя я привык работать с консолью, файловый менеджер тоже иногда помогает, например, найти нужный файл быстрее.Если же у вас не DHCP или вы хотите отдельный IP-адрес для своего сервера, как этого захотел я, то перейдем к настройке.

    Настройка статического IP-адреса

    В отличии от предыдущих версий Ubuntu, в новой 18.04 сеть настраивается уже не в привычном всем нам /etc/network/interfaces , а через netplan в файле /etc/netplan/*.yaml . Файл может называться по разному, но он там один. Сам же /etc/network/interfaces пишет нам следующее:
    Также, если вы захотите обновиться с версии старше до 18.04, настройки сети останутся там, где и были. Netplan актуален только для чистой установки 18.04.
    Приступим, все-таки, к настройке сети.
    Для начала посмотрим название сетевого интерфейса, присвоенное ОС, и запомним его.

    ifconfig

    Теперь откроем файл с настройками.

    nano /etc/netplan/*.yaml

    В нем уже должна быть настройка DHCP. Приведем файл к следующему виду.

    # This file describes the network interfaces available on your system # For more information, see netplan(5). network: version: 2 renderer: networkd ethernets: название сетевого интерфейса: dhcp4: no dhcp6: no addresses: gateway4: шлюз nameservers: addresses:

    Вписываем свои интерфейс, адрес и шлюз. DNS рекомендую оставить эти — Яндекс.DNS Детский будет как дополнительная защита. Такой же DNS настроен у меня в роутере. В любом случае, необходимо указывать тот DNS, который раздает роутер.
    Здесь необходимо обратить внимание на пробелы (именно пробелы, а не табуляция). Каждый, своего рода, пункт отделяется от предыдущего пробелом. К примеру, если после nameservers строку addresses не отделить пробелом, а выровнять со строкой выше, то, при попытке применения настроек, netplan выдаст ошибку.
    Применим настройки.

    netplan apply

    Перезагрузим сервер, на всякий случай.

    Squid настройка Ubuntu. How to Install and Configure Squid Proxy on Ubunt. 04

    Это руководство проведет вас через процесс настройки прокси-сервера Squid в Ubuntu 18.04 и настройки веб-браузеров Firefox и Google Chrome для его использования.

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

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

    Пакет Squid включен в репозитории Ubuntu 18.04 по умолчанию. Чтобы установить его, введите следующие команды от имени пользователя sudo :

    sudo apt updatesudo 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 …

    Настройка Squid

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