Купить Корзина
  • Домены и сайты
  • Облако и IT-инфраструктура
  • Вход

Получить консультацию

Ответим на вопросы, расскажем о конфигурациях, поможем с переносом, подберем оборудование, подготовим коммерческое предложение

Нажимая кнопку «Отправить» я даю согласие на обработку персональных данных и подтверждаю, что ознакомился с Политикой конфиденциальности и правилами пользования сайтом

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

Нажимая кнопку «Отправить» я даю согласие на обработку персональных данных и подтверждаю, что ознакомился с Политикой конфиденциальности и правилами пользования сайтом

Или просто оставьте номер телефона, и мы перезвоним вам

  • Телефон в Москве

    +7 495 580-11-11
  • Бесплатный звонок по России

    8 800 555-34-78
  • Или обратитесь в наши офисы

    Региональные номера
    1. База знаний
    2. Рег.облако
    3. Облачные серверы
    4. Установка программного обеспечения
    5. Настройка Firewalld в CentOS

    Настройка Firewalld в CentOS

    В этой статье мы расскажем, как работать с firewalld в CentOS.

    Что такое брандмауэр в Linux

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

    Что такое firewalld

    Firewalld — гибкий инструмент для управления брандмауэром, который по умолчанию установлен во многих RHEL-based дистрибутивах Linux: CentOS, Fedora, Red Hat. Он заменяет классические iptables и nftables, предоставляя более удобный интерфейс для управления правилами фильтрации трафика, NAT и других сетевых функций.

    Главная особенность firewalld — динамическое управление. В отличие от iptables и nftables, firewalld позволяет вносить изменения в сетевые правила и конфигурацию безопасности без необходимости перезагрузки системы или самого брандмауэра. Поэтому его удобно использовать для систем, которые должны работать без простоев.

    Настройка firewalld в CentOS

    Для работы с firewalld существует две утилиты: firewall-cmd для управления через терминал и firewall-config с графическим интерфейсом. В статье для настройки будет использоваться утилита firewall-cmd.

    Установка firewalld

    Как правило, firewalld в CentOS установлен по умолчанию. Проверить, работает ли firewalld на вашем сервере, можно с помощью команды:

    sudo systemctl status firewalld

    Если firewalld работает, вы увидите следующее:

    Настройка Firewalld в CentOS

    Настройка firewalld

    Если на вашем сервере не установлен firewalld, установите его с помощью команды:

    sudo yum install firewalld

    После установки запустите службу и включите автоматический запуск fitewalld при загрузке системы:

    sudo systemctl start firewalld
    sudo systemctl enable firewalld

    Затем проверьте статус с помощью команды:

    sudo systemctl status firewalld

    Знакомство с текущими параметрами firewalld

    Прежде чем приступить к настройке firewalld, важно ознакомиться с текущей конфигурацией брандмауэра. Это позволит лучше понять, какие порты и сервисы уже настроены и какие зоны активны.

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

    firewall-cmd --get-default-zone

    Чтобы узнать, какие зоны активны и контролируют трафик сетевых интерфейсов, выполните следующую команду:

    firewall-cmd --get-active-zones

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

    sudo firewall-cmd --list-all

    Знакомство с альтернативными зонами

    В firewalld, помимо зоны public, существуют и другие зоны. Чтобы узнать список доступных зон, введите команду:

    firewall-cmd --get-zones

    Чтобы посмотреть конфигурацию конкретной зоны, воспользуйтесь командой:

    sudo firewall-cmd --zone=название_зоны --list-all

    Чтобы посмотреть конфигурацию всех существующих зон, используйте команду:

    sudo firewall-cmd --list-all-zones

    Настройка портов

    Одна из главных задач при работе с брандмауэром — это управление доступом к портам. Firewalld позволяет легко добавлять и удалять порты из конфигурации.

    Для открытия определенного порта (например, HTTP на порту 80) выполните команду:

    sudo firewall-cmd --zone=public --add-port=80/tcp --permanent

    Ключ --permanent используется для того, чтобы правило работало постоянно, в том числе и после перезагрузки сервера.

    Чтобы изменения вступили в силу, выполните команду:

    sudo firewall-cmd --reload

    Если вы хотите, чтобы правило работало только до перезагрузки сервера, используйте команду:

    sudo firewall-cmd --zone=public --add-port=80/tcp

    Чтобы закрыть ранее открытый порт, используйте команду:

    sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent

    Для вступления изменений в силу введите:

    sudo firewall-cmd --reload

    Настройка сервисов

    Вместо настройки конкретных портов в firewalld можно работать с предустановленными сервисами. Это удобный способ разрешить или запретить доступ к популярным сервисам, таким как SSH.

    Посмотреть список сервисов можно с помощью команды:

    sudo firewall-cmd --list-services

    Узнать информацию о сервисе можно с помощью команды:

    sudo firewall-cmd --info-service=название_сервиса

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

    sudo firewall-cmd --zone=public --add-service=ssh --permanent
    sudo firewall-cmd --reload

    Если вы хотите запретить доступ к какому-либо сервису, используйте следующую команду:

    sudo firewall-cmd --zone=public --remove-service=ssh --permanent
    sudo firewall-cmd --reload

    Настройка зон

    Зоны в firewalld позволяют применять различные правила безопасности в зависимости от того, к какой сети подключен интерфейс. Например, вы можете настроить более строгие правила для публичной сети и более мягкие для внутренней.

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

    sudo firewall-cmd --get-zones

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

    sudo firewall-cmd --zone=home --change-interface=eth0 --permanent
    sudo firewall-cmd --reload

    Где:

    • home — название зоны,
    • eth0 — имя сетевого интерфейса.

    Для добавления или удаления правил для конкретной зоны используйте команды, аналогичные настройке портов и сервисов. Например, чтобы открыть порт в зоне home, воспользуйтесь командой:

    sudo firewall-cmd --zone=home --add-port=8080/tcp --permanent
    sudo firewall-cmd --reload

    Где:

    • home — название зоны,
    • 8080 — номер порта.

    Чтобы изменить зону по умолчанию, используйте команду:

    sudo firewall-cmd --set-default-zone=название_зоны

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

    Настройка NAT

    NAT (Network Address Translation) — технология, используемая для преобразования IP-адресов в сетевых пакетах при их передаче через маршрутизатор или другой сетевой узел. Основная задача NAT — преобразование внутренних (частных) IP-адресов в публичные и обратно, что позволяет устройствам в локальной сети взаимодействовать с внешними сетями (например, с интернетом), используя один или несколько публичных IP-адресов.

    Firewalld поддерживает NAT через использование маскарадинга. Маскарадинг используется для того, чтобы скрыть исходные IP-адреса при отправке трафика из локальной сети в глобальную. Для включения NAT выполните следующую команду:

    sudo firewall-cmd --zone=public --add-masquerade --permanent
    sudo firewall-cmd --reload

    Теперь все пакеты, исходящие из зоны public, будут маскироваться под внешний IP-адрес интерфейса.

    Для настройки перенаправления портов (например, перенаправление трафика с порта 80 на порт 8080) выполните команду:

    sudo firewall-cmd --zone=public --add-forward-port=port=80:proto=tcp:toport=8080 --permanent
    sudo firewall-cmd --reload

    Эта команда перенаправит все входящие соединения с порта 80 на порт 8080 на вашем сервере.

    Помогла ли вам статья?

    Спасибо за оценку. Рады помочь 😊

     👍
    Специальные предложения
    • Бесплатный хостинг для сайта
    • Дешевый хостинг
    • Бесплатный VPS-сервер
    • Дешёвые VPS
    Рассылка Рег.ру

    Лайфхаки, скидки и новости об IT

    Даю согласие на получение рекламных и информационных материалов

    Домены и сайты
    • Домены
    • Хостинг
    • Создание сайтов
    • SSL-сертификаты
    • VPS и VDS серверы
    • Whois
    • Магазин доменов
    Облако
    и IT-инфраструктура
    • Облачные серверы
    • Частное облако
    • Облачное хранилище
    • Kubernetes в облаке (K8S)
    • Облачные базы данных
    • Выделенные серверы
    Полезное
    • Стоимость услуг
    • Cпособы оплаты
    • База знаний
    • Документы
    • ЭДО
    • Партнерам
    • Сообщить о нарушении
    • РБК: новости России и мира сегодня
    • Новости компаний РФ
    • РБК Инвестиции: курсы валют
    Компания
    • О компании
    • Контакты
    • Офисы
    • Новости
    • Акции и скидки
    • Блог
    • Отзывы клиентов
    8 800 555-34-78 Бесплатный звонок по России
    +7 495 580-11-11 Телефон в Москве
    • vk
    • telegram
    • ok
    • moikrug
    • youtube
    • twitter
    • Облачная платформа Рег.ру включена в реестр российского ПО Запись №23682 от 29.08.2024
    • © ООО «РЕГ.РУ»
    • Политика конфиденциальности
      Политика обработки персональных данных
      Правила применения рекомендательных технологий
      Правила пользования
      и другие правила и политики
    • Нашли опечатку?
      Выделите и нажмите Ctrl+Enter
    • Мы используем cookie и рекомендательные технологии для персонализации сервисов и удобства пользователей. Вы можете запретить сохранение cookie в настройках своего браузера