У меня сервер с 5 ipv4
95.x.y.1
95.x.y.2
95.x.y.3
95.x.y.4
95.x.y.5
и мне нужно перенаправить только входящий трафик с порта 80 на порт 8080 (и тот же ip), поэтому
95.x.y.1: 80 -> 95.x.y.1: 8080
95.x.y.2: 80 -> 95.x.y.2: 8080
95.x.y.3: 80 -> 95.x.y.3: 8080
95.x.y.4: 80 -> 95.x.y.4: 8080
95.x.y.5: 80 -> 95.x.y.5: 8080
Кроме iptables можно сделать что-то подобное с nginx (обратный прокси)? Основная проблема заключается в том, чтобы иметь с Ubuntu18 «разные» серверы с nginx для каждого IP-адреса, которые направляют трафик определенному пользователю Ubuntu. Мы будем очень благодарны за любое руководство / помощь / пример
В DNAT
target может перезаписать только номер порта назначения без изменения IP-адреса назначения.
iptables -t nat -A PREROUTING --dst 95.x.y.1 -p tcp --dport 80 -j DNAT --to :8080
iptables -t nat -A PREROUTING --dst 95.x.y.2 -p tcp --dport 80 -j DNAT --to :8080
iptables -t nat -A PREROUTING --dst 95.x.y.3 -p tcp --dport 80 -j DNAT --to :8080
iptables -t nat -A PREROUTING --dst 95.x.y.4 -p tcp --dport 80 -j DNAT --to :8080
iptables -t nat -A PREROUTING --dst 95.x.y.5 -p tcp --dport 80 -j DNAT --to :8080
Ответные пакеты должны проходить через тот же ящик Linux для обратного преобразования.
Для устранения неполадок используйте tcpdump
и conntrack
инструменты.