Рейтинг:0

переадресация портов firewalld не работает в CentOS 7

флаг jp
Laa

На моем сервере я хотел перенаправить весь запрос: приходят с 81 на 8080 порт

Поскольку служба Jenkins не может прослушиваться на 80-м порту, я следую документу Jenkins. Дженкинс — Обратный прокси с помощью брандмауэра.

Но не работает, ниже мой шаг и некоторые детали системы:

  1. Версия CentOS = 7.9.2009
[root@xxx ~]# кошка /etc/centos-релиз
Выпуск CentOS Linux 7.9.2009 (основной)
  1. Я включил порт и добавил правило переадресации портов в firewalld: (уже добавить постоянный и перезагрузить firewalld)
[root@xxx ~]# firewall-cmd --list-all --zone=public
публичный (активный)
  цель: по умолчанию
  icmp-инверсия блока: нет
  интерфейсы: ens160 ло
  источники:
  службы: dhcpv6-клиент http ssh
  порты: 80/tcp 443/tcp 81/tcp
  протоколы:
  маскарад: да
  переадресация портов: порт = 81: proto = TCP: toport = 8080: toaddr =
  исходные порты:
  icmp-блоки:
  богатые правила:
  1. проверить нетстат:
[root@xxx ~]# netstat -tulpn | grep СЛУШАТЬ
TCP 0 0 0.0.0.0:22 0.0.0.0:* ПРОСЛУШИВАТЬ 1090/sshd
TCP 0 0 127.0.0.1:25 0.0.0.0:* ПРОСЛУШИВАТЬ 1724/мастер
tcp6 0 0 :::8080 :::* ПРОСЛУШАТЬ 1107/java
tcp6 0 0 :::22 :::* ПРОСЛУШИВАТЬ 1090/sshd
tcp6 0 0 ::1:25 :::* ПРОСЛУШИВАТЬ 1724/мастер

Можно слушать только 8080/22/25.

  1. Я пытаюсь использовать инструмент nc для проверки переадресации портов:
[root@xxx ~]# nc -v 127.0.0.1 8080
Ncat: версия 7.50 (https://nmap.org/ncat)
Ncat: подключен к 127.0.0.1:8080.
^ С
[root@xxx ~]# nc -v 127.0.0.1 81
Ncat: версия 7.50 (https://nmap.org/ncat)
Ncat: В соединении отказано.

8080 нормально, но 81 переадресация не работает.

  1. В некоторых ссылках говорится, что необходимо установить net.ipv4.ip_forward=1. Я тоже ставил уже раньше:
[root@xxx ~]# sysctl -a |grep "ip_forward"
net.ipv4.ip_forward = 1
net.ipv4.ip_forward_use_pmtu = 0
sysctl: чтение ключа "net.ipv6.conf.all.stable_secret"
sysctl: чтение ключа "net.ipv6.conf.default.stable_secret"
sysctl: чтение ключа "net.ipv6.conf.ens160.stable_secret"
sysctl: чтение ключа "net.ipv6.conf.lo.stable_secret"
  1. Дважды проверьте мои iptables, и я не настраивал iptables:
[root@xxx ~]# iptables -L
Сеть INPUT (политика ACCEPT)
целевая защита выбор источника назначения

Сеть FORWARD (политика ACCEPT)
целевая защита выбор источника назначения

Цепочка OUTPUT (политика ACCEPT)
целевая защита выбор источника назначения
[root@xxx ~]# статус systemctl iptables
Модуль iptables.service не найден.

Любые идеи о том, как работать с «переадресацией портов» с помощью firewalld? Спасибо.

флаг jp
Laa
Извините, я изменил это, используя более точные слова: переадресация портов на локальном
Рейтинг:0
флаг jp
Laa

Наконец, я нашел решение. И еще один момент, нетстат не может проверить порт-форвардинг.

Нужно добавить прямое правило для lo:

[root@xxx ~]$ firewall-cmd --direct --get-all-rules
ipv4 nat OUTPUT 0 -p tcp -o lo --dport 80 -j REDIRECT --to-ports 8080

Ответить или комментировать

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