Прокси Squid - Часть 1

Всем привет, можете звать меня Броди. Я специалист в области центров обработки данных, а также фанат мира Linux по тому простому факту, что это облегчает мою жизнь и работу. Подумай об этом!

С этого момента я буду относиться к «тебе» более безлично, более уверенно. Мои учебные пособия будут посвящены не только установке службы, а теперь я дам вам все знания и инструменты, необходимые для того, чтобы вы могли максимально использовать возможности каждой функции приложения., любые вопросы отправьте сообщение на почту

Squid - это не только прокси и кеш-сервис, он может делать гораздо больше: управлять acl (списками доступа), фильтровать контент, он может даже выполнять ssl-фильтрацию даже в прозрачном режиме (метод прокси - без необходимости настраивать в настройках прокси. из их браузеров, это как человек посередине, никто не знает, что это там). Поэтому я обычно вижу, как весь потенциал этого приложения тратится впустую из-за того, что я не знаю, как настроить каждую из его частей.

Но обо всем по порядку, давайте просто посмотрим на особенности полномочие.

Установить:

aptitude установить squid3

Отредактируйте файл конфигурации:

vi /etc/squid3/squid.conf

  • http_port ip: порт

Примером может быть http_порт 172.16.128.50:3128  Услуга будет предоставляться указанным IP-адресом и портом, особенно я бы не рекомендовал оставлять порт 3128 по умолчанию в производственной среде.

  • acl localnet src ip / маска

Примером может быть ACL локальная сеть SRC 172.168.128.0/24 общий список доступа (как можно более макрос), который будет иметь доступ к указанной службе. localnet - это то, что называется acl, но вы можете указать там любое имя.

  • http_access разрешить локальную сеть

Простой http_access разрешить локальная сеть то же имя, которое вы указали в предыдущем пункте, здесь мы разрешаем этой сети перемещаться и использовать сервисы squid

  • quick_abort_min 0 КБ
  • quick_abort_max 0 КБ

Время, когда мы прерываем запрос. Я объясню это более подробно: когда пользователь просматривает ваш прокси и отменяет запрос или загрузку, у вас есть 3 варианта, если загрузка меньше fast_abort_min 80 КБ, то Squid загрузит его, если загрузка отсутствует более чем на fast_abort_max 150 КБ будут немедленно отменены, если для обоих установлено значение 0 КБ, как в случае, загрузка завершится, как только пользователь отменит.

  • read_timeout 5 минут

Это время, когда сеанс сервера будет открыт до тех пор, пока нет нового чтения, например, на статической странице очень высокое значение не требуется, но для динамических страниц, таких как facebook, это приемлемое значение

  • request_timeout 3 минуты

Это значение может быть намного ниже, это зависит от качества WAN-соединения вашего сервера и количества ваших клиентов. Этот параметр указывает максимальное время ожидания HTTP-заголовков запроса после установления соединения.

  • half_closed_clients выкл.

Предотвращает полузакрытые соединения из-за ошибок связи. Вы не хотите тратить зря ресурсы сервера ни при каких обстоятельствах.

  • shutdown_lifetime 15 секунд

Этот тег позволяет сократить время ожидания для закрытия процессов squid при выполнении SIGTERM или SIGHUP.

  • log_icp_queries выкл.

Я оставляю это на ваше усмотрение, по умолчанию он включается, и он должен регистрировать в журнале каждый запрос, сделанный к кешу прокси.

  • DNS_nameservers 8.8.4.4 8 8.8.8.8

DNS-запросы будут делаться на эти IP-адреса, разделенные пробелом, если ничего не определено, DNS вашей системы используется по умолчанию

  • dns_v4_first на

Ну, это зависит от страны или настроек вашей среды, но в моем случае у меня нет IPv6 DNS, поэтому он по умолчанию устанавливает, что все сначала консультируется в ipv4

  • ipcache_size 2048

Максимальное количество записей в кеше sqid dns

  • ipcache_low 90

Наименьший размер записей кэша DNS.

  • fqdncache_size 4096

Максимальное количество записей FQDN в кеше

  • memory_pools выключен

Мы деактивируем, что оперативная память зарезервирована для будущих процессов squid, если это очень дефицитный ресурс на вашем сервере.

  • forwarded_for выкл.

Если вы хотите запретить им видеть ваш частный IP-адрес из глобальной сети, запросы будут поступать с неизвестным, или в этом случае ru ip wan

запускаем кеш

кальмар3 -z

Перезапускаем сервис

перезапуск службы squid3

Чтобы закончить, вам просто нужно указать в своем браузере, в параметрах прокси-сервера IP и порт, готовые вы должны просматривать

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


