iptables para roteamento 8080 e 8443 a 80 e 443 respectivamente

0

Eu tenho o script abaixo que cria meus iptables. Como posso fazer isso se eu acessar o IP_ADDR: 8080 ou: 8443 ele encaminha para 80 ou 443, respectivamente?

#!/bin/bash

# Delete all existing rules
iptables -F

# Set default chain policies
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

# Allow loopback access
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

  # Allow inbound SSH
  iptables -A INPUT -i eth0 -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

  # Allow outbound DNS
  iptables -A OUTPUT -o eth0 -p tcp --dport 53 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --sport 53 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

  # Allow outbound HTTP
  iptables -A OUTPUT -o eth0 -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

  # Allow outbound HTTPS
  iptables -A OUTPUT -o eth0 -p tcp --dport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

  # Allow outbound SMTP
  iptables -A OUTPUT -o eth0 -p tcp --dport 587 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --sport 587 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
    
por debiantables1 13.07.2016 / 03:35

1 resposta

1

Você não especifica realmente se deseja traduzir: (Dentro) 80 - > (Fora) 8080 ou o contrário.

Supondo que você queira executar o httpd em seu sistema para ouvir 8080 e 8443 para atender ao tráfego de usuários externos em 80 e 443 (evitando assim o problema de ter que executar como root para abrir essas portas < 1025) use o recurso NAT do iptables:

iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 8080 -j ACCEPT
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080

e faça o mesmo para 443 - > 8443

    
por 13.07.2016 / 03:56