Как перезапустить squid centos

Обновлено: 03.07.2024

How to Install and Configure Squid Proxy on CentOS 7

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

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

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

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

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

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

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

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


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

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

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

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

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

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

Вместо добавления IP-адресов в основной файл конфигурации мы создадим новый выделенный файл, который будет содержать IP-адреса:

Всякий раз, когда вы вносите изменения в файл конфигурации, вам нужно перезапустить службу Squid, чтобы изменения вступили в силу:

Аутентификация Squid

Мы будем использовать openssl для генерации паролей и добавления username:password пары в /etc/squid/htpasswd файл с помощью tee команды, как показано ниже:

Например, чтобы создать пользователя с именем «mike» и паролем « Pz$lPk76 », вы должны выполнить:

Откройте основную конфигурацию и добавьте следующее:

С помощью первых трех выделенных строк мы создаем новый ACL с именем authenticated . Последняя выделенная строка разрешает доступ аутентифицированным пользователям.

Перезапустите сервис Squid:

Настройка брандмауэра

Если вы используете брандмауэр, вам нужно открыть порт 3128 . Для этого выполните следующие команды:

Если Squid работает на другом порту, отличном от порта по умолчанию, вам нужно разрешить трафик через этот порт.

Настройка вашего браузера для использования прокси

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

FireFox

Шаги ниже одинаковы для Windows, macOS и Linux.

В верхнем правом углу щелкните значок гамбургера, ☰ чтобы открыть меню Firefox:

Нажмите на ⚙ Preferences ссылку.

Прокрутите вниз до Network Settings раздела и нажмите на Settings. кнопку.

Откроется новое окно.


Чтобы вернуться к настройкам по умолчанию Network Settings , выберите Use system proxy settings переключатель и сохраните настройки.

Есть также несколько плагинов, которые могут помочь вам настроить параметры прокси Firefox, такие как FoxyProxy .

Chrome

Google Chrome использует настройки прокси-сервера системы по умолчанию. Вместо изменения параметров прокси операционной системы вы можете использовать дополнение, такое как SwitchyOmega, или запустить браузер Chrome из командной строки.

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

Linux:

macOS:

Windows:

Профиль будет создан автоматически, если он не существует. Таким образом, вы можете запускать несколько экземпляров Chrome одновременно.

Вывод

Вы узнали, как установить squid на CentOS 7 и настроить свой браузер для его использования.

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

Как перезапустить squid

Запустите эмулятор терминала или переключитесь в текстовую консоль. Если работа ведется в какой-либо графической среде (KDE, Gnome, и т.д.), ярлыки программ-эмуляторов могут находиться в главном меню оболочки. Если не удалось их найти, попробуйте воспользоваться функционалом запуска приложений, также доступным из данного меню. При отсутствии подходящих программ, произведите их установку при помощи, например, Synaptic.

Если эмулятор терминала в графической среде не будет использован, осуществите переключение в текстовую консоль. Для этого нажмите одно из сочетаний клавиш Ctrl+Alt+F1- Ctrl+Alt+F12.

Как перезапустить squid

Начните сеанс пользователя root. В эмуляторе терминала выполните команду su. Затем введите учетные данные root (как в графической, так и в текстовой консоли).

Как перезапустить squid

Запросите текущий статус демона squid. Введите команду:
service squid status

В случае если Squid установлен, но не работает, запустите его командой:
service squid start

Если необходимо выполнить установку данного программного обеспечения, воспользуйтесь Synaptic или менеджером пакетов apt-get. Инсталляцию из командной строки произведите командой:
apt-get install squid

Как перезапустить squid

Перезапустите Squid с параметрами по умолчанию. Выполните команду:
service squid restart

Дождитесь окончания процесса перезапуска.

Как перезапустить squid

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

Если необходимо произвести кратковременный запуск прокси-сервера с измененными параметрами, остановите его командой:
service squid stop

В данной инструкции рассмотрена установка Squid на систему Linux CentOS 7 или 8.

Подготовка CentOS

1. Обновляем систему:

2. Добавляем правило в firewalld:

firewall-cmd --permanent --add-port=3128/tcp

* где 3128 — порт, на котором будет настроен наш прокси-сервер.

и перезапускаем firewalld:

3. Настраиваем время. Для этого сначала задаем корректный часовой пояс:

timedatectl set-timezone Europe/Moscow

После ставим утилиту для синхронизации времени:

yum install chrony

И запускаем ее для работы в качестве сервиса:

systemctl enable chronyd --now

Установка и настройка Squid

Устанавливаем прокси-сервер следующей командой:

yum install squid

И открываем на редактирование конфигурационный файл:

Если сеть клиентских компьютеров отличается от стандартной (192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8), необходимо ее добавить в acl, например:

acl localnet src 217.66.157.0/24

acl localnet src "/etc/squid/acl_localnet"

* кавычки обязательны
** после необходимо создать файл /etc/squid/acl_localnet и с каждой строчки перечислить разрешенные IP-адреса.

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

Настраиваем директорию для кэша:

cache_dir ufs /var/spool/squid 4096 32 256

* где ufs — файловая система (ufs для SQUID является самой подходящей); /var/spool/squid — директория хранения кэша; 4096 — объем пространства в мегабайтах, которое будет выделено под кэш; 32 — количество каталого первого уровня, которое будет создано для размещение кэша; 256 — количество каталого второго уровня, которое будет создано для размещение кэша.

Теперь создаем структуру папок под кэш следующей командой:

И уже можно запускать squid:

systemctl enable squid --now

Проверка

Заходим в настройки браузера и настраиваем использование прокси-сервера. Например, в Mozilla Firefox настройки нужно выставить такими:

Настройка Firefox для использования прокси-сервера

* где 192.168.163.166 — IP-адрес моего прокси-сервера.

Прозрачный прокси

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

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

И приводим ее к следующему виду:

И перезагружаем squid:

systemctl restart squid

Авторизация по логину и паролю

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

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/auth_users
auth_param basic children 25
auth_param basic realm SQUID PROXY
auth_param basic credentialsttl 3 hours
acl auth_users proxy_auth REQUIRED

* где /usr/lib64/squid/basic_ncsa_auth — расположение ncsa_auth (в зависимости от системы может находиться в другом каталоге); /etc/squid/auth_users — файл с логинами и паролями; children 25 разрешает 25 одновременных подключений; SQUID PROXY — произвольная фраза для приветствия; credentialsttl 3 hours будет держать сессию 3 часа, после потребуется повторный ввод логина и пароля.

Создаем файл с пользователями и создаем первую пару логина и пароля:

htpasswd -c /etc/squid/auth_users user1

Создаем второго пользователя:

htpasswd /etc/squid/auth_users user2

И перезагружаем squid:

systemctl restart squid

Исходящий сетевой интерфейс

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

acl 217_66_157_33 localip 217.66.157.33
tcp_outgoing_address 217.66.157.33 217_66_157_33

acl 217_66_157_34 localip 217.66.157.34
tcp_outgoing_address 217.66.157.34 217_66_157_34

* в данном примере, при подключении к прокси через IP 217.66.157.33, исходящие пакеты будут от IP 217.66.157.33; аналогично для IP 217.66.157.34.

Контроль доступа к сайтам

С помощью прокси-сервера SQUID мы можем разрешать и запрещать доступ к определенным сайтам. Рассмотрим два сценария — запретить определенные сайты или разрешить только конкретные сайты.

Разрешаем все, кроме определенного списка

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

В разделе с acl добавим строку:

acl BLOCKED url_regex -i "/etc/squid/denysite"

* в данном примере мы создаем acl с названием BLOCKED — по сути, список, который будет читаться из файла /etc/squid/denysite.

Выше разрешающих правил добавляем строку:

* данная строка указывает прокси-серверу на блокироку acl с названием BLOCKED.

Создаем файл со списком запрещенных сайтов:

systemctl reload squid

Запретить все, кроме некоторых сайтов

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

В разделе с acl добавим строку:

acl ALLOWED url_regex -i "/etc/squid/allowsite"

* в данном примере мы создаем acl с названием ALLOWED — список, который будет читаться из файла /etc/squid/allowsite.

Комментируем все разрешающие правила и добавляем строку с ALLOWED:

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

InetServices offers both Windows and Linux bare metal server hosting, and cloud server hosting for any small to medium size business. We also offer both PCI and HIPAA Compliant servers allowing you to achieve PCI or HIPAA Compliance without all the worries of figuring it out. InetServices offers much more than just dedicated servers and cloud servers, we offer you a complete solution to your hosting needs including Big Data, Disaster Recovery, and High Availability services.

Log into SSH on your dedicated or cloud server.

Start the Squid service

Restart the Squid service

This entry was posted in CentOS, Cloud Server Hosting, Dedicated Server Hosting, Linux, Red Hat and tagged CentOS, lin, Red Hat. Bookmark the permalink.

Leave a Reply Cancel reply






Dedicated Servers

Cloud Hosting

Solutions

Dedicated Servers and SSD Cloud Servers

InetServices helps all forms of companies with their dedicated server hosting and SSD cloud server hosting needs allowing these companies to focus on their core business and on their hosting environment. Big Data is changing the landscape of how businesses are run. Enterprise-class databases are now used to store, sort, and query multiple terabyte amounts of information. So whether you build your Big Data environment with bare metal cloud servers or dedicated servers, InetServices offerings makes it easy for any size business to leverage the exact amount of performance and scalability you need.

Beyond Cloud Server Hosting

InetServices offers a wide range of cloud hosting services. Everything from Public Cloud Hosting to Private Cloud Hosting and from Bare-Metal Cloud to Big Data Cloud providing a new generation of large-scale, performance-intensive applications for turnkey NoSQL solutions like Hadoop-as-a-Service and MongoDB. See what InetServices cloud server hosting can do for you.

Beyond Bare Metal Server Hosting

Businesses have been using our dedicated hosting for years for their dedicated web hosting and dedicated application hosting services. Now it's time to look beyond simple dedicated hosting services. Services such as High-Availability hosting and Disaster Recovery hosting are essential in keeping your business alive and successful no matter what.
So look beyond just dedicated server hosting.

Читайте также: