LINUX.ORG.RU
ФорумAdmin

Firewalld CentOS

 ,


0

1

После минимальной настройки фаервола (добавил сетевой интерфейс и сервис http) как мне посмотреть что этот сервис работает.Что написать чтобы убедиться что сервис ввёл свои правила.



Последнее исправление: leave (всего исправлений: 2)

sudo ufw status

anonymous
()

sudo ufw status verbose

anonymous
()

ss -tlpn | grep 80 покажет, есть ли в системе запущенные процессы, которые слушают порт 80. firewall-cmd --get-active-zones покажет, какие зоны активны (используются интерфейсами), а firewall-cmd --info-zone=<имя зоны> покажет, какие для этой зоны активны правила.

spijet ★★★
()
Ответ на: комментарий от Alezzzander

То что он там появился я знаю. А какие-то действия в сети зделать и етим показать что сервис работает КАК?

misha1999
() автор топика
Ответ на: комментарий от misha1999

Ты можешь сделать netstat -tulpan | grep 80 и увидишь на каких интефейсах у тебя запущен http,если ты не меня 80й порт на какой-нибудь другой

Alezzzander
()

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

firewall-cmd --permanent --list-all

Проверить активные правила для зоны по умолчанию

firewall-cmd --list-all

Deleted
()
Ответ на: комментарий от misha1999

Ставь простой httpd со стандартным конфигом (yum install httpd), запусти его (systemctl start httpd) и пробуй постучаться туда со своего браузера.

Unicode4all ★★★★★
()
Последнее исправление: Unicode4all (всего исправлений: 1)
Ответ на: комментарий от skyman

У меня после netstat -tulpan | grep 80 ничего не появляется

misha1999
() автор топика
Ответ на: комментарий от misha1999

Ввести в адресную строку браузера адрес твоего сервера. Например. Если не зайдет, то можно еще nmap -p 80 адрес_сервера

Unicode4all ★★★★★
()
Ответ на: комментарий от Unicode4all

Спасибо вы мне очень помогаете. Подскажите пожалуйста как посмотреть адрес сервера centos на виртуалке. И ещё если вам не сложно можете написать простые настройки брендмауэра типа что надо делать чтобы он работал что добавить в source или в service а ещё у меня сразу небыло интерфейса я его добавил просто написал add-interface=enp0s3

misha1999
() автор топика
Ответ на: комментарий от misha1999

ЕМНИП, ONBOOT говорит ОС настраивать и пытаться поднять (или настроить, но не пытаться поднять, если там no) указанный тобой интерфейс при старте системы.

Насколько я понимаю, ты пока что только поставил CentOS и настроил правила сетевого экрана, верно? Сам веб-сервер (Nginx, Apache или ещё что-нибудь) то успел установить? Если да — включил службу?

spijet ★★★
()
Ответ на: комментарий от misha1999

А ты так и не сказал, что у тебя за виртуалка. VPSка? Тогда смотри у своего хостера.

Если тебе нужно сохранить правила, то добавляй ключ --permanent, когда создаешь правила. А так больше никаких телодвижений от тебя не требуется.

Unicode4all ★★★★★
()
Ответ на: комментарий от spijet

У меня задание просто натроить брандмауэр и показать что он работает. Как подключить и вообще зачем интерфейс?

misha1999
() автор топика
Ответ на: комментарий от misha1999

Ну а как ты покажешь, что у тебя сетевой экран работает, если у тебя нет сервиса, который будет слушать порт 80 (трафик до которого этот самый сетевой экран должен пропускать, судя по постановке задачи в первом посте)?

spijet ★★★
()
Ответ на: комментарий от Unicode4all

У меня VirtualBox. Может кто-то написать в двух словах минимальную настройку брандмауэра. Что и куда писать.

misha1999
() автор топика
Ответ на: комментарий от misha1999

Для того, чтобы собрать минимальный стенд для демонстрации работающего веб-сервера, защищённого брандмауэром, тебе надо:

  • Установить CentOS (можешь сразу при установке добавить группу пакетов «Веб-сервер» — ЕМНИП, установщик CentOS такое позволяет);
  • После установки при первой загрузке проверить, какая зона сетевого экрана назначена виртуальной сетевой карте (скорее всего это будет public) и добавить этой зоне службу http в настройках firewalld;
  • Запустить веб-сервер.

Специально настраивать виртуальную сетевую карту надо только в случае, если в VirtualBox ты указал какую-то нестандартную сеть (например, вместо NAT сделал Bridge, и в твоей сети нет DHCP).

spijet ★★★
()
Ответ на: комментарий от spijet

У меня серверной centos. Я пишу list-all и мне показывает параметри зоны public и там нет интерфейса потом я через ifconfig смотрю какие интерфейсы у меня есть (их там два enp0s3 и lo) потом через add-interface=enp0s3 я добавляю в параметры зоны интерфейс (не знаю так правильно?) И потом уже додаю сервис http или любой другой (И ето уже получается я настроил?)

misha1999
() автор топика
Ответ на: комментарий от misha1999

Если у тебя сейчас в коробке установлен nat, то добавь еще host-only адаптер и посмотри его адрес (ip addr). По этому адресу виртуалка доступна из хоста.

На этом должно быть всё. Можешь прлверять.

Unicode4all ★★★★★
()
Последнее исправление: Unicode4all (всего исправлений: 1)
Ответ на: комментарий от misha1999

Во-первых, приучайся использовать те утилиты, которые сейчас поддерживаются везде, взамен устаревших:

  • ip вместо ifconfig;
  • ss вместо netstat.

Во-вторых, посмотри список активных зон firewalld (ниже пример с моего ноута):

❯ sudo firewall-cmd --get-active-zones
home
  interfaces: wlp2s0
internal
  interfaces: docker0

Так ты увидишь, какая зона назначена твоему enp0s3.

Дальше всё зависит от того, роль чего у тебя будет играть enp0s3 — сетевой карты, которая должна смотреть во «внешний мир» или ещё чего-нибудь. Для чистоты эксперимента предположим, что стенд должен отражать ситуацию «один сервер смотрит через единственную сетевую карту в Интернет и должен защищать себя сам» — тогда логично будет назначить этому интерфейсу зону public. Если сейчас enp0s3 уже «живёт» в public — смотри, какие сервисы разрешены для интерфейса (ниже, опять же, мой пример):

❯ sudo firewall-cmd --info-zone=home  
home (active)
  target: default
  icmp-block-inversion: no
  interfaces: wlp2s0
  sources: 
  services: ssh mdns samba-client dhcpv6-client http https
  ports: 
  protocols: igmp
  …

Если в поле services: нет HTTP/HTTPS, добавь их командой firewall-cmd --permanent --zone=public --add-service=http (--permanent подскажет firewalld применить эту настройку «на постоянку», а не до перезагрузки). После этого у тебя будут приниматься входящие соединения на порт 80.

spijet ★★★
()
Ответ на: комментарий от misha1999

Значит, что у тебя сетевая карта «поднимется» (попытается перейти в состояние UP) при загрузке системы. Если укажешь ONBOOT=no, надо будет поднимать её вручную, например командой ip link set dev enp0s3 up.

spijet ★★★
()
Ответ на: комментарий от misha1999

Выше тебе уже писали примеры с ss и netstat. Если при их выполнении (с правильными параметрами, конечно) нет записей о порте 80 — в системе никто эти подключения не принимает.

На всякий случай обращу твое внимание: «брандмауэр пропускает входящие подключения на порт Х» и «процесс слушает/принимает входящие подключения на порту X» — разные вещи. Для первого нужно разрешающее правило в конфиге брандмауэра (в случае с firewalld — включенный для зоны сервис), для второго — запущенная служба, которая будет этот самый порт обслуживать (Nginx, например).

spijet ★★★
()
Ответ на: комментарий от spijet

Как можно с тобо связаться я хочу фотки кинуть, чтобы ты посмотрел у меня просто nmap localhost показывает другие порты не такие как у меня в настройкаях зоны

misha1999
() автор топика
Ответ на: комментарий от misha1999

И ip моей виртуалки 127.0.0.1 получаеться. Я его через ifconfig посмотрел (типа ip интерфейса lo)

misha1999
() автор топика
Ответ на: комментарий от spijet

А ещё почему у меня сразу нет активных зон (надо самому добавлять интерфейс а потом уже через get-active-zones уже показывает)

misha1999
() автор топика
Ответ на: комментарий от misha1999

У тебя там должна быть зона по умолчанию какая-нибудь (обычно это public). Если ты сам не задал какому-то интерфейсу зону (в его конфиге в /etc/sysconfig/…), то будет использоваться зона по умолчанию.

По поводу nmap на localhost — всё правильно, он тебе покажет те порты, которые доступны на твоём loopback-интерфейсе (для которого по умолчанию разрешено всё, потому что его цель — позволить твоей машине разговаривать «сама с собой»).

spijet ★★★
()
Ответ на: комментарий от spijet

Типа порты в зону добавлены а nmap их не показывает

misha1999
() автор топика
Ответ на: комментарий от misha1999

ss не показывает порты в какой-либо зоне. Он показывает процессы, которые запросили у ОС какой-либо сокет (например, порт TCP) и слушают на этом сокете входящие подключения. Что у тебя в выводе ss есть?

spijet ★★★
()
Ответ на: комментарий от misha1999

К чему это я. Если у тебя на твоей VM не запущен какой-либо веб-сервер — никакой nmap тебе не покажет, что у тебя порт 80 открыт (даже если он действительно открыт), потому что некому на этом порту входящее соединение принять.

spijet ★★★
()
Ответ на: комментарий от misha1999

Теперь у тебя запущен Apache с конфигом по умолчанию — стучись себе на порт 80 и увидишь, что firewalld его пропускает.

spijet ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.