MySQL. Просмотр запросов в реальном времени

В Linux существует команда «watch», которая позволяет запускать команды, стоящие после неё с определённым интервалом. Так можно почти в реальном времени отследить значения в выводе. К сожалению, иногда её неудобно или невозможно использовать для просмотра запросов MySQL. Но это ещё можно делать через mysqladmin.

Для просмотра всех исполняемых запросов из очереди в MySQL можно выполнить команду:

SELECT * FROM information_schema.processlist;

Но запросы часто выполняются намного быстрее секунды. Поэтому придётся запускать команду раз десять, чтобы поймать хотя бы один запрос, который находится в процессе выполнения. И чтобы не молотить пальцами по клавиатуре, можно воспользоваться утилитой «mysqladmin», запустив её с параметром «processlist» и некоторыми другими:

mysqladmin -h ip_адрес -P порт -u польз. —verbose -p -i 1 processlist

Разберём все ключи mysqladmin в этой команде:

  • -h — задаёт адрес сервера (хоста) с базой данных. По умолчанию «localhost».
  • -P — указывает порт сервера, который прослушивается базой данных. По умолчанию «3306».
  • -u — содержит имя пользователя базы данных, от имени которого надо выполнять запросы. По умолчанию «root».
  • -p — заставляет mysqladmin запоминать введённый пароль, чтобы не переспрашивал. Можно не использовать, если пароль указан в файле «.my.conf», в домашней папке пользователя.
  • -i — задаёт интервал в секундах между запросами.
  • —verbose — выводит полную информацию о запросе. Иначе SQL строка запроса будет обрезаться, чтобы таблица вошла в терминал по ширине.

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

  • id запроса
  • Имя пользователя
  • Имя базы данных
  • Хост (ip адрес)
  • Тип команды
  • Время исполнения
  • SQL строку запроса
  • Размер ответа

Чтобы завершить повисший запрос можно воспользоваться командой kill, которой передаётся id запроса (который узнаётся из первого столбца таблицы «processlist»):

mysqladmin -h ip_адрес -P порт -u польз. kill id_запроса



2021-05-30T11:17:44
Сервер

Что такое демоны в Linux

Демоны много работают для того, чтобы вы могли сосредоточится на своем деле. Представьте, что вы пишите статью или книгу. Вы заинтересованны в том, чтобы писать. Удобно, что вам не нужно вручную запускать принтер и сетевые службы, а потом следить за ними весь день для того чтобы убедится, что всё работает нормально.

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



Читать

Какую версию Ubuntu стоит использовать? Объясняем на пальцах.

Какую версию Ubuntu стоит использовать? Объясняем на пальцах.

Кратко: запутались в Ubuntu, Xubuntu, Lubuntu, Kubuntu?? Хотите знать, какой вариант Ubuntu вам следует использовать? Это руководство для начинающих поможет вам решить, какую Ubuntu выбрать.

Итак, вы уже почитали про возможные причины перехода на Linux и его преимущества, и вроде бы согласны попробовать. Ок.

Теперь, после долгого штудирования Интернета и изучения мнений людей о том, какая версия Linux лучше всего подходит для начинающих, вы решили установить Ubuntu. Мудрое решение. Читать

Чему должны научиться Java-разработчики в 2021 году. Часть 2

6. Spring Boot 2

Spring Boot выпустила новую версию под названием Spring Boot 2. Spring Framework отвечает за управление, а Spring Boot отвечает за создание автономного решения с обычной конфигурацией.

Это в основном зависит от JAVA Baseline, материала спецификации и подключаемых модулей. Его автоматическая настройка обеспечивает безопасность и оперативность. Он также обеспечивает техническую поддержку и улучшает опыт разработчиков. Это один из основных инструментов, который должен знать программист JAVA. Ключевые особенности погрузчика Undertow

  • Разверните Undertow, Jetty или Tomcat напрямую.
  • Чтобы уменьшить конфигурацию сборки, укажите зависимости.
  • Создавайте независимые приложения весной.
  • Автоматически настраивать пружинные насадки.
  • Обеспечьте полную безопасность и техническую поддержку.
  • Для конфигурации XML не требуется генерация кода.

 

7. Angular или отзывчивый JS

Специальная библиотека JavaScript для разработки пользовательского интерфейса называется ReactJS, а Angular — это фреймворк. Эти две ключевые технологии должны быть знакомы разработчику JAVA.

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

Бесплатное общение с открытым исходным кодом с сервером,  генераторами, функциями и т. д.

 

8. Apache Spark и Kafka.

Apache Spark и Kafka — две обязательные технологии для разработчиков Java 2021; у них был стабильный выпуск в конце 2018 года. Apache Spark — это платформа для кластерных вычислений, доступная с открытым исходным кодом.

Spark предоставляет интерфейс приложения для таких задач, как базовый ввод-вывод, планирование и диспетчеризация. Это дает платформу обработки потокового видео, которая также доступна в виде открытого исходного кода. В частности, код Apache Kafka на Java и Scala.

Kafka может использовать базовые API, такие как Producer API, Consumer API, Connector API и Stream API.

Основными особенностями Apache Spark являются:

  • Обработка потока в реальном времени
  • Интеграция
  • Расширенный анализ
  • Многоязычная поддержка
  • Скорость
  • Ключевые особенности Apache Kafka
  • Без простоев
  • Высокая производительность
  • Надежный
  • Надежность
  • Конверсия данных
  • Репликация
  • Docker

 

9. Docker

Docker — это язык, написанный на языке Go и разработанный для Linux. Это также важный инструмент для обучения разработчиков Java 2021. Он предоставляет инструменты, помогающие контейнеризации. У него также был стабильный выпуск в конце 2018 года. Контейнером или набором программных пакетов управляет Docker.

 

10. Модульное тестирование

Модульное тестирование — важный навык для разработчиков JAVA, которому вы должны научиться в наступающем году. Для тех, кто работает с Java в области интеграции и модульного тестирования, есть несколько инструментов и фреймворков. Например, Cucumber для автоматизированного интеграционного тестирования и фреймворка Robot. Mockito — это также инструмент, который поможет вам использовать свои навыки модульного тестирования.

 

11. Java 10, 11 или, может быть, 12

Java — один из широко используемых языков во всем мире, и он является важным навыком, который необходимо знать разработчикам JAVA. Он определяется как REPL (Цикл печати реальной оценки). в Java 9 оболочка Java четко объяснена. Существуют известные конструкции Java, такие как объявления, объекты, интерфейсы и классы, выполняемые и тестируемые в Java 9. Вы также можете выбрать более высокую версию, такую ​​как Java 10, 11 или 12. Java 12 — это последняя версия программирования на Java.

 

12. Spring framework 5.0

Java использует Spring Framework в качестве среды своего приложения. Spring имеет веб-фреймворк под названием Spring WebFlux. Spring Framework 5 предоставляет множество функциональных вариантов API. Spring Framework 5 — это специализированная среда, которая предлагает множество полезных вариантов API и использует программирование на Java. Spring Framework 5.0 — это надежный фреймворк, который предлагает множество функциональных вариантов API и использует программирование на Java; это обновленная версия Spring MVC.

 

13. DevOps

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

Ключевые особенности успешной реализации DevOps

  • Маленькими шагами
  • Поддержка существующих систем
  • Использование системного перевода
  • Развертывание набора инструментов DevOps

 

14. Groovy

Groovy также является одним из основных инструментов, которые разработчики Java должны изучить в 2021 году. Apache Groovy хвалит Java за то, что он поддерживает синтаксис Java. Одна из лучших особенностей Groovy — это статичность и динамичность. Его можно использовать как платформу Java, а также как язык сценариев или программирования. На него влияют Java, Python, Perl и Ruby.

 

Последнее слово

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

 

Начало:

 



2021-05-28T17:03:09
Java

Чему должны научиться Java-разработчики в 2021 году

Если вы хотите эффективно работать над Java-проектами в качестве разработчика в этом конкурентном мире, вам следует многому научиться. У вас должно быть много навыков, и то, что вам нужно, зависит от вашей должности. Но согласно последнему опросу о навыках Java-программистов и текущем рыночном спросе, здесь мы обсудим 10 основных вещей, которые Java-программист должен изучить в 2021 году.

 

Основные навыки для Java-программистов

Вы программист на Java или работающий профессионал, желающий перейти на Java? Или вы работающий Java-программист и хотите сделать карьеру занимаясь java разработкой? Тогда эта статья для вас; В 2021 году Java-разработчики должны знать несколько продвинутых инструментов.

 

1. Git

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

Линус Торвальдс основал Git в 2005 году, и вы можете использовать проект Git напрямую, поскольку это полноценная система контроля версий. Мы перечислили некоторые функции Git, чтобы помочь вам узнать о Git больше.

Распределенное расширение: репозиторий помогает Git создавать копию истории разработки.

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

Дизайн на основе набора инструментов : дизайн на основе набора инструментов помогает уменьшить составную часть.

