Отключение Firewalld в CentOS7

В CentOS7 по умолчанию для работы с сетевым экраном используется Firewalld. Он представляет собой некую надстройку над Iptables. Судя по описанию, он обладает достаточно широким функционалом и удобством использования.

Но, к примеру, я привык работать напрямую с правилами Iptables, просто мне понятнее, когда я сам пишу все правила, а не когда они генерируются автоматически. Но это вопрос удобства для каждого. Не могу сказать ни за ни против использования Firewalld.

Поэтому, после установки дистрибутива CentOS7 я всегда отключаю Firewalld и пользуюсь только iptables. Все просто.

Останавливаем службу Firewalld:

[root@centos7x64 ~]# systemctl stop firewalld
[root@centos7x64 ~]#

Отключаем ее:

[root@centos7x64 ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

Ставим службу Iptables:

[root@centos7x64 sysconfig]# yum -y install iptables-services
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.maxus.pro
* epel: ftp.colocall.net
* extras: dedic.sh
* updates: mirror.maxus.pro
* webtatic: uk.repo.webtatic.com
Resolving Dependencies
—> Running transaction check
—> Package iptables-services.x86_64 0:1.4.21-18.2.el7_4 will be installed
—> Finished Dependency Resolution

Dependencies Resolved

============================================================================================================================
Package Arch Version Repository Size
============================================================================================================================
Installing:
iptables-services x86_64 1.4.21-18.2.el7_4 updates 51 k

Transaction Summary
============================================================================================================================
Install 1 Package

Total download size: 51 k
Installed size: 25 k
Downloading packages:
iptables-services-1.4.21-18.2.el7_4.x86_64.rpm | 51 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : iptables-services-1.4.21-18.2.el7_4.x86_64 1/1
Verifying : iptables-services-1.4.21-18.2.el7_4.x86_64 1/1

Installed:
iptables-services.x86_64 0:1.4.21-18.2.el7_4

Complete!
[root@centos7x64 sysconfig]#

 

После установки будет создан файл с правилами Iptables /etc/sysconfig/iptables. Рекомендую заглянуть в него перед запуском службы Iptables и добавить необходимые правила. По умолчанию, там есть разрешающее правило для порта 22 TCP(SSH), но если у вас демон SSHD слушает на другом порту, то вам следует изменить правило, либо добавить новое, иначе можно потерять связь с сервером после запуска Iptables, так как последним правилом для входящих соединений идет запрет всего, что не разрешено выше(-A INPUT -j REJECT —reject-with icmp-host-prohibited).

Вот дефолтное содержимое файла:

# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state —state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state —state NEW -m tcp —dport 22 -j ACCEPT
-A INPUT -j REJECT —reject-with icmp-host-prohibited
-A FORWARD -j REJECT —reject-with icmp-host-prohibited
COMMIT

 

Теперь можно запустить Iptables:

[root@centos7x64 sysconfig]# systemctl start iptables
[root@centos7x64 sysconfig]#

Те, кто пользуется IPv6 также могут запустить службу для правил IPv6 командами systemctl enable ip6tables и  systemctl start ip6tables

Собственно, все. После перезапуска сервера служба будет брать правила из вышеуказанного конфигурационного файла.

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

[root@centos7x64 sysconfig]# systemctl restart iptables
[root@centos7x64 sysconfig]#

Если вы добавляете правила не через конфиг, а «на лету», то, соответственно, перезапускать службу не нужно, но не забудьте сохранить изменения с помощью iptables-save.

Подробнее об Iptables рекомендую читать на сайте проекта Netfiler: http://www.netfilter.org/projects/iptables/index.html

Ну, а если вы все-таки планируете использовать Firewalld, то все о нем можно найти на его сайте: http://www.firewalld.org/

 

Напишите комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *