ASA 8.3 e acima praticamente força o uso de objetos ao configurar o NAT. Embora isso possa ser problemático para aqueles que têm administrado o PIX / ASA por muitos anos sem usar objetos, nos últimos 6 meses eu realmente cresci para gostar do novo paradigma NAT. Static PAT - o que você estará fazendo para "portar" para frente em portas para hosts dentro e dmz, não se encaixa tão perfeitamente quanto eu gostaria.
Alguns podem discordar do meu esquema de nomes de objetos - saiba que ele está em uso em mais de 100 ASAs, alguns com mais de 1500 arquivos de configuração de linha - e faz maravilhas para manter as coisas na CLI.
Os links postados nas respostas mencionadas são um ótimo começo.
É altamente recomendável ler primeiro a seção NAT do guia de configuração do ASA 8.4 CLI. Mesmo que você não entenda - leia primeiro para obter os termos.
Em seguida, acompanhe o vídeo de Jay Johnston. Eu achei muito útil quando eu estava tentando enrolar minha cabeça em torno das coisas.
Passando diretamente para sua pergunta.
Assumindo
- interface externa IP: 1.1.1.2/30
- dentro do IP da interface: 192.168.10.1/24
-
IP da interface dmz: 192.168.20.1/24
-
PAT dinâmico necessário para sub-redes dentro e dmz.
-
PAT estático (encaminhamento de porta) necessário para determinados hosts internos e dmz definidos abaixo
- dentro 192.168.10.10 precisa de TCP / 22
- dmz 192.168.20.20 precisa de TCP / 53, TCP / 80, TCP / 443 e UDP / 53
Defina os objetos de rede para suas redes primeiro e configure o objeto NAT para PAT dinâmico para os dois objetos. Observe que estou usando meu padrão de nomenclatura de objetos. Se você mostrar executar, verá a "rede de objetos ..." para cada objeto duas vezes. Uma vez para a definição do objeto e, em seguida, novamente mais tarde na configuração com apenas declaração nat.
object network net-192.168.10.0-24
description inside Network
subnet 192.168.10.0 255.255.255.0
nat (inside,outside) dynamic interface
object network net-192.168.20.0-24
description dmz Network
subnet 192.168.20.0 255.255.255.0
nat (dmz,outside) dynamic interface
Defina os objetos de rede para seus hosts. É aqui que o PAT fica um pouco mais difícil em 8.3 e acima. Nós definimos um objeto para o próprio host (para ser usado na ACL para facilitar). Em seguida, definimos outro objeto de rede para cada porta que é necessária. Com o NAT estático tradicional, isso é muito fácil e bonito - com o PAT estático, ele pode ficar um pouco um pouco pesado, mas ainda é muito descritivo.
object network hst-192.168.10.10
description My inside Host
host 192.168.10.10
object network hst-192.168.10.10-tcp22
description My inside Host NAT SSH
host 192.168.10.10
nat (inside,outside) static interface service tcp 22 22
object network hst-192.168.20.20
description My dmz Host
host 192.168.20.20
object network hst-192.168.20.20-udp53
description My dmz Host DNS
host 192.168.20.20
nat (dmz,outside) static interface service udp 53 53
object network hst-192.168.20.20-tcp80
description My dmz Host HTTP
host 192.168.20.20
nat (dmz,outside) static interface service tcp 80 80
object network hst-192.168.20.20-tcp443
description My dmz Host HTTPS
host 192.168.20.20
nat (dmz,outside) static interface service tcp 443 443
Agora defina grupos de serviços de grupos de objetos para uso na ACL.
object-group service svcgrp-192.168.10.10-tcp tcp
port-object eq 22
object-group service svcgrp-192.168.20.20-udp udp
port-object eq 53
object-group service svcgrp-192.168.20.20-tcp tcp
port-object eq 80
port-object eq 443
Com objetos e grupos de objetos configurados, o NAT configurado (usando NAT de objeto de rede PAT dinâmico e PAT estático) - tudo o que resta é o lado das coisas da ACL.
É aqui que isso realmente se junta - especialmente os cenários NAT estáticos tradicionais. No ASA 8.3+ UN-NAT (e NAT) acontece antes da L3 / L4 / access-group ACL check - então use IP's reais em access-group ACL's - mesmo quando ligado a interface externa.
access-list outside_access_in extended permit tcp any object hst-192.168.10.10 object-group svcgrp-192.168.10.10-tcp
access-list outside_access_in extended permit udp any object hst-192.168.20.20 object-group svcgrp-192.168.20.20-udp
access-list outside_access_in extended permit tcp any object hst-192.168.20.20 object-group svcgrp-192.168.20.20-tcp
Não se esqueça de vincular sua ACL à interface.
access-group outside_access_in in interface outside
Note que eu fico longe de "nomes amigáveis" nos identificadores de objeto. Torna um PITA quando você está depurando no CLI. Eu acho que os nomes de objetos que uso são muito descritivos e úteis em cenários do mundo real.
Além disso, com NAT estático permitindo portas adicionais, você só precisa adicionar uma entrada de objeto de porta ao objeto svcgrp do host. Com o PAT estático, no entanto, você terá que adicionar um novo objeto de rede para o PAT estático - somente uma instrução nat permitida por objeto - e adicionar o objeto porta ao objeto svcgrp do host. / p>
Uma solicitação de recurso foi arquivada com a Cisco para permitir várias instruções PAT estáticas por objeto de rede. Isso reduziria o número de objetos de rede necessários em cenários PAT estáticos. Até o momento, não foi adicionado.
-Weaver