Настройка доступа портов 80,443 (http/s)

ВНИМАНИЕ: Пожалуйста, убедитесь что вы добавили SSH правила ранее

Разрешаем доступ к HTTP(s) только для сетей CloudFlare

Применить автоматически:

  1. Выполнить команду:

    wget -q -O - https://gitlab.com/BoxExchanger-public/ufw-cloudflare/-/raw/main/cf_install.sh | sudo sh
  2. Включаем UFW.

    ufw enable

Настраиваем вручную:

  1. Создаем папку для хранения скрипта:

    mkdir -p ~/.scripts/cf_ips
  2. Создаем скрипт с следующим содержимым:

    nano ~/.scripts/cf_ips/cf_ips.sh
    cf_ips.sh
    #!/bin/sh
    PATH=$PATH:/sbin
    wget https://www.cloudflare.com/ips-v4 -qO /tmp/cf_ips
    echo "" >> /tmp/cf_ips
    wget https://www.cloudflare.com/ips-v6 -qO ->> /tmp/cf_ips
    for cfip in `cat /tmp/cf_ips`; do ufw allow proto tcp from $cfip to any port 80,443 comment "Cloudflare IP"; done
    rm /tmp/cf_ips
  3. Чистим служебный временный файл

    rm /tmp/cf_ips
  4. Выставляем крон(таймер) что бы он обновлял адреса раз в сутки

    echo "0 0 * * * ~/.scripts/cf_ips/cf_ips.sh" | crontab -
  5. Включаем UFW.

    ufw enable
Разрешаем доступ к HTTP(s) для всех сетей

ВНИМАНИЕ: эта инструкция для тех кто не использует Cloudflare если вы используете CloudFlare для вашего сайта используется инструкцию выше

  1. Разрешаем доступ 80 и 443

    ufw allow 80
    ufw allow 443
  2. Включаем UFW.

    ufw enable

Last updated