Назад | Перейти на главную страницу

ASA 5505 8.4 открытый порт извне на веб-сервер

Я настроил веб-сервер в отдельной VLAN и настроил объект для веб-сервера, чтобы разрешить связь по tcp-порту 80, список доступа и группа доступа также настроены. Но я не могу добраться до сервера извне.

Я искал в Google и смотрел ответы здесь, но ни один из них не позволил мне получить доступ к серверу.

Я проверил, что веб-сервер работает и доступен изнутри сети, используя свой IP-адрес.

Вот соответствующие части конфигурации:

!
interface Vlan1
 nameif outside
 security-level 0
 ip address dhcp 
!
interface Vlan2
 nameif inside
 security-level 100
 ip address 10.5.1.1 255.255.255.0 
!
interface Vlan3
 no forward interface Vlan2
 nameif dmz
 security-level 50
 ip address 10.4.1.1 255.255.255.0 
!             

dns server-group DefaultDNS
 domain-name mastermind.local

object network dev-server-internal 
 host 10.4.1.2
object network inside-net 
 subnet 0.0.0.0 0.0.0.0
object network dev-server-external 
 host 10.4.1.2
access-list outside_access_in extended permit tcp any host 10.4.1.2 eq www 

!
object network dev-server-internal
 nat (inside,dmz) dynamic interface
object network inside-net
 nat (inside,outside) dynamic interface
object network dev-server-external
 nat (dmz,outside) static interface service tcp www www 
access-group outside_access_in in interface outside
route outside 0.0.0.0 0.0.0.0 10.15.166.1 1

dhcpd dns 8.8.8.8 8.8.4.4
dhcpd auto_config outside
!
dhcpd address 10.5.1.2-10.5.1.32 inside
dhcpd enable inside
!
dhcpd address 10.4.1.2-10.4.1.2 dmz
dhcpd enable dmz
!

Таким образом, идея состоит в том, что VLAN «внутри» используется для обычных пользователей, а VLAN «dmz» - для веб-сервера. К VLAN "dmz" будет подключен только один сервер, поэтому я разрешил DHCP только для одного адреса.

Я добавил объект «dev-server-internal», чтобы позволить пользователям изнутри получать доступ к веб-серверу напрямую, используя его ip (10.4.1.2).

Итак, что я могу сделать, чтобы получить доступ к веб-серверу извне?


Вот что show nat дает мне после попытки доступа к веб-серверу извне:

Auto NAT Policies (Section 2)
1 (dmz) to (outside) source static dev-server-external interface service tcp www www 
    translate_hits = 0, untranslate_hits = 0
2 (inside) to (dmz) source dynamic dev-server-internal interface
    translate_hits = 0, untranslate_hits = 0
3 (any) to (outside) source dynamic inside-net interface
    translate_hits = 1160, untranslate_hits = 149

РЕДАКТИРОВАТЬ: Выход из packet-tracer input outside tcp 1.2.3.4 2501 10.4.1.2 80:

Phase: 1
Type: ACCESS-LIST
Subtype: 
Result: ALLOW
Config:
Implicit Rule
Additional Information:
MAC Access list

Phase: 2
Type: ROUTE-LOOKUP
Subtype: input
Result: ALLOW
Config:
Additional Information:
in   10.4.1.0        255.255.255.0   dmz

Phase: 3
Type: ACCESS-LIST
Subtype: log
Result: ALLOW
Config:
access-group outside_access in interface outside
access-list outside_access extended permit tcp any host 10.4.1.2 eq www 
Additional Information:

Phase: 4
Type: IP-OPTIONS
Subtype: 
Result: ALLOW
Config:
Additional Information:

Phase: 5
Type: HOST-LIMIT
Subtype: 
Result: ALLOW
Config:
Additional Information:

Phase: 6
Type: NAT
Subtype: rpf-check
Result: DROP
Config:
object network dev-server-external
 nat (dmz,outside) static interface service tcp www www 
