IPTABLES - como encaminhar de um único IP para um URL

1

Eu preciso encaminhar de um único IP para um URL (porque o servidor de destino usa um intervalo de IP para trocar entre eles) usando o iptables.

É possível fazer isso?

Se assim eu estava pensando em usar isso:

iptables -t nat -A PREROUTING -p tcp --dport 10022 -j DNAT --to sftp.cl.cloud.mypega.com:22
iptables -A FORWARD -d sftp.cl.cloud.mypega.com -p tcp --dport 22 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth69 -j MASQUERADE

Isso está correto?

    
por czumelzu 12.05.2017 / 15:37

3 respostas

1

Não, não vai funcionar. Embora você possa fornecer nomes de hosts para o iptables, eles não serão resolvidos dinamicamente. De acordo com a página man:

Hostnames will be resolved once only, before the rule is submitted to the kernel.

Assim, a regra encaminhará os pacotes para o endereço IP que foi resolvido ao enviar a regra.

    
por 12.05.2017 / 15:54
0

Isso não funcionará com iptables nua. Você precisará configurar um proxy (por exemplo, haproxy , apache httpd , nginx ) que faça proxy reverso para o destino desejado e DNAT para esse proxy.

    
por 12.05.2017 / 16:44
0

A verdadeira questão é como eu permito o tráfego sftp do meu host?

iptables -A OUTPUT -o eth0 -p tcp --dport 22 -j ACCEPT

Sim, é o mesmo que SSH. Se você quiser limitá-lo somente a determinados hosts em sua rede, ajuste-o de acordo. Eu tirei isso daqui: IPTables: permita o SSH de saída . Isso também recomenda duas regras com estado para permitir a comunicação continuada quando a conexão for estabelecida:

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

O DMZ do destino, o FQDN, o esquema de endereço IP e a rotação de IP são irrelevantes. Contanto que o FQDN que você recebeu seja válido e registrado, o DNS permitirá que o TCP / IP obtenha os pacotes para onde eles precisam ir.

Se o servidor DMZ mencionado for SUA DMZ e o servidor estiver atuando como seu firewall, você precisará aceitar pacotes do servidor de origem e encaminhá-los para a interface que hospeda o IP voltado para o público. Você também precisará abrir o tráfego de entrada, porta 22, endereço de destino do seu servidor interno. ACEITAR isso e encaminhar para a rede interna.

Observe que você não precisa saber o FQDN de destino para nada disso. Se eles tivessem um bom endereço IP estático, você poderia bloquear as regras para permitir apenas o sftp (e o SSH) de / para esses sites.

    
por 12.05.2017 / 22:29