Cisco ASA 8

NAT - мабуть одне з найважливіших речей в ASA, і впевненої роботи з ASA потрібно чітко розуміти принципи роботи NAT.

cisco

У попередній частині ми побудували мережу з ASA, яка з'єднує внутрішню та зовнішню підмережі двома інтерфейсами: inside та outside. Тут до нашої мережі ми додамо мережу DMZ, а також інтерфейс dmz. Також ми розглянемо власне реалізацію NAT як для версій ASAprior_8.3, так і для версійpost_8.3.

Налаштування інтерфейсу dmz

Для початку перевіримо наші з'єднання, налаштовані в минулій частині:

Section

Судячи з усього, все працює і ми можемо приступити до налаштування інтерфейсу dmz.ASDM > Configuration > Device Setup > Interfaces

Section

CLI

Перевірка

Старий NAT

Оскільки ще є безліч пристроїв, що працюють зі старими версіями IOS (pre8.3), ми зобов'язані вміти налаштовувати і "Старий NAT".

У перших у старій версії була наступна команда: - пакети зсередини назовні завжди повинні натиснутися. Тобто. якщо не налаштований пакет NAT не піде в інтернет.

Нові версії поводяться як завжди " no nat-control " , тобто. подібно до IOS маршрутизаторів: якщо налаштований NAT то відбувається трансляція відповідно до правил. Пакети, які не потрапили під трансляцію, просто маршрутизуються згідно з таблицею маршрутизації.

Давайте тепер розглянемо налаштування NAT:

Таким чином, як видно, для кожного інтерфейсу, для кожної зони необхідно прописати свій NAT або PAT, і це може стати дійсно складним завданням у великій мережі, коли десятки таких інтерфейсів (віртуальних).

access-list NONAT ip (source net to dest net) nat (inside) 0 acces-lst NONAT Ця конструкція використовується для заборони NAT для певного трафіку. Це необхідно, наприклад, при побудові тунелю site-to-site. У тунелі ніякої трансляції не повинно бути. Ідентифікатор"0" є зарезервованим номером, який говорить системі, що NAT з таким номером реально натиснути не буде.

Порівняно зі старим, новий NAT організований набагато простіше та інтуїтивно зрозуміліше.

Аналогічно, в ASA firewall найчастіше використовуються два типи NAT:

Або, що те саме:

Або, що те саме:

Взагалі, у нових версіях 8.3 and later NAT реалізується у двох типах

  • Network object NAT або Auto NAT - це ми щойно продемонстрували.
  • Twice NAT / Manual NAT

Cisco рекомендує використання Network object NAT, оскільки він простий. Twice NAT використовується у складніших випадках, оскільки має набагато більше можливостей.

Тут ми скористаємося типомNetwork object NAT (Auto NAT).

Configuration > Firewall > NAT Rules Вибираємо Add Network Object NAT rule

Section

CLI

Як бачимо, даний тип NAT прив'язаний до Network Object, тобто. до внутрішньої мережі, до якої власне застосовується цей NAT.

Перевірка

Тут зверніть увагу наSection 2. У термінології ASA існують три типи або sections of NAT:

  1. Twice NAT / Manual NAT (very granular)
  2. Auto NAT (Object NAT)
  3. Twice NAT / Manual NAT (after "auto NAT")

Ми щойно виконали Auto NAT (Object NAT), тому і відображається Section 2.

Тут видно прапор "i", що означає dynamic, що власнеми й налаштували.

Ще варіант налаштування нат:

тут ми в лоб вказали що внутрішнім інтерфейсом є inside

Варіант реалізації PAT:

Twice NAT / Manual NAT

Для вирішення цієї задачі до вже існуючої конфігурації ми додамо Manual NAT:Configuration > Firewall > NAT Rules Вибираємо Add NAT Rule before "Network Object" NAT Rules - це власне і є Manual NAT.

Manual

Як видно тепер, у нас є політики NAT у двох секціях: Section 1 і Section 2.

Ще раз нагадаємо: У термінології ASA існують три типи або sections of NAT:

  1. Manual NAT (very granular)
  2. Auto NAT (Object NAT)
  3. Manual NAT (after "auto NAT")

Manual NAT або NAT Rule до "Network Object" NAT Rules більш специфічна і розташована вище за пріоритетом над Auto NAT (Object NAT). Відповідно все, що не потрапляє під Manual NAT, йде в секцію 2, а потім і в секцію 3.

Ми можемо поміняти місцями наші правила, тоді Manual NAT буде розташована після Auto NAT:

Таким чином, Section1 і Section3 відрізняються один від одного лише розташуванням правил, але не їх характером. Але при такій конфігурації наш Manual NAT не відпрацює, оскільки запити до нього не дійдуть.

Section

Як видно, Twice NAT це той самий Manual NAT, але зі зміною Destination adresses

Публікування Сервера Адреса-в-Адреса

Тому трансляцію Адреса-в-Адреса має сенс виконувати коли у нас багато білих IP. Більш економний варіант - це використанняStatic Port Address Translation (Port Redirection).

І, забігаючи вперед, безумовно потрібно додати access-list для дотсупа до сервера:

За access-lists докладніше у наступній частині.

Публікування СервераStatic Port Address Translation (Port Redirection)

Manual

Ще приклад роботи нового NAT

Для того, щоб продемонструвати роботу нового NAT, розглянемо наступний приклад:

Manual

У цьому випадку використовується лише NAT для доступу назовні та для публікування сервера DMZ.

Для взаємодії внутрішніх мереж DMZ, insidem inside2 використовуються лише ACL:

У цій конфігурації:

  • inside має доступ скрізь, за правилами за замовчуванням.
  • inside2 - має доступ скрізь, т.к. виставлено ACL permit ip any any
  • dmz - має доступ на внутрішній 192.168.2.49 по всіх портах, а також на 192.168.2.12 ftp. Оскільки включено ftp inspection, то за потреби буде автоматично дозволено 20 порт.
  • ouside - тут дозволено лише внутрішній сервер по http і ftp.

Рекомендації

  • Під час роботи з NAT дуже зручно використовувати такі команди:
  • Для зручності рекомендується називати "object" чи "object-group" використовуючи CAPS.

Best Practice

Як вже обговорювалося, в ASA присутні 3 Sections, в яких можна розміщувати правила NAT, та які обробляються у відповідному порядку:

  1. Section 1 - Twice NAT / Manual NAT
  2. Section 2 - Network Object NAT
  3. Section 3 - Twice NAT / Manual NAT

Виходячи з цього, існують рекомендації щодо розміщення правил.

Як підсумок

  1. Section 1
  2. NAT0/NAT Exemption
  3. Policy PAT/NAT/NAT+PAT (Тобто функціонал Section 2, який потрібно перекрити)
  4. Non-standard NAT configurations
  5. Section 2
  6. Static NAT
  7. Static PAT (Port Forward)
  8. Section3
  9. Default PAT / NAT / NAT + PAT
  10. Policy PAT / NAT / NAT + PAT (для користувачів)

Публікування Сервера Static Port Address Translation (Best practices)