Сильная поддержка нелинейного расширения: масштабирование и ветвление — два важных фактора, которые предлагает Git. Git обеспечивает мощную поддержку нелинейной разработки.

Хорошо организованное управление крупными проектами: локально хранимый репозиторий помогает прозрачно управлять крупными проектами.

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

 

2. Selenium

 

Веб-драйвер Selenium на Java — одна из технологий, которую Java-разработчик должен знать в 2021 году. Selenium предоставляет инструменты для тестирования веб-приложений с использованием тестовых фреймворков. Selenium Web Driver предоставляет API с открытым исходным кодом. Он включает функции автоматизации для веб-приложений. Вот критические элементы Selenium:

  • IDE (интегрированная среда разработки).
  • Дистанционное управление/Selenium 1.0
  • Веб-контроллер/Selenium 2.0/3.0
  • Selenium GRID

 

3. Jenkins

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

Jenkins сделал свои плагины доступными для интеграции с кодом, написанным на другом языке. Вот три основные причины, по которым вам следует выбрать Jenkins. Он предлагает более качественное программное обеспечение, чем другие.

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

 

4. Веб-сервисы REST

REST расшифровывается как «Репрезентативный перевод состояния». Это предложение представляет собой архитектурный стиль и является обязательным для разработчиков Java. Это улучшает производительность веб-службы. Он также определяет ограничения масштабируемости и производительности. Это одна из самых желанных вещей в 2021 году для разработчиков Java.

Рекреационное использование API для общения при разработке веб-сервисов. Если вы знаете HTML, CSS и т. д., Тогда вам пригодятся веб-службы RESTful. Ниже перечислены особенности сервисов RESTful:

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

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

Кэшируемая архитектура — основная причина блокировки веб-API и приложений. Стековая технология не задействована в этой блокировке. Кэширование важно для масштабируемости.

REST API поддерживает несколько серверов в многоуровневой системе, т. е. означает, что можно перенаправить запрос на другой сервер, если один сервер занят. Многоуровневая система обеспечивает быстрое время отклика для клиентов.

Унифицированный интерфейс предоставляет единый идентификатор ресурса (URI) для хранения записей.

REST — это подход к описанию любого веб-сервиса. Он предлагает гибкость, масштабируемость и свободу выбора одной технологии и платформы.

 

5. Spring security

Его основная функция — проверка подлинности приложения. Спецификация сервлета J2EE и спецификация EJB — две ключевые функции безопасности, популярные среди разработчиков JAVA.

Spring Security поддерживает несколько моделей аутентификации. Он интегрируется с различными технологиями, такими как HTTP, Kerberos, JOSSO, CAS, LDAP и т. д. Spring Security напрямую связан с Java, что настоятельно рекомендует разработчикам JAVA изучить его.

 

Продолжение следует …



2021-05-28T16:46:36
Java

Установка Squid с HTTPS фильтрацией на Ubuntu Server 20.04 .

Сегодня в статье рассмотрим Установку и настройку прокси сервера squid на операционной системе Ubuntu Server 20.04 LTS. Сразу предупреждаю, что данная инструкция справедлива только для Ubuntu 20.04. Если у вас более ранняя версия, то вам необходимо обновится до 20.04, вот инструкция как это сделать.






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




В настоящее время сайтов с поддержкой протокола http становится все меньше и меньше, а вот на протоколе https количество доменов непрерывно растет, причем гигантскими шагами. В связи с этим фильтрация squid`ом http трафика бессмыслена. Но в репозитории Ubuntu находится squid без поддержки SSL. До сих пор не понимаю почему не залить squid с поддержкой SSL, но до ладно, зато есть исходники из которых мы сами можем собрать пакет с поддержкой HTTPS. И так поехали:




Обновление системы




Первым делом обновим наш сервер:




sudo apt update && sudo apt dist-upgrade -y




Сборка squid из исходников.




Включим возможность использования исходников, для этого необходимо отредактировать файл /etc/apt/sources.list. Раскомментируем строки, которые начинаются на «deb-src»




sudo nano /etc/apt/sources.list




Посмотреть полный default source.list можно в данной статье.




После редактирования обновляемся еще раз:




sudo apt update




Далее установим необходимые для сборки пакеты:




sudo apt install openssl devscripts build-essential dpkg-dev libssl-dev libsasl2-modules-gssapi-mit




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




mkdir /home/squid
cd /home/squid




Скачиваем все необходимое для SQUID:




sudo apt build-dep squid -y




Скачиваем сами исходники нашего прокси-сервера:




sudo apt source squid




В случае если появится предупреждение о правах, устанавливаем их на скачанный файл и повторяем предыдущее действие:




sudo chmod 777 squid_4.10-1ubuntu1.3.dsc
sudo apt source squid




Переходим в директорию с исходниками:




cd squid-4.10/




Открываем файл rules на редактирование, в котором укажем, что наш прокси будет собираться с поддержкой SSL (HTTPS):




sudo nano debian/rules




Для этого в разделе с устанавливаемыми модулями добавим сроки:




--enable-ssl 
--enable-ssl-crtd 
--with-openssl




Обращаем внимание на символ «» в конце строк, должен быть везде кроме последней, вот примерно так:







Начинаем собирать DEB пакет. Процесс очень долгий, поэтому наберитесь терпения.




sudo dpkg-buildpackage -d




После сборки, если все прошло удачно, идем к собранным пакетам, на уровень повыше




cd ..




И начинаем установку пакетов, установка завершится с ошибкой:




sudo dpkg -i *.deb




Следующей командой доставляем недостающие зависимости:




sudo apt install -f




Повторяем установку, теперь установка завершится без ошибок:




sudo dpkg -i *.deb




Проверяем версию установленного SQUID и проверим наличие упоминаний SSL




squid -v | grep ssl




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




Сделаем копию конфигурационного файла squid на всякий случай:




sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.save




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




cp /dev/null /etc/squid/squid.conf




И поправим наш файл squid :




sudo nano /etc/squid/squid.conf




access_log /var/log/squid/access.log squid
acl blacklist url_regex -i "/etc/squid/lists/blacklist"
acl whitelist url_regex -i "/etc/squid/lists/whitelist"
acl localnet src 10.5.1.0/24            # RFC 1918 local private network (LAN1)
acl localnet src 10.1.1.0/24            # RFC 1918 local private network (LAN2)
acl manager proto cache_object
acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access allow whitelist
http_access deny blacklist
http_access deny manager
include /etc/squid/conf.d/*
http_access allow localnet
http_access allow localhost
http_access deny all
# Указываем наш FQDN сервера
visible_hostname squid.ru
# Порт для HTTP трафика (если указываем вручную)
http_port 3128
# Прозрачный порт для HTTP трафика
http_port 3129 intercept
# Порт для HTTPS трафика (если указать intercept, то будет прозрачным)
https_port 3130 intercept ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=20MB tls-cert=/etc/squid/proxyCA.pem tls-key=/etc/squid/proxyCA.pem cipher=HIGH:MEDIUM:!LOW:!RC4:!SEED:!IDEA:!3DES:!MD5:!EXP:!PSK:!DSS options=NO_TLSv1,NO_SSLv3,SINGLE_DH_USE,SINGLE_ECDH_USE tls-dh=prime256v1:/etc/squid/bump_dhparam.pem
sslproxy_cert_error allow all
always_direct allow all
acl whitelist_ssl ssl::server_name_regex "/etc/squid/lists/whitelist"
acl blacklist_ssl ssl::server_name_regex "/etc/squid/lists/blacklist"
acl step1 at_step SslBump1
ssl_bump peek step1
ssl_bump terminate blacklist_ssl
ssl_bump terminate !whitelist_ssl
ssl_bump splice all
#ssl_bump server-first all
#ssl_bump none all
sslcrtd_program /usr/lib/squid/security_file_certgen -s /var/lib/squid/ssl_db -M 4MB
refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|?) 0     0%      0
refresh_pattern /(Packages|Sources)(|.bz2|.gz|.xz)$ 0 0% 0 refresh-ims
refresh_pattern /Release(|.gpg)$ 0 0% 0 refresh-ims
refresh_pattern /InRelease$ 0 0% 0 refresh-ims
refresh_pattern /(Translation-.*)(|.bz2|.gz|.xz)$ 0 0% 0 refresh-ims
# example pattern for deb packages
#refresh_pattern (.deb|.udeb)$   129600 100% 129600
refresh_pattern .               0       20%     4320




Создадим файлы черного и белого списков




sudo mkdir /ets/squid/lists
sudo touch /etc/squid/lists/blacklist
sudo touch /etc/squid/lists/whitelist




Чтобы не получить ошибку о пустых файлах внесем в них какие-либо сайты. Например сайт mail.ru будет выглядеть в списке вот так:




mail.ru




Экранируем знак точки косой чертой.




Подмена сертификатов




Сгенерируем свой сертификат… лет так на 10 🙂




proxyCA.pem — и сертификат и ключ в одном файле




cd /etc/squid/
sudo openssl req -new -newkey rsa:2048 -sha256 -days 3650 -nodes -x509 -extensions v3_ca -keyout proxyCA.pem  -out proxyCA.pem




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




sudo openssl x509 -in proxyCA.pem -outform DER -out squid.der




Скопируем squid.der на свой компьютер, это сертификат для установки его на клиентские компьютеры… Установим его либо руками, либо групповой политикой. Как это сделать будет описано далее.




Генерируем файл параметров




sudo openssl dhparam -outform PEM -out /etc/squid/bump_dhparam.pem 2048




Настроим права на использование файла SSL-сертификата и файла параметров




sudo chown proxy:proxy /etc/squid/bump_dhparam.pem
sudo chmod 400 /etc/squid/bump_dhparam.pem
sudo chown proxy:proxy /etc/squid/proxyCA.pem
sudo chmod 400 /etc/squid/proxyCA.pem




Выставляем права на /var/spool/squid/ и /var/log/squid/




sudo chown proxy:proxy -R /var/spool/squid
sudo chown proxy:proxy -R /var/log/squid/




Создаем каталог для базы данных сертификатов и инициализируем базу данных




sudo mkdir -p /var/lib/squid
sudo rm -rf /var/lib/squid/ssl_db
sudo /usr/lib/squid/security_file_certgen -c -s /var/lib/squid/ssl_db -M 4MB
sudo chown -R proxy:proxy /var/lib/squid




Следующим шагом включаем ip_forwarding для разрешения проходящего трафика через сервер:




sudo echo 1 >> /proc/sys/net/ipv4/ip_forward




Применим конфигурацию:




sudo squid -k reconfigure




Затем можно перезапускать службу squid:




sudo systemctl restart squid




Осталось настроить редирект и браузер.




Настройка IPTABLES




Настроим NAT на нашем сервере. Я для этого создаю следующий файл:




sudo nano /etc/nat




!#bin/bash
#Вводим свои данные
ipt=iptables
INT=ens18
LAN=10.5.5.0/24

#Очищаем цепочки
$ipt -F
$ipt -t nat -F
$ipt -t mangle -F

#Очищаем цепочки
$ipt -X
$ipt -t nat -X
$ipt -t mangle -X

#Правила по умолчанию
$ipt -P INPUT DROP
$ipt -P FORWARD ACCEPT
$ipt -P OUTPUT ACCEPT

#Разрешаем трафик на loopback-интерфейсе
$ipt -A INPUT -i lo -j ACCEPT

#Разрешить соединения, которые инициированы изнутри
$ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$ipt -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

#Разрешаем пинг-пакеты
$ipt -A INPUT -p icmp -m icmp ! --icmp-type 5 -j ACCEPT

#Открываем доступ HTTP,HTTPS,SSH,OPENVPN,squid

$ipt -A INPUT -p tcp -m multiport --dports 3128,3129,3130,22 -j ACCEPT

#Заворачиваем http и https трафик

$ipt -t nat -A PREROUTING -s $LAN -p tcp --dport 80 -j REDIRECT --to-port 3129
$ipt -t nat -A PREROUTING -s $LAN -p tcp --dport 443 -j REDIRECT --to-port 3130
$ipt -t nat -A POSTROUTING -o $INT -s $LAN -j MASQUERADE




делаем его исполняемым и запускаем:




sudo chmod +x /etc/nat && /etc/nat




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




firefox




Сейчас большинство сайтов используют технологию HSTS для предотвращения MiTM атак, поэтому если вы хотите настроить Squid для фильтрации трафика в своей организации, вам следует добавить сертификат squid.der сгенерированный на предыдущем шаге в браузер. Рассмотрим на примере Firefox. Откройте Настройки -> Защита и приватность -> Просмотр сертификатов -> Центры сертификации.







Затем нажмите кнопку Импортировать и выберите файл squid.der. Отметьте галочки, что следует доверять этому сертификату.




Yandex Browser




Откройте Настройки -> Системные -> Управление сертификатами -> Центры сертификации.










Затем нажмите кнопку Импорт и выберите файл squid.der. Отметьте галочки, что следует доверять этому сертификату.




Настройка сертификата в Windows 7




Щелкаем два раза на сертификате и в появившемся окне нажимаем Установить сертификат.










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







Далее выбираем Доверенные центры сертификации










На предупреждение отвечаем Да










После импорта вашего сертификата сайты начнут открываться, но при просмотре сведенья о сертификате вы увидите что для всех сайтов установлен ваш личные сертификат.




Видео инструкция