Additional Information:

Result:
input-interface: outside
input-status: up
input-line-status: up
output-interface: dmz
output-status: up
output-line-status: up
Action: drop
Drop-reason: (acl-drop) Flow is denied by configured rule

РЕДАКТИРОВАТЬ 2: Соответствующие части из show interface vlan1:

Interface Vlan1 "outside", is up, line protocol is up
  Hardware is EtherSVI, BW 100 Mbps, DLY 100 usec
    MAC address 0007.7dab.c007, MTU 1500
    IP address 94.254.4.141, subnet mask 255.255.254.0

Выход из show route:

Gateway of last resort is 10.15.166.1 to network 0.0.0.0

C    10.5.1.0 255.255.255.0 is directly connected, inside
C    10.4.1.0 255.255.255.0 is directly connected, dmz
C    94.254.4.0 255.255.254.0 is directly connected, outside
S*   0.0.0.0 0.0.0.0 [1/0] via 10.15.166.1, outside

Выход из packet-tracer input outside tcp 1.2.3.4 2501 94.254.4.141 80:

Phase: 1
Type: ACCESS-LIST
Subtype: 
Result: ALLOW
Config:
Implicit Rule
Additional Information:
MAC Access list

Phase: 2
Type: UN-NAT
Subtype: static
Result: ALLOW
Config:
object network dev-server-external
 nat (dmz,outside) static interface service tcp www www 
Additional Information:
NAT divert to egress interface dmz
Untranslate 94.254.4.141/80 to 10.4.1.2/80

Phase: 3
Type: ACCESS-LIST
Subtype: log
Result: ALLOW
Config:       
access-group outside_access in interface outside
access-list outside_access extended permit tcp any host 10.4.1.2 eq www 
Additional Information:

Phase: 4
Type: IP-OPTIONS
Subtype: 
Result: ALLOW
Config:
Additional Information:

Phase: 5
Type: HOST-LIMIT
Subtype: 
Result: ALLOW
Config:
Additional Information:

Phase: 6
Type: NAT
Subtype: rpf-check
Result: ALLOW
Config:
object network dev-server-external
 nat (dmz,outside) static interface service tcp www www 
Additional Information:

Phase: 7
Type: IP-OPTIONS
Subtype: 
Result: ALLOW
Config:
Additional Information:

Phase: 8
Type: FLOW-CREATION
Subtype: 
Result: ALLOW
Config:
Additional Information:
New flow created with id 356329, packet dispatched to next module

Result:
input-interface: outside
input-status: up
input-line-status: up
output-interface: dmz
output-status: up
output-line-status: up
Action: allow

Поместите это в ответ, чтобы упростить форматирование. Эта команда может создавать проблему:

object network dev-server-internal
 nat (inside,dmz) dynamic interface

Я бы пошел дальше и избавился от этой записи и идентификации вашей внутренней сети в DMZ следующим образом:

object network internal-hosts2
 subnet 10.5.1.0 255.255.255.0
 nat (inside,dmz) static 10.5.1.0

Кроме того, вместо использования статического маршрута сделайте это в vlan 1, чтобы обновить DHCP и автоматически установить маршрут по умолчанию из dhcp.

interface vlan 1
no ip address dhcp
ip address dhcp setroute

Теперь попробуйте захват пакета на внешнем интерфейсе. Добавьте acl в режиме конфигурации и команду захвата в обычном режиме exec

access-list test extended permit tcp any interface outside eq www
capture test access-list test interface outside

Затем, после того, как вы попытаетесь перейти на свой сайт из Интернета, выполните show capture чтобы узнать, дошли ли какие-либо пакеты до вашего брандмауэра.

Никакой автоматический NAT не сделает веб-сервер доступным во внешнем интерфейсе.

Должно быть правило статического NAT от машины DMZ к внешней стороне, возможно, для порта 80, только если вы этого хотите.