Как перезапустить squid centos
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 является одним из самых популярных прокси кеширующих серверов. Это повышает скорость работы веб-сервера и может помочь вам ограничить доступ пользователей к Интернету.
Запустите эмулятор терминала или переключитесь в текстовую консоль. Если работа ведется в какой-либо графической среде (KDE, Gnome, и т.д.), ярлыки программ-эмуляторов могут находиться в главном меню оболочки. Если не удалось их найти, попробуйте воспользоваться функционалом запуска приложений, также доступным из данного меню. При отсутствии подходящих программ, произведите их установку при помощи, например, Synaptic.
Если эмулятор терминала в графической среде не будет использован, осуществите переключение в текстовую консоль. Для этого нажмите одно из сочетаний клавиш Ctrl+Alt+F1- Ctrl+Alt+F12.
Запросите текущий статус демона squid. Введите команду:
service squid status
В случае если Squid установлен, но не работает, запустите его командой:
service squid start
Если необходимо выполнить установку данного программного обеспечения, воспользуйтесь Synaptic или менеджером пакетов apt-get. Инсталляцию из командной строки произведите командой:
apt-get install squid
Перезапустите Squid с параметрами по умолчанию. Выполните команду:
service squid restart
Дождитесь окончания процесса перезапуска.
Если целью перезапуска является изменение параметров исполнения 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 настройки нужно выставить такими:
* где 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.
Читайте также: