Linux [Расширенное управление] — развертывание и применение прокси-сервера Squid (подробное объяснение прозрачного режима)
Linux [Расширенное управление] — развертывание и применение прокси-сервера Squid (подробное объяснение прозрачного режима)

————Предисловие————

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

Особенности кальмара
  1. Управление кэшем:SquidВозможность кэширования часто используемого веб-контента.,тем самым уменьшая количество запросов к исходному серверу,Сократите потребление полосы пропускания и ускорьте доступ для пользователей.
  2. контроль доступа:обеспечить мощныйконтроль Функция списка доступа (ACL) может контролировать права доступа пользователей на основе IP-адреса, времени, URL-адреса и других условий.
  3. Фильтрация контента:через конфигурацию,Может фильтровать плохие веб-сайты и ограничивать доступ к определенным типам контента.,Повысьте безопасность использования сети.
  4. балансировка нагрузки:Поддерживает несколько восходящих проксибалансировка нагрузку, повысить надежность и производительность прокси-сервисов.
  5. регистрация:Подробные журналы доступа пользователей,Управляющему персоналу удобно проводить аудит и анализ.
Несколько режимов Кальмара

Прокси-сервер Squid может развертываться в нескольких режимах для удовлетворения различных потребностей сети. Ниже приводится введение в три основных режима Squid: традиционная модель, Прозрачный режим и Режим обратного прокси.

1. Традиционная модель

Традиционный режим (Вперед Proxy)Самый распространенный режим прокси.,клиент Явно отправить запрос на прокси-сервер Squid,Переслать запрос на целевой сервер через прокси-сервер.,и возвращает ответ клиенту.

Функции:

  • Клиенту необходимо настроить IP-адрес и порт прокси-сервера.
  • В основном используется для кэширования и контроля доступа.
  • Обычно используется для сетевого ускорения、Оптимизация пропускной способности и контроль сетевого доступа.
2. Прозрачный режим

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

Функции:

  • клиент Никакой настройки не требуетсяпрокси-сервер。
  • Обычно используется в корпоративных сетях для беспрепятственного управления сетевым трафиком.
  • Конфигурация относительно сложна и требует сетевого оборудования (например, iptables или оборудования Cisco).
3. Режим обратного прокси

Режим обратного прокси (Обратный Proxy),Также известен как режим веб-ускорителя.,Прокси-сервер Squid находится между клиентом и веб-сервером,клиентский запрос перенаправляется на прокси-сервер,Затем прокси-сервер запрашивает реальный веб-сервер. Обычно используется для ускорения веб-приложений и балансировки нагрузки.

Функции:

  • клиент Запрос не знает о наличии прокси.
  • Обеспечивает услуги кэширования веб-сервера и балансировки нагрузки.
  • Обычно используется для повышения производительности и надежности веб-серверов.
Прозрачный режим

Этот эксперимент объясняет агентный метод Прозрачного режима.

Экспериментальная среда

Сервер имитирует сервер внешней сети для создания веб-службы с IP-адресом 100.0.0.2 24.

Один сервер в качестве прокси-сервера Squid

Две сетевые карты ens33 192.168.192.111 24 ens36 100.0.0.1 24

Win7 в качестве клиента

Экспериментальные требования: Win7 получает доступ к внешним веб-сервисам через прокси-сервер squid.

http://t.csdnimg.cn/992F2

Язык кода:javascript
копировать
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1

Измените конфигурацию системы, чтобы включить переадресацию IP.

Измените файл конфигурации прокси-сервера.

Язык кода:javascript
копировать
 vim /etc/squid.conf

59 http_port 192.168.192.111:3128 transparent

Эта строка конфигурации сообщает Squid прослушивать указанный IP-адрес и порт и включать функцию прозрачного прокси.

Перезапустите службу кальмара

Язык кода:javascript
копировать
[root@localhost squid-3.5.23]# netstat -nultp | grep squid
tcp6       0      0 :::3128                 :::*                    LISTEN      56706/(squid-1)     
udp        0      0 0.0.0.0:52440           0.0.0.0:*                           56706/(squid-1)     
udp6       0      0 :::60903                :::*                                56706/(squi
[root@localhost squid-3.5.23]# kill -9 56706


[root@localhost squid-3.5.23]# squid
[root@localhost squid-3.5.23]# netstat -nultp | grep squid
tcp        0      0 192.168.192.111:3128    0.0.0.0:*               LISTEN      56718/(squid-1)     
udp        0      0 0.0.0.0:50034           0.0.0.0:*                           56718/(squid-1)     
udp6       0      0 :::33559                :::*                                56718/(squid-1)  

Выше приведены шаги для перезапуска.

Если вы раньше не включали squid, вы можете напрямую войти в squid, чтобы включить его.

Установите правила брандмауэра

Язык кода:javascript
копировать
[root@localhost squid-3.5.23]# iptables -t nat -A PREROUTING -i ens33 -p tcp --dport 80 -j REDIRECT --to-port 3128
клиентский тест

сноватест доступа

Доступ на основе имени хоста

Изменить хосты клиента

Язык кода:javascript
копировать
C:\Windows\System32\drivers\etc

Щелкните правой кнопкой мыши «Блокнот», чтобы открыть и добавить имя хоста и соответствующий IP-адрес.

тест доступа
Внедрить фильтрованный доступ
Язык кода:javascript
копировать
vim /etc/squid.conf

acl youxi url_regex *.ssl.com
http_access deny youxi

Убейте процесс кальмара
Перезапуск

посетите еще раз

Язык кода:javascript
копировать
www.ssl.com
boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода