Как перенаправить порт с firewalld в зависимости от IP-адреса источника

Я запускаю ssh на порту 5678.

Для моего исходного IP-адреса 1.2.3.4 - я хочу подключиться к порту 22 и перенаправить порт firewalld на 5687.

Других источников нет. IP-адреса получают переадресацию портов.

Какую строку firewall-cmd я бы набрал, чтобы добиться этого?

4
задан 14 February 2016 в 18:52
2 ответа

Я понял это out:

CUSTOMPORT=$(netstat -tlpn | grep 0.0.0.0.*ssh | cut -d: -f2 | cut -f1 -d\ )
SOURCE_IP=1.2.3.4
firewall-cmd --zone=public --permanent --query-masquerade
firewall-cmd --zone=public --permanent --add-masquerade
firewall-cmd --zone=public --permanent --add-rich-rule="rule family=\"ipv4\" source address=\"${SOURCE_IP}\" forward-port port=\"22\" protocol=\"tcp\" to-port=\"${CUSTOMPORT}\""
firewall-cmd --reload
2
ответ дан 3 December 2019 в 03:05

Вы просто создаете правило firewalld, чтобы разрешить трафик, а затем настраиваете NAT для трафика. По сути, вы создаете ACL, чтобы определить, какой трафик разрешен, а затем вы создаете правило NAT, чтобы сказать, что разрешенный трафик должен быть преобразован.

firewall-cmd --permanent --zone=public --add-rich-rule="rule 
family="ipv4" \
source address="1.2.3.4/32" \
port protocol="tcp" port="22" accept"
firewall-cmd --permanent --zone=public --add-forward-port=port=22:proto=tcp:toport=5678:toaddr=*private translated IP address*
firewall-cmd --reload

Как открыть порт для определенного IP-адреса с помощью firewall-cmd в CentOS?

http://www.certdepot.net/rhel7-get-started-firewalld/

4
ответ дан 3 December 2019 в 03:05

Теги

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