redirecionamento iptables para porta 3389 [resolvido]

Iniciado por _ubuntu_, 17 de Dezembro de 2012, 11:55

tópico anterior - próximo tópico

_ubuntu_

Bom dia, boa tarde, boa noite galera...

seguinte..

minha rede

 |-nuvem
 |
modem
 |
 |
 |--eth1 ip: 192.168.1.40
servidor proxy squid3 + firewall
 |--eth0 ip: 10.1.1.1
 |
 |----------computador cliente
 |
servidor win server 2003 = usando Terminal Service porta 3389 ~ ip 10.1.1.50


sendo assim eu ja tentei diversos comandos iptables, e até agora nada..ja passei 3 dias pesquisando no google e testando tudo que é iptables e nada! sendo assim estou aqui pedindo para que alguem possa me ajudar.. a ultima tentativa foi essa...


#iptables -t nat -A PREROUTING -p tcp --dport 3389 -d 192.168.1.40 -j DNAT --to-destination 10.1.1.50:3389
#iptables -t nat -A POSTROUTING -p tcp -d 10.1.1.50 -j MASQUERADE

e nada!!!

zekkerj

... vc colocou esses "#" no início da linha apenas aqui, certo? Pq, como vc deve saber, eles não podem aparecer no seu script, ou vc vai transformar essas linhas em comentários.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Arthur Bernardes

E então Zekkerj, como eu vi: iptables -t nat -A PREROUTING -p tcp --dport 3389 -d 192.168.1.40 -j DNAT --to-destination 10.1.1.50:3389

Ele não poderia remover esse ":3389" de --to-destination 10.1.1.50:3389 ?

zekkerj

Poderia. Mas como dizem os advogados... "o que abunda, não prejudica".
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Arthur Bernardes


_ubuntu_

Citação de: zekkerj online 17 de Dezembro de 2012, 12:12
... vc colocou esses "#" no início da linha apenas aqui, certo? Pq, como vc deve saber, eles não podem aparecer no seu script, ou vc vai transformar essas linhas em comentários.

sim sim...me desculpe...esta com esse # só para demonstrar que foi feito com permissoes de superUsuario...

_ubuntu_

entao galera..ja tentei mais varias vezes e até agora nao tive exito....

tentei assim tbm

iptables -A INPUT -p tcp --destination-port 3389 -j ACCEPT
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 3389 -j DNAT --to-destination 10.1.1.50:3389
iptables -A FORWARD -p tcp -i eth1 --dport 3389 -d 10.1.1.50 -j ACCEPT



mas nd tbm..

Safetec

Citação de: _ubuntu_ online 17 de Dezembro de 2012, 15:38
entao galera..ja tentei mais varias vezes e até agora nao tive exito....

tentei assim tbm


iptables -A INPUT -p tcp --destination-port 3389 -j ACCEPT
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 3389 -j DNAT --to-destination 10.1.1.50:3389
iptables -A FORWARD -p tcp -i eth1 --dport 3389 -d 10.1.1.50 -j ACCEPT



mas nd tbm..

Use somente estas duas linhas.

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 3389 -j DNAT --to-destination 10.1.1.50:3389
iptables -A FORWARD -p tcp -i eth1 --dport 3389 -d 10.1.1.50 -j ACCEPT


E além disso vc deve configurar no modem que todas as requisições para o endereço válido dele sejam redirecionadas para o ip da eth1.

Gerelmente vc informa o ip DMZ no modem.



Arthur Bernardes

Essa regra: iptables -A FORWARD -p tcp -i eth1 --dport 3389 -d 10.1.1.50 -j ACCEPT

Tenta deixar assim: iptables -A PREROUTING -p tcp -i eth1 --dport 3389 -d 10.1.1.50 -j ACCEPT

_ubuntu_

rodei o nmap e olha o resultado.

o# nmap -v 192.168.1.40

Starting Nmap 5.00 ( http://nmap.org ) at 2012-12-17 16:12 BRST
NSE: Loaded 0 scripts for scanning.
Initiating SYN Stealth Scan at 16:12
Scanning proxy (192.168.1.40) [1000 ports]
Discovered open port 445/tcp on 192.168.1.40
Discovered open port 80/tcp on 192.168.1.40
Discovered open port 22/tcp on 192.168.1.40
Discovered open port 139/tcp on 192.168.1.40
Discovered open port 3128/tcp on 192.168.1.40
Completed SYN Stealth Scan at 16:12, 0.08s elapsed (1000 total ports)
Host proxy (192.168.1.40) is up (0.0000080s latency).
Interesting ports on proxy (192.168.1.40):
Not shown: 995 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
3128/tcp open  squid-http

Read data files from: /usr/share/nmap
Nmap done: 1 IP address (1 host up) scanned in 0.17 seconds


_ubuntu_

Citação de: Arthur Bernardes online 17 de Dezembro de 2012, 15:58
Essa regra: iptables -A FORWARD -p tcp -i eth1 --dport 3389 -d 10.1.1.50 -j ACCEPT

Tenta deixar assim: iptables -A PREROUTING -p tcp -i eth1 --dport 3389 -d 10.1.1.50 -j ACCEPT

essa parte em negrito me retorna esse erro:

iptables: No chain/target/match by that name.

Arthur Bernardes

Tenta assim: iptables -t nat -A PREROUTING -p tcp --dport 3389 -d 192.168.1.40 -j DNAT --to 10.1.1.50:3389

zekkerj

Certo, vamos lá. Antes de mudar os comandos, confirme que o tráfego está chegando no seu servidor, com o comando abaixo.

sudo iptables -t nat -L -v -n

Aliás, talvez ajude se vc mostrar seu firewall completo.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

_ubuntu_

Citação de: zekkerj online 17 de Dezembro de 2012, 17:58
Certo, vamos lá. Antes de mudar os comandos, confirme que o tráfego está chegando no seu servidor, com o comando abaixo.

sudo iptables -t nat -L -v -n

Aliás, talvez ajude se vc mostrar seu firewall completo.

root@proxy:/diogo# iptables -t nat -L -v -n
Chain PREROUTING (policy ACCEPT 2 packets, 221 bytes)
pkts bytes target     prot opt in     out     source               destination
    0     0 DNAT       tcp  --  192.168.1.40 *       0.0.0.0/0            0.0.0.0/0           tcp dpt:3389 to:10.1.1.50:3389

Chain POSTROUTING (policy ACCEPT 1 packets, 540 bytes)
pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 1 packets, 540 bytes)
pkts bytes target     prot opt in     out     source               destination





-----------------------estou usando as seguintes regras do firewall

#!/bin/bash
iptables -A INPUT -p tcp --destination-port 3389 -j ACCEPT
iptables -A FORWARD -p tcp --dport 3389 -j ACCEPT
#terminal server
iptables -t nat -A PREROUTING -i 192.168.1.40 -p tcp --dport 3389 -j DNAT --to 10.1.1.50:3389

somente essas....

outra duvida...pra que serve isso ??echo 1 /proc/sys/net/ipv4/ip_forward
preciso realmente adicionar esse 1 para funcionar ?

zekkerj

Citarpra que serve isso ??echo 1 /proc/sys/net/ipv4/ip_forward
preciso realmente adicionar esse 1 para funcionar ?

Serve pra ativar o redirecionamento de pacotes. Sem isso os pacotes vão chegar em uma interface, mas não serão redirecionados pra outra.

-----------------

essa máquina onde vc está executando o firewall é mesmo a máquina do proxy?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D