Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Port Forward - Liberando uma porta interna

    Scheduled Pinned Locked Moved Portuguese
    16 Posts 2 Posters 5.7k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M Offline
      marcone
      last edited by

      Olá !

      Sou novo com o pfSense, mas tenho relativa experiência com FreeBSD.
      Estou tentando fazer algo que pode ser simples, mas não estou conseguindo.
      Desejo abrir e direcionar uma porta do gateway com pfSense para um IP da rede interna.
      No gateway anterior sempre fiz isto com o RINETD, muito simples e prático.

      Bem, até então o que fiz:

      1. Criei um NAT - Port Forward:
        WAN TCP * * WAN address 5900 (VNC) 192.168.0.50 5900 (VNC)  (O IP 192.168.0.50 é o IP interno da rede. 5900 é a porta a ser liberada).

      2. Crie uma regra de liberação da porta:
        PASS IPv4 TCP * * WAN address 5900 (VNC) * none   (Liberando o acesso externo na porta 5900)

      3. Em SYSTEM - ADVANCED - habilitei a opção: "NAT Reflection mode for port forwards"

      4. Na interface WAN desabilitei as opções:
            Block private networks e Block bogon networks.

      Ao tentar verificar se a porta está aberta, com o comando, nmap IP_GATEWAY -p 5900, ele identifica que a porta não está aberta, enquanto que, no outro gateway com o RINETD ele apresenta a porta como Aberta.

      O que pode estar faltando para habilitar esta porta para a rede externa ?
      Estou usando o pfSense 2.1.4.

      Grato pela ajuda desde já,
      Marcone

      1 Reply Last reply Reply Quote 0
      • B Offline
        brunopinheiro
        last edited by

        Boa noite marcone,

        Para seu cenário, as opções 2, 3 e 4 são desnecessárias.

        2- Quando voce cria um nat do tipo forward, por padrão ele ja cria a regra de liberação na interface que foi feito o nat, no caso a WAN;

        3- NAT Reflection é para situações que voce esta dentro de sua rede interna e precise sair na interface wan fazer o nat e refletir de volta para sua rede interna. **eu acho :D  mas tenho certeza que voce nao precisa.

        4- Block private networks e Block bogon networks são para bloquear origens com endereços de rede privada e redes bogons. Para verificar se sua rede não está na tabela de rede bogons (que eu acho dificil está) acesse "Diagnostics > Tables > boggons" ou http://ip_meu_pfsense/diag_tables.php?type=bogons.

        O nmap não é uma boa forma de testar, pois a porta em questão pode esta liberada, mas o icpm (utilizado pelo nmap entre outros) pode está bloqueado.

        Faça as seguintes analises por favor:

        1- verifique se não tem um regra acima bloqueando o trafego em questão;
        2- verifique se o cliente (onde esta instalado o vnc) em questão está setado o gateway do pfsense;
        3- verifique se o firewall do cliente em questão não está bloqueando requisições partindo de redes externas. (no windows firewall - Publico);
        4- verifique se o antivírus o cliente em questão não está bloqueando requisições partindo de redes externas.

        aguardamos sua resposta

        abraços.

        att,

        Bruno Pinheiro.

        1 Reply Last reply Reply Quote 0
        • M Offline
          marcone
          last edited by

          Olá Bruno, bom dia !

          Lhe agradeço pela resposta.
          Primeiramente excluí as opção que não são necessárias, uma vez que a liberação já seria feita pelo NAT, conforme mencionado.

          As análises feitas:
          1 - Verifique se não tem uma regra acima bloqueando:

          • Não tenho outras regras, apenas 1 liberando o ICMP e outra liberando a porta 80:
            PASS WAN IPv4 TCP * * * 80 (HTTP) * none
            PASS WAN IPv4 ICMP * * * * * none  
            Acima destas não tenho outras regras.

          2 - Verifique o gateway do cliente:

          • OK. O mesmo está com o gateway do pfSense.

          3 e 4 - Firewall e Antivirus do cliente:

          OK. O mesmo consigo acessar por VNC de outra máquina interna e também pelo gateway atual.

          Para tentar simular melhor se o pfSense está ou não bloqueando a porta, coloquei outro computador na rede externa e tentei fazer o acesso pela aplicação. Assim não precisei usar o NMAP. Mas também não tive êxito. Mas ao colocar o IP do gateway atual, ele consegue acessar.

          Alguma outra indicação ou configuração que poderia fazer ?

          Retomando, o NAT está assim configurado:
          WAN TCP * * WAN address 5900 (VNC) 192.168.0.50 5900 (VNC)

          Obrigado,
          Marcone

          1 Reply Last reply Reply Quote 0
          • B Offline
            brunopinheiro
            last edited by

            Bom dia amigo,

            diga-me uma coisa.

            sabendo que seu firewall tem um IP wan e um gateway wan nessa rede wan, qual é o endereço que voce coloca na aplicação?

            1- Gateway da WAN
            2- IP address da WAN

            aguardo,

            Att,

            Bruno Pinheiro.

            1 Reply Last reply Reply Quote 0
            • M Offline
              marcone
              last edited by

              Olá !

              Segue a estrutura:

              Gateway atual - IP WAN 10.40.4.1, IP LAN 192.168.0.1, GW 10.40.4.10

              Gateway Novo, com pfSense - IP WAN 10.40.4.7 IP LAN 192.168.0.2, GW 10.40.4.10

              Máquina com VNC na rede interna: IP 192.168.0.50, GW: troquei para 192.168.0.2 (novo Gateway, antes era 192.168.0.1).

              Configurei outro computador na rede 10.40.x.x com IP 10.40.4.34/255.255.255.0, GW 10.40.4.10.
              Através deste tentei acessar o 192.168.0.50, mas utilizando o IP 10.40.4.7 para a conexão.

              Assim, respondendo, coloco o IP da WAN para tentar fazer a conexão com a máquina interna, e não o gateway do meu firewall.

              Abraço,
              Marcone

              1 Reply Last reply Reply Quote 0
              • B Offline
                brunopinheiro
                last edited by

                Confirme se ficou dessa forma então: (considerando que o cliente 192.168.0.50 possui o gateway 192.168.0.2)

                origem                    tipo                destino

                10.40.4.34                  >                10.40.4.7              Funciona???????

                Maquina de teste      acesso        pfsense novo

                aguardo.

                att,

                Bruno Pinheiro

                1 Reply Last reply Reply Quote 0
                • M Offline
                  marcone
                  last edited by

                  Olá Bruno,

                  Isto mesmo.
                  10.40.4.34 é o computador que irá acessar.
                  10.40.4.7 é o pfSense.

                  Mas ao tentar conectar nesta porta, não conecta.

                  Abraço,
                  Marcone

                  1 Reply Last reply Reply Quote 0
                  • B Offline
                    brunopinheiro
                    last edited by

                    Entendi, quanto ao antivirus e firewall, ele pode ter contexto que libere somente IPs da rede interna, mas não IPs de outra rede. Não sei se pode ser isso. Em fim, para entender melhor, post aqui a saida dos seguintes comandos: (se possivel, salve tudo em um bloco de notas para nao ficar poluido aqui).

                    netstat -rn
                    pfctl -s nat
                    pfctl -s rules

                    aguardo,

                    att,

                    Bruno Pinheiro

                    1 Reply Last reply Reply Quote 0
                    • M Offline
                      marcone
                      last edited by

                      Olá Bruno,

                      Segue o arquivo anexado.
                      Uma observação:
                      Além das 2 redes já comentadas, tenho um outro link paralelo, cujo rede é a 10.10.17.x.

                      Obrigado,
                      Marcone

                      pfsense.txt

                      1 Reply Last reply Reply Quote 0
                      • B Offline
                        brunopinheiro
                        last edited by

                        Bom dia Marcone,

                        O pfsense para não ter problema com muilt-wan, ele tem uma função chamada reply-to (adiciona em todos os pacotes entrantes pela wan). Essa função é automatica para interfaces (interfaces, não confuda com rules, pois ambos tem a opção de gateway) configuradas com gateways. Dessa forma, todo pacote será marcado com um gateway (10.40.4.10), assim ele vai desconsiderar a tabela de roteamento do sistema e mandar o pacote (na volta) para gateway 10.40.4.10 em vez de 10.40.4.34. Esse NAT somente funcionara se voce estiver atras do 10.40.4.10 (como tivesse na internet). Para fins de testes, faça assim, navegue até a 'Interface > wan" e remova o gateway. Ou então navegue até a RULE (Firewall > Rules > WAN-10.40.4.0) criada por esse NAT e em "Advanced features" marque a seguinte opção "This will disable auto generated reply-to for this rule."

                        Regra criada pelo NAT no seu PFSENSE:

                        pass in quick on bce0 reply-to (bce0 10.40.4.10) inet proto tcp from any to 192.168.0.204 port = 5900 flags S/SA keep state label "USER_RULE: NAT "

                        att,

                        Bruno Pinheiro

                        1 Reply Last reply Reply Quote 0
                        • M Offline
                          marcone
                          last edited by

                          Olá Bruno, bom dia !

                          Grato pelo seu retorno.
                          Segui suas orientações: Desmarquei o Gateway para a WAN e habilitei a opção "This will disable auto generated reply-to for this rule.", dentro da regra do NAT, que direciona para o IP interno.
                          Assim fiquei sem gateway para esta interface.

                          Ao executar o comando "pfctl -s rules", a regra citada por você sumiu.

                          Realizei os mesmos testes, conectei uma máquina com IP 10.40.4.34, mas da mesma forma, não conectou com a máquina interna pelo VNC. Algo mais que poderia ser feito ? Alguma outra porta também não precisa ser liberada ?

                          Obrigado,
                          Marcone

                          1 Reply Last reply Reply Quote 0
                          • B Offline
                            brunopinheiro
                            last edited by

                            Tem sim, vamos depurar mais  8)  hehe

                            na verdade era uma das duas opções, ou remover o gateway ou marcar para nao fazer o reply-to. Só tome cuidado que voce terá problemas de retorno de pacote para internet caso esse cara não seja o seu default gateway.

                            Em fim, mãos a obra!!

                            Abra 4 terminais do pfsense, deixe em execução os seguinte comandos (1 para cada pfsense)

                            tcpdump -ni bce0 port 5900
                            tcpdump -ni bce1 port 5900
                            tcpdump -ni igb0 port 5900
                            tcpdump -n -e -ttt -i pflog0 port 5900

                            Feito isso tente fazer o acesso novamente. Quando ele apresentar o erro de falha na conexão, volte aos terminais, pressione Ctrl+c e copie os resultados para um bloco de notas e post aqui no forum.

                            aguardo.

                            att,

                            Bruno Pinheiro

                            1 Reply Last reply Reply Quote 0
                            • M Offline
                              marcone
                              last edited by

                              Olá Bruno,

                              Segue em anexo o resultado dos comandos.
                              Lembro que desta vez somente desativei o gateway da WAN, deixando o outro parâmetro desabilitado.

                              Obrigado,
                              Marcone

                              pfSense2.txt

                              1 Reply Last reply Reply Quote 0
                              • B Offline
                                brunopinheiro
                                last edited by

                                Faça a seguinte configuração:

                                1- "Firewall > NAT > Outbound"  marque manual caso esteja como automatico;
                                2- Encontre o NAT criado com as seguintes informações: (mais ou menos como a imagem pfnat1.jpg);

                                Interface: interface do endereço 10.40.4.7
                                Source: 192.168.0.0/24
                                Source Port: *
                                Destination: *
                                Destination Port: *
                                NAT Address: interface_address (endereço 10.40.4.7)
                                NAT Port: *
                                Static Port: NO

                                3- Edite essa regra e modifique de acordo como a imagem pfnat2.jpg;
                                4- Confirme se a mudança ficou mais ou menos como a imagem pfnat3.jpg;
                                5- Aplique as configurações e em "Diagnostics > States > Reset States" clique no botão Reset;
                                6- Abra o terminal novamente e deixe em execução os seguinte comando:

                                tcpdump -ni bce0

                                7- Teste agora o acesso e post o resultado do comando supracitado.

                                Fico no aguardo.

                                Att,

                                Bruno Pinheiro.

                                natpf1.JPG
                                natpf1.JPG_thumb
                                natpf2.JPG
                                natpf2.JPG_thumb
                                natpf3.JPG
                                natpf3.JPG_thumb

                                1 Reply Last reply Reply Quote 0
                                • M Offline
                                  marcone
                                  last edited by

                                  Olá !

                                  Segue o retorno do tcpdump.

                                  Att,
                                  Marcone

                                  pfsense3.txt

                                  1 Reply Last reply Reply Quote 0
                                  • M Offline
                                    marcone
                                    last edited by

                                    Olá,

                                    Finalmente consegui resolver a situação. Talvez não da forma que estava procurando, mas funcionou.
                                    Fui por um outro caminho. Primeiro instalei o aplicativo rinetd pelo comando:

                                    pkg_add -r (caminho do tbz do rinetd)

                                    Adicionei no arquivo /usr/local/etc/rinetd.conf as entradas necessárias:

                                    10.40.4.7 5900 10.10.18.50 5900

                                    Após criei uma nova regra do NAT no pfSense da seguinte forma:

                                    PASS WAN TCP  * * 192.168.0.50 5900 (VNC) 10.40.4.7 5900 (VNC)

                                    Iniciei o rinetd:
                                    /usr/local/sbin/rinetd

                                    e Voilá ! Passei a acessar o VNC da rede externa para uma máquina interna.

                                    Abraço,
                                    Marcone

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post
                                    Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.