• %user%
logotype
SysOps
  • Главная
  • Новости
  • О проекте
  • Контакты

  • RHEL
  • Ubuntu
  • TCP/IP
  • DNS
  • Containers
  • Cloud
  • Nginx
  • LAMP Stack
  • LEMP Stack
  • SQL
  • Zabbix
  • Netfilter

Запрещаем веб трафик на origins, кроме Cloudflare IPs


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

Термин "origins" используется в Cloudflare, как сервер находящийся за облаком Cloudflare и принимающий запросы от него.

Предполагается, что ваш сайт уже настроен на работу с сервисами Cloudflare.

Создайте скрипт, который будет актуализировать информацию об IP адресах Cloudflare, а также обновлять конфигурацию в NGINX.

vi /root/cloudflare-ips.sh
#!/bin/bash

# GET Cloudflare IPs
curl https://www.cloudflare.com/ips-v4 > /etc/nginx/extras/ips-v4

# add "allow" to start and ";" to end of lines
sed 's/.*/allow &;/' /etc/nginx/extras/ips-v4 >> /tmp/cf-ips
mv -f /tmp/cf-ips /etc/nginx/extras/cf-ips

# test nginx conf
/usr/sbin/nginx -t

if [[ $? == 0 ]]; then
    echo "Reload nginx configuration..."
    systemctl reload nginx.service
else
    echo "Cannot reload nginx because test conf failed..."
fi

Добавьте acl в нужный location в nginx:
include /etc/nginx/extras/cf-ips;
deny all;

Скачать файл: cloudflare-ips.sh [464 b] (cкачиваний: 6)

  • Комментарии
  • О статье
  • Похожие новости
У данной публикации нет комментариев.

sobir

Автор

17-12-2020, 11:40

Дата пуликации

Cloud / Nginx

Категория
  • Комментариев: 0
  • Просмотров: 426
RHEL / Nginx
Настройка обратного прокси сервера NGINX с SSL-терминацией в CentOS 8 / RHEL 8
Новости
Вышел новый LibreOffice 7.0
Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Комментарии
Принудительное обновление сертификата:

certbot certonly --force-renew -d newsite.com
17 октября 2021 11:40

sobir

Получаем SSL сертификат с помощью плагина nginx:

certbot certonly --nginx -d newsite.com -d www.newsite.com
7 августа 2021 15:35

sobir

Можно, но я решил описать процесс копирования ключей более подробно.
3 июля 2021 14:19

sobir

Или можно просто командой ssh-copy-id [email protected]_host добавить публичный ключ на удалённый сервер.
30 июня 2021 15:26

dsharipov

Какой дистрибутив Linux вы часто используете?
Реклама
1 посетитель на сайте. Из них:
Гости1
© 2020 SysOps Яндекс.Метрика

Авторизация

Регистрация Забыли пароль?