Инструменты пользователя

Инструменты сайта


setup_proxy

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Следующая версия Следующая версия справа и слева
setup_proxy [17.06.2016 11:05]
phantom [Настройка ipset]
setup_proxy [13.07.2017 17:19]
phantom [Настройка proxy сервера]
Строка 2: Строка 2:
  
 **Настройка proxy сервера необходима только если используется вариант "proxy у оператора"​.** **Настройка proxy сервера необходима только если используется вариант "proxy у оператора"​.**
 +
 +**Настройку и тестирование работы proxy сервера (как правило) осуществляют наши специалисты.**
 +
 +**Примеры конфигурации,​ приведенные ниже, являются лишь примерами. Конфигурация proxy сервера может отличаться в ту или иную сторону в зависимости от специфики клиента.**
 +
 +**Обновления и рекомендации для конфигурации proxy сервера публикуются в нашей рассылке,​ которую получают технические специалисты (контакты) указанные в Личном Кабинете.**
 +
  
 ===== Подготовка ===== ===== Подготовка =====
Строка 22: Строка 29:
 </​code>​ </​code>​
  
-Скачать скрипты для обновления {{:​cf_ipset_update.tar.gz|}}, вписать в них Api Key (можно посмотреть в ЛК->​Администрирование->​Настройки). Добавить вызов скриптов по cron (например,​ раз в час).+Скачать скрипты для обновления {{:​cf_ipset_update.tgz|}}, вписать в них Api Key (можно посмотреть в ЛК->​Администрирование->​Настройки). Добавить вызов скриптов по cron (например,​ раз в час).
  
 ===== Настройка iptables ===== ===== Настройка iptables =====
Строка 28: Строка 35:
 <​code>​ <​code>​
 # Перенаправлять HTTP трафик для сетей из списка полной блокировки на отдельный виртуальный сервер # Перенаправлять HTTP трафик для сетей из списка полной блокировки на отдельный виртуальный сервер
-iptables -t nat -A PREROUTING -i eth0 -m set --match-set BLOCK dst -p tcp --dport 80 -j REDIRECT --to-port ​8000+iptables -t nat -A PREROUTING -i eth0 -m set --match-set BLOCK-IP dst -p tcp --dport 80 -j REDIRECT --to-port ​9000 
 + 
 +# Перенаправлять HTTP трафик для пар IP:PORT подлежащих блокировке на отдельный виртуальный сервер  
 +iptables -t nat -A PREROUTING -i eth0 -p tcp -m set --match-set CUSTOM-IP-PORT dst,dst -j REDIRECT --to-port 9000
  
 # Перенаправлять весь HTTP/HTTPS трафик на локальный порт # Перенаправлять весь HTTP/HTTPS трафик на локальный порт
 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 80 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 80
 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 443 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 443
 +
  
 # Все остальное пропускать... # Все остальное пропускать...
Строка 38: Строка 49:
  
 # Блокировать весь трафик,​ на сети из списка полной блокировки # Блокировать весь трафик,​ на сети из списка полной блокировки
-iptables -t filter -A FORWARD -m set --match-set BLOCK dst -j REJECT+iptables -t filter -A FORWARD -m set --match-set BLOCK-IP dst -j REJECT
  
 # Пропускать весь транзитный трафик # Пропускать весь транзитный трафик
Строка 45: Строка 56:
  
 ===== Настройка nginx ===== ===== Настройка nginx =====
 +
 +Мы рекомендуем использовать nginx с поддержкой lua и headers_more. Ссылки на готовые пакеты находятся в конце текущего раздела.
  
 Настройки DNS резолвера (необходимо использовать DNS сервера без RPZ) Настройки DNS резолвера (необходимо использовать DNS сервера без RPZ)
Строка 170: Строка 183:
 </​code>​ </​code>​
  
-Конфигурация дополнительного (для запросов на сети с полной блокировкой) виртуального сервера:​+Конфигурация дополнительного (для запросов на сети с полной блокировкой ​и порты отличные от HTTP/HTTPS) виртуального сервера:​
  
 <​code>​ <​code>​
 server { server {
-        listen 0.0.0.0:8000;+        listen 0.0.0.0:9000;
         server_name ~^.*$;         server_name ~^.*$;
  
         access_log /​var/​log/​nginx/​block_access_log main;         access_log /​var/​log/​nginx/​block_access_log main;
-        error_log /​var/​log/​nginx/​block_error_log ​debug;+        error_log /​var/​log/​nginx/​block_error_log ​warn;
  
         root /​var/​www/​cyberfilter;​         root /​var/​www/​cyberfilter;​
Строка 220: Строка 233:
   * notfound.html - выводится,​ если запрашиваемый ресурс не найден в DNS   * notfound.html - выводится,​ если запрашиваемый ресурс не найден в DNS
  
-Архив с настройками и со страницами сообщений:​ {{:​proxy_config.tgz|}}+Архив с настройками и со страницами сообщений:​ {{:​proxy_config.tgz|}}\\ 
 +Готовый RPM nginx 1.10.3 для CentOS7 с поддержкой lua и headers_more:​ {{:​nginx-1.10.3-1.el7.centos.ngx.x86_64.rpm|}}
  
 ===== Настройка sniproxy ===== ===== Настройка sniproxy =====
  
-**Внимание:​** для корректной работы [[https://​github.com/​dlundquist/​sniproxy|sniproxy]] (фильтрация HTTPS) необходимо,​ чтобы использовался механизм DNS RPZ. Системный DNS резолвер **ДОЛЖЕН** использовать DNS сервер с включенным механизмом [[setup_dns|DNS RPZ]]. Так же необходимо,​ чтобы на sniproxy был наложен {{:​sniproxy-0.3.6-connection-loop-fix.patch.gz|патч}} от зацикливания.+**Внимание:​** для корректной работы [[https://​github.com/​dlundquist/​sniproxy|sniproxy]] (фильтрация HTTPS) необходимо,​ чтобы использовался механизм DNS RPZ. Системный DNS резолвер **ДОЛЖЕН** использовать DNS сервер с включенным механизмом [[setup_dns|DNS RPZ]]. Так же необходимо,​ чтобы на sniproxy был наложен {{:​sniproxy-0.3.6-cyberfilter.patch.gz|патч}}. Рекомендуемая версия sniproxy - 0.3.6
  
 <​code>​ <​code>​
Строка 267: Строка 281:
  
 Репозитарий (GIT) sniproxy: [[https://​github.com/​dlundquist/​sniproxy|]]\\ Репозитарий (GIT) sniproxy: [[https://​github.com/​dlundquist/​sniproxy|]]\\
-Патч ​от зацикливания: {{:​sniproxy-0.3.6-connection-loop-fix.patch.gz|}}\\+Патч: {{:​sniproxy-0.3.6-cyberfilter.patch.gz|}}\\
 Конфиг:​ {{:​sniproxy.conf.gz|}} Конфиг:​ {{:​sniproxy.conf.gz|}}
  
-Готовый ebuild для Gentoo Linux: {{:​sniproxy.ebuild.tgz|}}+Готовый ebuild для Gentoo Linux: {{:sniproxy-0.3.6-r1.ebuild.tgz|}} (USE="​cyberfilter"​)\\ 
 +Готовый RPM для CentOS7: {{:​sniproxy-0.3.6-1.el7.centos.x86_64.rpm}} и необходимый для него udns: {{:​udns-0.4-3.el7.x86_64.rpm|}}
setup_proxy.txt · Последние изменения: 13.07.2017 17:26 — phantom

Инструменты страницы