24 комментариев, оставьте свой

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Инженер Хосе Альберт сказал

    Отличное пошаговое руководство. Что мне больше всего понравилось, так это пошаговое объяснение репертуара конфигурации.

    Больше всего мне понравился вариант:

    quick_abort_min 0 КБ
    quick_abort_max 0 КБ

    Я думаю, что это чрезвычайно важно, потому что во многих случаях пользователь может потерять (отменить) из-за ситуации X загрузка, которая вот-вот закончится, и этот параметр, хорошо оцененный в соответствии с ресурсами нашего компьютера, может позволить нам продолжить указанную загрузку, поскольку вполне возможно, что тот же пользователь или другой может попытаться через короткий промежуток времени повторить попытку загрузки того же объекта, экономя трафик в Интернете.

    Поправьте меня, если я ошибаюсь, БродиДалле?

    1.    БроудиДалле сказал

      Да и нет, я объясню.

      Действительно, загрузка завершится успешно, даже если пользователь отменил ее, только тогда, когда тот же пользователь или другой попытается загрузить приложение или веб-страницу, squid доставит копию, которая у него уже есть в кеше, и не пойдет в Интернет для повторной загрузки данных. Теперь внимание, здесь эффект возобновления - это только диспетчер загрузки, который хранит данные в кеше вашего компьютера в течение заранее определенного времени и позволяет вам возобновить отмененную или прерванную загрузку, это не squid.

      В будущих уроках я буду подробно использовать squid в качестве кеша, чтобы вы не тратили впустую ресурсы WAN (Интернет) своей сети.

  2.   Хавьер Эспиноза сказал

    отличная статья Я изучаю squid и его реализацию, спасибо большое, она пригодится

    1.    БроудиДалле сказал

      Спасибо, обратите внимание, что в будущих уроках я буду полностью использовать squid в качестве кеша, чтобы вы не тратили впустую ресурсы WAN (Интернет) своей сети.

  3.   Генри Сервита сказал

    отличное руководство всегда полезно для расширения знаний. Ура

  4.   Мигель Пинья сказал

    Привет, прежде всего спасибо за тему, пояснения и предоставленные знания. У меня есть еще комментарий, вопрос. Я привожу к столу проблему, которая точно случилась со мной со squid3 на Debian, оказалось, что в один прекрасный день, несколько месяцев назад, я обновил систему, и вместе с этим обновлением появилась новая версия squid, 3.5, оттуда прокси ушел чтобы передать все HTTPS-соединения, то есть сразу перестал открывать https // www.google.com.cu, https://www.facebook.com и все, что использует безопасный протокол HTTPS. Немного исследуя, я обнаружил, что проблема была в обработке SSL, что-то Debian прекратил упаковывать squid3 по юридическим и философским причинам. Мне НЕ нужно говорить о дискомфорте, который существовал в сущности в те дни, когда я пытался решить эту «проблему», которую в конце концов я не смог исправить, но я вернулся к предыдущей версии Squid3 и сохранил пакет со способностью предотвратить это от повторного обновления. На сайте, где сообщается об ошибках Squid, он рассказал об ошибке под названием «squid-in-the-middle» и предупредил, что все кальмары, начиная с версии 3.4.8, были уязвимы, поэтому они рекомендовали обновиться до более новой версии и скомпилировать squid с SSL + для создания сертификатов вручную…. ПОЖАЛУЙСТА! Если кто-то столкнулся с этой ситуацией и решил ее, я хотел бы быть таким добрым и пролить свет на эту проблему, а если нет, то хотя бы прокомментировать, что произошло то же самое ... и какое решение было применено. Спасибо.

    1.    БроудиДалле сказал

      В настоящее время в Debian Jessie доступен только до версии 3.4.8-6 + deb8u1… Однако я могу сказать вам, что вы можете использовать ssl bump, если используете squid в прозрачном режиме. http://wiki.squid-cache.org/ConfigExamples/Intercept/SslBumpExplicit…. Я не сомневаюсь в вашем вкладе, поэтому скоро установлю новейшую версию с его официального сайта

  5.   Антонио А. сказал

    Доброе утро,

    С точки зрения производительности, стоило бы устанавливать на Raspberry Pi 2?

    Заранее спасибо, привет.

  6.   Антонио А. сказал

    Привет,

    Хороший учебник, но у меня вопрос: с точки зрения производительности, стоит ли устанавливать его на Raspberry Pi 2?

    Привет.

    1.    БроудиДалле сказал

      Короткий ответ - нет ... вы можете это сделать, но некоторые функции, такие как сетевой интерфейс, процессор, диск, являются вашими узкими местами. Теперь, если вам все еще нужно действовать как прокси, я думаю, что tinyproxy лучше

      Спасибо за участие

  7.   Tabris сказал

    У вас есть опыт работы со Squid в pfSense?

    1.    БроудиДалле сказал

      да, что вам нужно знать? посмотрим, могу ли я вам помочь.

  8.   аконтрерас90 сказал

    Хороший учебник, уже очень хорошее время. Я мало знаю об этом. В настоящее время я устанавливаю прокси в своей компании с помощью squid.conf из предыдущей версии, и кое-что изменило синтаксис. Это мне очень помогло. Продолжу ждать 2 части.
    Большое спасибо

    1.    БроудиДалле сказал

      Спасибо за ваш комментарий, ожидая, что вторая часть squid о том, как кэшировать, будет скоро доступна.

  9.   Рамзес сказал

    Отлично, давным-давно я реализовал сервер ubuntu с помощью squid, и он работал достаточно хорошо, теперь я был отключен от Linux на некоторое время, и я хотел бы вернуться к проблеме кешированных серверов, чтобы повысить производительность проблем с wisp, спасибо за ваш вклад, Броуди!

  10.   Родригоариэль сказал

    Здравствуйте, ваша помощь очень хороша, я только что столкнулся с проблемой IPV6 с DNS, и у меня там проблемы. Когда веб-сайт с IPV6 не появляется, он будет работать для меня, поэтому мне нужно знать, нужно ли активировать dns_v4_first в конфигурации перед компиляцией squid, потому что в 3.3.8 он не будет работать.

  11.   Jocampo сказал

    Добрый день.
    Начнем с того, что это руководство было очень полезным. Теперь я представляю свой случай, так как я не знаю, смогу ли я с помощью squid решить свою проблему или мне следует искать другую альтернативу.
    У меня есть приложение, настроенное на экземпляре AWS EC2, которое должно делать запросы к amazon api, проблема возникает, когда эти запросы огромны, поэтому amazon распознает IP-адрес и на время отклоняет эти запросы, создавая неудобства в приложение у меня есть. Чтобы решить эту проблему, мы используем службу Proxymesh, которая принимает запрос и отправляет его с одного из своих IP-адресов, тем самым избегая упомянутой блокировки, дело в том, что для этого при запросе на Amazon мы делаем это через curl в php, давая как вариант для подключения к прокси-сетке. Теперь я ищу возможность того, что именно из экземпляра, который может быть настроен, когда запросы отправляются в amazon api, они переходят непосредственно в службу proxymesh, так что она отвечает за отправку запроса в конечный пункт назначения. Можно ли сделать это перенаправление с помощью squid или вы порекомендуете другую альтернативу?
    Большое спасибо.

  12.   Джанхо сказал

    Кто-нибудь пробовал несколько схем аутентификации на squid? Я установил версию 3.5.22 в debian, и хотя я пробовал разные варианты, она не работает, моя ситуация такова, что мне нужно, чтобы и пользователи моего AD, и другие внешние пользователи могли войти в систему, если они работают отдельно для me или ntml для пользователей домена, вошедшего в систему, и базовый (ncsa) для внешних, но не оба одновременно. любая помощь будет полезна. заранее спасибо

  13.   Будет сказал

    Уважаемый, я не знаю почему, я без проблем установил squid, но когда я обновил его до версии 3.5, файл access.log стал пустым, он больше не хранит данные, как раньше. Я не знаю, нужно ли мне видеть и внедрять WPAD, чтобы больше не использовать прозрачную конфигурацию, а также удалить перенаправление с порта 80 на 3128, как это обычно делается, поскольку с wpad это правило больше не требуется.

    вот почему журнал access.log больше не записывает активность?

    Ура !!

  14.   Cristian сказал

    Хороший очень хороший гид!

    Некоторое время я использую squid в качестве веб-прокси, но в последнее время я замечаю, что поиск или открытие страниц у меня занимает много времени ... может, мне нужно очистить кеш?

    У кого-то настроен squid с mkt, как он работает?

    привет

  15.   Джон сказал

    Очень хорошая информация, извините, как я мог присоединиться к squid с активным каталогом, чтобы во время входа на заблокированную страницу он запрашивал у меня имя пользователя и пароль учетной записи активного каталога, и если у указанного пользователя есть разрешение на вход на страницу, я дам вам доступ.

  16.   Чарли сказал

    Привет,
    отличное руководство, в любом случае, и вы можете направить меня, так как я просто не даю, у меня есть оптоволоконный интернет 20 МБ и squid 3.1, установленный на centos 6.9, и я обслуживаю примерно 300 пользователей, прежде чем у меня будет ссылка на 4 МБ и squid 3.1 и то же самое количество пользователей и, очевидно, все очень медленное и упомянутое администратором (я) Я обвинил ссылку, я наконец заставил их изменить ее, и Интернет такой же медленный, я переустановил ОС, настроил squid 3.1, и ничто другое не ускоряет Я сделайте скорость измерения из клиента squid, и это даст мне от 18 до 20 МБ, но меня все время упоминают, потому что сервис такой же медленный

    Если вы или кто-то, у кого была подобная проблема, могли бы дать мне свет, я буду бесконечно благодарен им.

  17.   Луис сказал

    Что происходит с адресами: они меняются на собственный сетевой адрес или используются те, которые вы используете.

  18.   Ирвинг сказал

    Я изучаю squid debian и его реализацию, большое спасибо, пригодится. но у меня возникают проблемы с подключением, и я проверяю, выдает ли он ошибку, и, видимо, все работает нормально.