Задать вопрос
@Asparagales

Порт открыт, но в firewalld этого не видно. Это нормально?

На CentOS 7 запущен sshd, 22 порт открыт и я могу удаленно подключаться по ssh. Однако команда firewall-cmd --list-ports ничего не выводит в ответ. Зато команда firewall-cmd --list-services выдает: ssh dhcpv6-client
Это не centos-специфичное поведение, а просто присущее firewalld. А почему если порт открыт, то этого не видно? Это нормально? Это баг или фича?
  • Вопрос задан
  • 1008 просмотров
Подписаться 3 Простой Комментировать
Решения вопроса 1
@q2digger
никого не трогаю, починяю примус
Это фича.
Считается что администратор открывает доступ к сервису, а вот если сервис не описан в конфигурации , можно открыть доступ к порту. Мантейнеры не всех сервисов озаботились, чтобы в их пакетах была конфигурация для firewalld
Вот смотрите, с одной из моих виртуалок

[root@git ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eno16780032
sources:
services: bacula dhcpv6-client http https ssh
ports: 10050/tcp
protocols:
masquerade: no
forward-ports:
sourceports:
icmp-blocks:
rich rules:

Открыто несколько сервисов и отдельно еще один порт - ну не было в у меня в системе описания для сервиса zabbix-agent. Конечно, по правильному, надо было бы сделать xml с описанием сервиса и подкинуть его в firewalld , но может как то в другой раз, ага.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Скорее всего, фича. Если в /etc/services порт отмечен - он идет в список сервисов.
Ответ написан
leahch
@leahch Куратор тега Linux
3D специалист. Dолго, Dорого, Dерьмово.
Firewalld работает с iptables, и ему глубоко наплевать, какая программа что открыла. Для просмотра открытых соединений есть netstat. И кстати, /etc/services вообще здесь ни причем, он используется как справочник, сопоставляя номера портов с их общепринятым наименованием.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы