Я пытаюсь заставить свой firewalld блокироваться ip
адрес с правилами:
sudo firewall-cmd --zone=block --add-source=<ip_address/submask> --permanent
, и также добавление этого richrule
к зоне по умолчанию (общественность)sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address=<ip_address> reject
, затем наконец я перезагружаю правило с sudo firewall-cmd --reload
Но тем не менее я могу перейти на сайты в моем браузере. Очевидно, я делаю некоторую вещь неправильно. Как я могу блокировать доступ к какому-либо использованию веб-страницы firewalld
.
Это мой зональный набор правил:
block (active)
interfaces: enp0s3
sources: 172.217.5.110/32 216.49.176.33/32
services:
ports:
protocols:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
public (default, active)
interfaces: docker0
sources:
services: dhcpv6-client ssh
ports: 993/tcp 995/udp 995/tcp 22161/udp 4243/tcp 22/tcp 22/udp 465/tcp
protocols:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
Хорошо после большого рытья я наконец заставил это работать. Это требует, чтобы я добавил, что называют a direct rule
, таким образом заблокировать IP как 216.49.176.33
правило добавить было бы:
sudo firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -d 216.49.176.33/32 -p tcp -m tcp --dport=80 -j DROP
sudo firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -d 216.49.176.33/32 -p tcp -m tcp --dport=443 -j DROP
Затем перезагрузка с:
sudo firewall-cmd --reload
Видеть добавить правила:
sudo firewall-cmd --direct --get-all-rules
Теперь удалите интерфейс из зоны по умолчанию, которая в моем случае была public
поскольку в правиле говорится если:
если мой интерфейс связан с зоной в этом случае
public
затем любые запросы от того интерфейса пройдут, так как зона не имеет никаких ограничений, установленных для интерфейса.Правило, используемое firewalld: Когда пакет получен или сгенерирован, какая зона соответствует тому пакету. Затем правила в той зоне будут применены к, что пакет для определения, что происходит с ним.
Для удаления я использовал;
sudo firewall-cmd --permanent --remove-interface=enp0s3
sudo firewall-cmd --reload
Примечание:
После этого необходимо будет очистить данные просмотра из включенного браузера (браузеров), и после этого Вы будете не мочь получить доступ к тому IP-адресу и отметить, что я также использовал mask
32 для проверки их IP, которые имеют с несколькими IP, указывающий на их домен, будет блоком.
Я также, Конечно, CHAIN
опция может быть INPUT
предотвратить под опекой связанный трафик также. Опция --dport=<80|443>
используется для ловли обоих http
и https
трафики.
Использование:
usage: --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>