المحتويات

المقدمة

المتطلبات الأساسية

المتطلبات

المكونات المستخدمة

معلومات أساسية

معالجة البروتوكول المتقدمة

التكوين

السيناريو 1. تم تكوين عميل FTP للوضع النشط

الرسم التخطيطي للشبكة

السيناريو 2. عميل FTP المكون للوضع الخامل

الرسم التخطيطي للشبكة

السيناريو 3. تم تكوين عميل FTP للوضع النشط

الرسم التخطيطي للشبكة

السيناريو 4. عميل FTP الذي يشغل الوضع الخامل

الرسم التخطيطي للشبكة

تكوين فحص تطبيق FTP الأساسي

تكوين فحص بروتوكول FTP على منفذ TCP غير القياسي

التحقق من الصحة

TFTP

تكوين فحص تطبيق TFTP الأساسي

الرسم التخطيطي للشبكة

التحقق من الصحة

استكشاف الأخطاء وإصلاحها

العميل داخل الشبكة

العميل في شبكة خارجية

المقدمة

يصف هذا المستند سيناريوهات فحص FTP و TFTP مختلفة على تكوين فحص ASA و ASA FTP/TFTP واستكشاف الأخطاء وإصلاحها بشكل أساسي.

المتطلبات الأساسية

المتطلبات

توصي Cisco بمعرفة الموضوعات التالية:

- الاتصال الأساسي بين الواجهات المطلوبة

- تكوين خادم FTP الموجود في شبكة DMZ

المكونات المستخدمة

يصف هذا المستند سيناريوهات فحص FTP و TFTP مختلفة على جهاز الأمان القابل للتكيف (ASA) كما يغطي تكوين فحص ASA FTP/TFTP واستكشاف الأخطاء وإصلاحها بشكل أساسي.

تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج والمكونات المادية التالية:

- ASA 5500 أو ASA 5500-X Series ASA الذي يشغل صورة البرنامج 9.1(5)

- أي خادم FTP

- أي عميل FTP

تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.

معلومات أساسية

يدعم جهاز الأمان فحص التطبيق من خلال وظيفة خوارزمية الأمان المعدلة.

من خلال فحص التطبيقات الذي يحدد الحالة الذي تستخدمه خوارزمية الأمان المعدلة، يتتبع جهاز الأمان كل اتصال يعبر جدار الحماية ويضمن صلاحيته.

كما يراقب جدار الحماية، من خلال الفحص المعبر عن الحالة، حالة الاتصال لتجميع المعلومات لوضعها في جدول حالة.

باستخدام جدول الحالة بالإضافة إلى القواعد المحددة من قبل المسؤول، تستند قرارات التصفية إلى السياق الذي تم إنشاؤه بواسطة الحزم التي تم تمريرها مسبقا عبر جدار الحماية.

ويتألف تنفيذ عمليات تفتيش التطبيقات من الإجراءات التالية:

- تحديد حركة المرور

- تطبيق عمليات التفتيش على حركة المرور

- تنشيط عمليات التفتيش على واجهة

هناك شكلان من FTP كما هو موضح في الصورة.

- الوضع النشط

- الوضع الخامل

FTP نشط

في وضع FTP النشط، يتصل العميل من منفذ عشوائي غير ذي امتيازات (N>1023) إلى منفذ الأمر (21) من خادم FTP. ثم يبدأ العميل في الاستماع إلى المنفذ N>1023 وإرسال منفذ أمر FTP N>1023 إلى خادم FTP. ثم يتصل الخادم مرة أخرى بمنافذ البيانات المحددة للعميل من منفذ البيانات المحلي الخاص به، والذي هو المنفذ 20.

FTP سلبي

في وضع FTP السلبي، يقوم العميل بتهيئة كلا الاتصالات بالخادم، مما يحل مشكلة جدار الحماية الذي يقوم بتصفية اتصال منفذ البيانات الواردة بالعميل من الخادم. عند فتح اتصال FTP، يفتح العميل منفذين عشوائيا غير محظوظين محليا. يتصل المنفذ الأول بالخادم على المنفذ 21. ولكن بدلا من تشغيل الأمر port والسماح للخادم بالاتصال مرة أخرى بمنفذ البيانات الخاص به، يصدر العميل الأمر PASV. والنتيجة من هذا أن الخادم بعد ذلك يفتح منفذا عشوائيا غير ذي امتيازات (P>1023) ويرسل الأمر port P مرة أخرى إلى العميل. بعد ذلك يقوم العميل ببدء الاتصال من المنفذ N>1023 إلى المنفذ P على الخادم لنقل البيانات. بدون تكوين أمر الفحص على جهاز الأمان، يعمل FTP من داخل المستخدمين الذين يترأسون الصادر فقط في الوضع الخامل. كما يتم رفض وصول المستخدمين خارج الإتجاه الوارد إلى خادم FTP.

TFTP

يعد TFTP، كما هو موضح في RFC 1350، بروتوكولا بسيطا لقراءة الملفات وكتابتها بين خادم TFTP والعميل. يستخدم TFTP منفذ UDP 69.

معالجة البروتوكول المتقدمة

لماذا تحتاج إلى فحص FTP؟

تتطلب بعض التطبيقات معالجة خاصة بواسطة وظيفة فحص تطبيق جهاز الأمان من Cisco. تقوم هذه الأنواع من التطبيقات بتضمين معلومات عنونة IP في حزمة بيانات المستخدم أو فتح القنوات الثانوية على المنافذ المعينة بشكل ديناميكي. تعمل وظيفة فحص التطبيق مع ترجمة عنوان الشبكة (NAT) للمساعدة في تحديد موقع معلومات العنونة المضمنة.

بالإضافة إلى تعريف معلومات العنونة المضمنة، تراقب وظيفة فحص التطبيق الجلسات لتحديد أرقام المنافذ للقنوات الثانوية. تفتح العديد من البروتوكولات منافذ TCP أو UDP الثانوية لتحسين الأداء. يتم إستخدام الجلسة الأولية على منفذ معروف للتفاوض على أرقام المنافذ المعينة بشكل ديناميكي.

تراقب وظيفة فحص التطبيق هذه الجلسات، وتعرف تعيينات المنفذ الديناميكية وتسمح بتبادل البيانات على هذه المنافذ طوال مدة الجلسات المحددة. تعرض تطبيقات الوسائط المتعددة و FTP هذا النوع من السلوك.

إذا لم يتم تمكين فحص FTP على جهاز الأمان، سيتم تجاهل هذا الطلب ولا تقوم جلسات FTP بإرسال أي بيانات مطلوبة.

إذا تم تمكين فحص FTP على ASA، فإن ASA يراقب قناة التحكم ويحاول التعرف على طلب لفتح قناة البيانات. يدمج بروتوكول FTP مواصفات منفذ قناة البيانات في حركة مرور قناة التحكم، ويتطلب من جهاز الأمان فحص قناة التحكم لتغييرات منافذ البيانات.

بمجرد أن يقوم ASA بالتعرف على طلب ما، فإنه يقوم بإنشاء فتح مؤقت لحركة مرور قناة البيانات التي تستمر طوال مدة جلسة العمل. بهذه الطريقة، يراقب ال FTP تفتيش قناة التحكم، يعين data-port تنازل، ويسمح معطيات أن يكون تبادلت على المعطيات ميناء لطول الجلسة.

يقوم ASA بفحص إتصالات المنفذ 21 لحركة مرور FTP بشكل افتراضي من خلال خريطة فئة الفحص العام. يتعرف جهاز الأمان أيضا على الفرق بين جلسة FTP نشطة وسلبية.

إذا كانت جلسات FTP تدعم نقل بيانات FTP السلبي، فإن ASA من خلال الأمر inspection ftp، يتعرف على طلب منفذ البيانات من المستخدم ويفتح منفذ بيانات جديد أكبر من 1023.

يفحص أمر فحص ftp جلسات FTP وينفذ أربع مهام:

- إعداد اتصال بيانات ثانوي ديناميكي

- تعقب تسلسل أمر-إستجابة FTP

- إنشاء سجل تدقيق

- يترجم العنوان مدمج باستخدام NAT

يعد فحص تطبيق FTP القنوات الثانوية لنقل بيانات FTP. يتم تخصيص القنوات إستجابة لتحميل ملف أو تنزيل ملف أو حدث قائمة دليل، ويجب أن تكون خاضعة للتفاوض المسبق. يتم التفاوض على المنفذ من خلال أوامر المنفذ أو PASV (227).

التكوين

ملاحظة: يتم شرح جميع سيناريوهات الشبكة مع تمكين فحص FTP على ASA.

السيناريو 1. تم تكوين عميل FTP للوضع النشط

عميل متصل بشبكة داخلية من ASA والخادم في شبكة خارجية.

الرسم التخطيطي للشبكة

ملاحظة: ال ip ليس يخاطب خطة يستعمل في هذا تشكيل قانونيا routable على الإنترنت.

كما هو موضح في هذه الصورة، يحتوي إعداد الشبكة المستخدم على ASA مع العميل في الشبكة الداخلية باستخدام IP 172.16.1.5. الخادم موجود في الشبكة الخارجية مع IP 192.168.1.15. العميل لديه IP معين 192.168.1.5 في الشبكة الخارجية .

لا توجد حاجة للسماح بأي قائمة وصول على الواجهة الخارجية لأن فحص FTP يفتح قناة المنفذ الديناميكي.

مثال التكوين:

ASA Version 9.1(5)

!

hostname ASA

domain-name corp. com

enable password WwXYvtKrnjXqGbu1 encrypted

names

!

interface GigabitEthernet0/0

nameif Outside

security-level 0

ip address 192.168.1.2 255.255.255.0

!

interface GigabitEthernet0/1

nameif Inside

security-level 50

ip address 172.16.1.12 255.255.255.0

!

interface GigabitEthernet0/2

shutdown

no nameif

no security-level

no ip address

!

interface GigabitEthernet0/3

shutdown

no nameif

no security-level

no ip address

!

interface Management0/0

management-only

shutdown

no nameif

no security-level

no ip address

!--- Output is suppressed.

!--- Object groups is created to define the host.

object network obj-172.16.1.5

subnet 172.16.1.0 255.255.255.0

!--- Object NAT is created to map Inside Client to Outside subnet IP.

object network obj-172.16.1.5

nat (Inside,Outside) dynamic 192.168.1.5

class-map inspection_default

match default-inspection-traffic

!

!

policy-map type inspect dns preset_dns_map

parameters

message-length maximum 512

policy-map global_policy

class inspection_default

inspect dns preset_dns_map

inspect ftp

inspect h323 h225

inspect h323 ras

inspect netbios

inspect rsh

inspect rtsp

inspect skinny

inspect esmtp

inspect sqlnet

inspect sunrpc

inspect tftp

inspect sip

inspect xdmcp

!

!--- This command tells the device to

!--- use the "global_policy" policy-map on all interfaces.

service-policy global_policy global

prompt hostname context

Cryptochecksum:4b2f54134e685d11b274ee159e5ed009

: end

ASA(config)#

التحقق من الصحة

الاتصال

Client in Inside Network running ACTIVE FTP:

Ciscoasa(config)# sh conn

3 in use, 3 most used

TCP Outside 192.168.1.15:20 inside 172.16.1.5:61855, idle 0:00:00, bytes 145096704, flags UIB <--- Dynamic Connection Opened

TCP Outside 192.168.1.15:21 inside 172.16.1.5:61854, idle 0:00:00, bytes 434, flags UIO

هنا يبدأ الزبون في داخلي التوصيل مع مصدر ميناء 61854 إلى الغاية ميناء 21. يرسل العميل بعد ذلك أمر منفذ مع قيمة مجموعة 6. يباشر الخادم بدوره اتصال البيانات/الثانوية بمنفذ المصدر 20 ويتم حساب منفذ الوجهة من الخطوات المذكورة بعد هذه الالتقاط.

التقاط الواجهة الداخلية كما هو موضح في هذه الصورة.

التقاط الواجهة الخارجية كما هو موضح في هذه الصورة.

يتم حساب قيمة المنفذ باستخدام آخر ملمسين من أصل ستة. ال 4 أيسر عنوان و 2 مسحاج تخديد للميناء. كما هو موضح في هذه الصورة، عنوان IP هو 192.168.1.5 و 241*256 + 159 = 61855.

يوضح الالتقاط أيضا أن القيم مع أوامر المنفذ تتغير عند تمكين فحص FTP. يظهر التقاط الواجهة الداخلية القيمة الحقيقية ل IP والمنفذ الذي تم إرساله بواسطة العميل للخادم للاتصال بالعميل لقناة البيانات وميزة التقاط الواجهة الخارجية عرض العنوان المعين.

السيناريو 2. عميل FTP المكون للوضع الخامل

العميل في الشبكة الداخلية من ASA والخادم في الشبكة الخارجية.

الرسم التخطيطي للشبكة

الاتصال

Client in Inside Network running Passive Mode FTP:

ciscoasa(config)# sh conn

3 in use, 3 most used

TCP Outside 192.168.1.15:60142 inside 172.16.1.5:61839, idle 0:00:00, bytes 184844288, flags UI <--- Dynamic Connection Opened.

TCP Outside 192.168.1.15:21 inside 172.16.1.5:61838, idle 0:00:00, bytes 451, flags UIO

هنا يبدأ الزبون داخل داخل توصيل مع مصدر ميناء 61838 الغاية ميناء من 21. بما أنه FTP سلبي، يقوم العميل بتهيئة كلا الوصلتين. لذلك، بعد أن يرسل العميل الأمر PASV، يرد الخادم بقيمة السلسلة 6 ويتصل العميل بهذا المقبس لاتصال البيانات.

التقاط الواجهة الداخلية كما هو موضح في هذه الصورة.

التقاط الواجهة الخارجية كما هو موضح في هذه الصورة.

يبقى الحساب الخاص بالمنافذ كما هو.

وكما ذكرنا سابقا، يقوم ASA بإعادة كتابة قيم IP المضمنة إذا تم تمكين فحص FTP. كما أنها تفتح قناة منفذ ديناميكية لاتصال البيانات.

هذه هي تفاصيل الاتصال إذا تم تعطيل فحص FTP

الاتصال:

ciscoasa(config)# sh conn

2 in use, 3 most used

TCP Outside 192.168.1.15:21 inside 172.16.1.5:61878, idle 0:00:09, bytes 433, flags UIO

TCP Outside 192.168.1.15:21 inside 172.16.1.5:61875, idle 0:00:29, bytes 259, flags UIO

بدون فحص FTP، يحاول فقط إرسال أمر المنفذ مرة أخرى ومرة أخرى ولكن لا يوجد رد حيث يستلم الخارج المنفذ مع IP الأصلي وليس باستخدام واحد. تم إظهار نفس الشيء في التفريغ.

يمكن تعطيل فحص FTP باستخدام الأمر no fix protocol ftp 21 في وضع الوحدة الطرفية للتكوين.

بدون فحص بروتوكول FTP، يعمل الأمر PASV فقط عندما يكون العميل في الداخل كما لا يوجد أمر منفذ قادم من الداخل يجب تضمينه ويتم بدء كلا الاتصالات من الداخل.

السيناريو 3. تم تكوين عميل FTP للوضع النشط

العميل في الشبكة الخارجية من ASA والخادم في شبكة DMZ.

الرسم التخطيطي للشبكة

التكوين:

ASA(config)#show running-config

ASA Version 9.1(5)

!

hostname ASA

domain-name corp .com

enable password WwXYvtKrnjXqGbu1 encrypted

names

!

interface GigabitEthernet0/0

nameif Outside

security-level 0

ip address 192.168.1.2 255.255.255.0

!

interface GigabitEthernet0/1

nameif DMZ

security-level 50

ip address 172.16.1.12 255.255.255.0

!

interface GigabitEthernet0/2

shutdown

no nameif

no security-level

no ip address

!

interface GigabitEthernet0/3

shutdown

no nameif

no security-level

no ip address

!

interface Management0/0

management-only

shutdown

no nameif

no security-level

no ip address

!--- Output is suppressed.

!--- Permit inbound FTP control traffic.

access-list 100 extended permit tcp any host 192.168.1.5 eq ftp

!--- Object groups are created to define the hosts.

object network obj-172.16.1.5

host 172.16.1.5

!--- Object NAT is created to map FTP server with IP of Outside Subnet.

object network obj-172.16.1.5

nat (DMZ,Outside) static 192.168.1.5

access-group 100 in interface outside

class-map inspection_default

match default-inspection-traffic

!

!

policy-map type inspect dns preset_dns_map

parameters

message-length maximum 512

policy-map global_policy

class inspection_default

inspect dns preset_dns_map

inspect ftp

inspect h323 h225

inspect h323 ras

inspect netbios

inspect rsh

inspect rtsp

inspect skinny

inspect esmtp

inspect sqlnet

inspect sunrpc

inspect tftp

inspect sip

inspect xdmcp

!

!--- This command tells the device to

!--- use the "global_policy" policy-map on all interfaces.

service-policy global_policy global

prompt hostname context

Cryptochecksum:4b2f54134e685d11b274ee159e5ed009

: end

ASA(config)#

التحقق من الصحة

الاتصال:

Client in Outside Network running in Active Mode FTP:

ciscoasa(config)# sh conn

3 in use, 3 most used

TCP outside 192.168.1.15:55836 DMZ 172.16.1.5:21,     idle 0:00:00, bytes 470, flags UIOB

TCP outside 192.168.1.15:55837 DMZ 172.16.1.5:20, idle 0:00:00, bytes 225595694, flags UI <--- Dynamic Port channel

التقاط واجهة DMZ كما هو موضح في هذه الصورة.

التقاط الواجهة الخارجية كما هو موضح في هذه الصورة.

هنا، يقوم العميل بتشغيل عميل الوضع النشط 192.168.1.15 ويبدأ الاتصال بالخادم في DMZ على المنفذ 21. بعد ذلك، يرسل العميل أمر المنفذ بقيمة ستة أضعاف إلى الخادم للاتصال بذلك المنفذ الديناميكي المحدد. يقوم الخادم بعد ذلك ببدء اتصال البيانات بمنفذ المصدر ك 20.

السيناريو 4. عميل FTP الذي يشغل الوضع الخامل

العميل في الشبكة الخارجية من ASA والخادم في شبكة DMZ.

الرسم التخطيطي للشبكة

الاتصال

Client in Outside Network running in Passive Mode FTP:

ciscoasa(config)# sh conn

3 in use, 3 most used

TCP Outside 192.168.1.15:60071 DMZ 172.16.1.5:61781, idle 0:00:00, bytes 184718032, flags UOB <--- Dynamic channel Open

TCP Outside 192.168.1.15:60070 DMZ 172.16.1.5:21, idle 0:00:00, bytes 413,

flags UIOB

التقاط واجهة DMZ كما هو موضح في هذه الصورة.

التقاط الواجهة الخارجية كما هو موضح في هذه الصورة.

تكوين فحص تطبيق FTP الأساسي

بشكل افتراضي، يتضمن التكوين سياسة تطابق كل حركة مرور فحص التطبيق الافتراضية وتطبق الفحص على حركة المرور على جميع الواجهات (سياسة عامة). تتضمن حركة مرور فحص التطبيق الافتراضية حركة مرور البيانات إلى المنافذ الافتراضية لكل بروتوكول.

يمكنك تطبيق سياسة عامة واحدة فقط، لذلك إذا كنت تريد تغيير السياسة العامة، على سبيل المثال، لتطبيق فحص على منافذ غير قياسية، أو لإضافة عمليات فحص لم يتم تمكينها بشكل افتراضي، تحتاج إما إلى تحرير السياسة الافتراضية أو تعطيلها وتطبيق سياسة جديدة. للحصول على قائمة بجميع المنافذ الافتراضية، ارجع إلى سياسة التفتيش الافتراضية.

1. قم بتشغيل الأمر policy-map global_policy.

ASA(config)#policy-map global_policy

2. قم بتشغيل الأمر class inspection_default.

ASA(config-pmap)#class inspection_default

3. قم بتشغيل الأمر فحص FTP.

ASA(config-pmap-c)#inspect FTP

4. هناك خيار لاستخدام الأمر فحص FTP strict. يزيد هذا الأمر من أمان الشبكات المحمية بمنع متصفح الويب من إرسال أوامر مضمنة في طلبات FTP.
بعد تمكين الخيار المقيد على واجهة، يفرض فحص FTP هذا السلوك:

- يجب الاعتراف بأمر FTP قبل أن يسمح جهاز الأمان بأمر جديد

- يسقط جهاز الأمان اتصالا يرسل أوامر مضمنة

- يتم التحقق من أوامر 227 وport لضمان عدم ظهورها في سلسلة خطأ

تحذير: من الممكن أن يتسبب إستخدام الخيار المقيد في فشل عملاء FTP الذين لا يتفقون بشكل صارم مع FTP RFCs. راجع إستخدام الخيار المقيد للحصول على مزيد من المعلومات حول إستخدام الخيار المقيد.

تكوين فحص بروتوكول FTP على منفذ TCP غير القياسي

أنت يستطيع شكلت ال FTP بروتوكول تفتيش لمنافذ TCP غير قياسية مع هذا تشكيل خط (استبدلت XXXX مع الجديد ميناء رقم):

access-list ftp-list extended permit tcp any any eq XXXX

!

class-map ftp-class

match access-list ftp-list

!

policy-map global_policy

class ftp-class

inspect ftp

التحقق من الصحة

لضمان أن التكوين قد تم إتخاذه بنجاح، قم بتشغيل الأمر show service-policy. كما يمكنك تقييد الإخراج على فحص FTP من خلال تشغيل الأمر show service-policy inspection ftp.

ASA#show service-policy inspect ftp

Global Policy:

Service-policy: global_policy

Class-map: inspection_default

Inspect: ftp, packet 0, drop 0, reste-drop 0

ASA#

TFTP

يتم تمكين فحص TFTP بشكل افتراضي.

يقوم جهاز الأمان بفحص حركة مرور بيانات TFTP ويقوم بإنشاء الاتصالات والترجمات بشكل ديناميكي، إذا لزم الأمر، للسماح بنقل الملفات بين عميل TFTP والخادم. وعلى وجه الخصوص، يقوم محرك الفحص بفحص طلبات قراءة TFTP (RRQ) وطلبات الكتابة (WRQ) وإعلامات الخطأ (الخطأ).

يتم تخصيص قناة ثانوية ديناميكية وترجمة PAT، إذا لزم الأمر، على إستقبال RRQ أو WRQ صالح. وبعد ذلك يتم إستخدام هذه القناة الثانوية من قبل TFTP لنقل الملفات أو الإعلام بالأخطاء.

يمكن لخادم TFTP فقط بدء حركة مرور البيانات عبر القناة الثانوية، ويمكن أن توجد قناة ثانوية غير مكتملة واحدة على الأكثر بين عميل TFTP والخادم. يؤدي إعلام الخطأ من الخادم إلى إغلاق القناة الثانوية.

يجب تمكين فحص TFTP إذا تم إستخدام ضرب ثابت لإعادة توجيه حركة مرور TFTP.

تكوين فحص تطبيق TFTP الأساسي

بشكل افتراضي، يتضمن التكوين سياسة تطابق كل حركة مرور فحص التطبيق الافتراضية وتطبق الفحص على حركة المرور على جميع الواجهات (سياسة عامة). تتضمن حركة مرور فحص التطبيق الافتراضية حركة مرور البيانات إلى المنافذ الافتراضية لكل بروتوكول.

يمكنك تطبيق سياسة عمومية واحدة فقط. لذلك إذا كنت تريد تغيير السياسة العامة، على سبيل المثال، لتطبيق فحص على منافذ غير قياسية، أو لإضافة عمليات تفتيش غير ممكنة بشكل افتراضي، تحتاج إما لتحرير السياسة الافتراضية أو تعطيلها وتطبيق سياسة جديدة. للحصول على قائمة بجميع المنافذ الافتراضية، ارجع إلى سياسة التفتيش الافتراضية.

1. قم بتشغيل الأمر policy-map global_policy.

ASA(config)#policy-map global_policy

2. قم بتشغيل الأمر class inspection_default.

ASA(config-pmap)#class inspection_default

3. قم بتشغيل الأمر inspection TFTP.

ASA(config-pmap-c)#inspect TFTP

الرسم التخطيطي للشبكة

هنا العميل في يشكل في شبكة خارجية. يتم وضع خادم TFTP في شبكة DMZ. تم تعيين الخادم على شبكة IP 192.168.1.5 الموجودة في الشبكة الفرعية الخارجية.

مثال التكوين:

ASA(config)#show running-config

ASA Version 9.1(5)

!

hostname ASA

domain-name corp. com

enable password WwXYvtKrnjXqGbu1 encrypted

names

!

interface GigabitEthernet0/0

nameif Outside

security-level 0

ip address 192.168.1.2 255.255.255.0

!

interface GigabitEthernet0/1

nameif DMZ

security-level 50

ip address 172.16.1.12 255.255.255.0

!

interface GigabitEthernet0/2

shutdown

no nameif

security-level 100

ip address 10.1.1.1 255.255.255.0

!

interface GigabitEthernet0/3

shutdown

no nameif

no security-level

no ip address

!

interface Management0/0

management-only

shutdown

no nameif

no security-level

no ip address

!--- Output is suppressed.

!--- Permit inbound TFTP traffic.

access-list 100 extended permit udp any host 192.168.1.5 eq tftp

!

!--- Object groups are created to define the hosts.

object network obj-172.16.1.5

host 172.16.1.5

!--- Object NAT     to map TFTP server to IP in Outside Subnet.

object network obj-172.16.1.5

nat (DMZ,Outside) static 192.168.1.5

access-group 100 in interface outside

class-map inspection_default

match default-inspection-traffic

!

!

policy-map type inspect dns preset_dns_map

parameters

message-length maximum 512

policy-map global_policy

class inspection_default

inspect dns preset_dns_map

inspect ftp

inspect h323 h225

inspect h323 ras

inspect netbios

inspect rsh

inspect rtsp

inspect skinny

inspect esmtp

inspect sqlnet

inspect sunrpc

inspect tftp

inspect sip

inspect xdmcp

!

!--- This command tells the device to

!--- use the "global_policy" policy-map on all interfaces.

service-policy global_policy global

prompt hostname context

Cryptochecksum:4b2f54134e685d11b274ee159e5ed009

: end

ASA(config)#

التحقق من الصحة

لضمان أن التكوين قد تم إتخاذه بنجاح، قم بتشغيل الأمر show service-policy. كما يمكنك تقييد الإخراج على فحص TFTP فقط من خلال تشغيل الأمر show service-policy inspection tftp.

ASA#show service-policy inspect tftp

Global Policy:

Service-policy: global_policy

Class-map: inspection_default

Inspect: tftp, packet 0, drop 0, reste-drop 0

ASA#

استكشاف الأخطاء وإصلاحها

يوفر هذا القسم معلومات يمكنك إستخدامها لاستكشاف أخطاء التكوين وإصلاحها.

تطبيق Packet Tracer

العميل داخل الشبكة

FTP client Inside - Packet Tracer for Control Connection : Same Flow for Active and Passive.

# packet-tracer input inside tcp 172.16.1.5 12345 192.168.1.15 21 det

-----Omitted------

Phase: 5

Type: INSPECT

Subtype: inspect-ftp

Result: ALLOW

Config:

class-map inspection_default

match default-inspection-traffic

policy-map global_policy

class inspection_default

inspect ftp

service-policy global_policy global

Additional Information:

Forward Flow based lookup yields rule:

in id=0x76d9a120, priority=70, domain=inspect-ftp, deny=false

hits=2, user_data=0x76d99a30, cs_id=0x0, use_real_addr, flags=0x0, protocol=6

src ip/id=0.0.0.0, mask=0.0.0.0, port=0

dst ip/id=0.0.0.0, mask=0.0.0.0, port=21, dscp=0x0

input_ifc=inside, output_ifc=any

Phase: 6

Type: NAT

Subtype:

Result: ALLOW

Config:

object network obj-172.16.1.5

nat (inside,outside) static 192.168.1.5

Additional Information:

NAT divert to egress interface DMZ

translate 172.16.1.5/21 to 192.168.1.5/21

Phase: 7

Type: NAT

Subtype: rpf-check

Result: ALLOW

Config:

object network obj-172.16.1.5

nat (inside,outside) static 192.168.1.5

Additional Information:

Forward Flow based lookup yields rule:

out id=0x76d6e308, priority=6, domain=nat-reverse, deny=false

hits=15, user_data=0x76d9ef70, cs_id=0x0, use_real_addr, flags=0x0, protocol=0

src ip/id=0.0.0.0, mask=0.0.0.0, port=0

dst ip/id=172.16.1.5, mask=255.255.255.255, port=0, dscp=0x0

input_ifc=inside, output_ifc=outside

----Omitted----

Result:

input-interface: inside

input-status: up

input-line-status: up

output-interface: Outside

output-status: up

output-line-status: up

Action: allow

العميل في شبكة خارجية

FTP client Outside - Packet Tracer for Control Connection : Same Flow for Active and Passive

# packet-tracer input outside tcp 192.168.1.15 12345 192.168.1.5 21 det

Phase: 1

Type: UN-NAT

Subtype: static

Result: ALLOW

Config:

object network obj-172.16.1.5

nat (DMZ,outside) static 192.168.1.5

Additional Information:

NAT divert to egress interface DMZ

Untranslate 192.168.1.5/21 to 172.16.1.5/21

-----Omitted-----

Phase: 4

Type: INSPECT

Subtype: inspect-ftp

Result: ALLOW

Config:

class-map inspection_default

match default-inspection-traffic

policy-map global_policy

class inspection_default

inspect ftp

service-policy global_policy global

Additional Information:

Forward Flow based lookup yields rule:

in id=0x76d84700, priority=70, domain=inspect-ftp, deny=false

hits=17, user_data=0x76d84550, cs_id=0x0, use_real_addr, flags=0x0, protocol=6

src ip/id=0.0.0.0, mask=0.0.0.0, port=0

dst ip/id=0.0.0.0, mask=0.0.0.0, port=21, dscp=0x0

input_ifc=outside, output_ifc=any

Phase: 5

Type: NAT

Subtype: rpf-check

Result: ALLOW

Config:

object network obj-172.16.1.5

nat (DMZ,outside) static 192.168.1.5

Additional Information:

Forward Flow based lookup yields rule:

out id=0x76d6e308, priority=6, domain=nat-reverse, deny=false

hits=17, user_data=0x76d9ef70, cs_id=0x0, use_real_addr, flags=0x0, protocol=0

src ip/id=0.0.0.0, mask=0.0.0.0, port=0

dst ip/id=172.16.1.5, mask=255.255.255.255, port=0, dscp=0x0

input_ifc=outside, output_ifc=DMZ

----Omitted-----

Result:

input-interface: Outside

input-status: up

input-line-status: up

output-interface: DMZ

output-status: up

output-line-status: up

Action: allow

كما هو موضح في كل من متعقب الحزم، فإن حركة المرور تضرب تصريحات NAT الخاصة بهم ونهج فحص FTP. كما أنهم يتركون أيضا واجهات الاتصال المطلوبة.

أثناء أستكشاف الأخطاء وإصلاحها، يمكنك محاولة التقاط واجهات مدخل ومخرج ASA ومعرفة ما إذا كانت إعادة كتابة عنوان IP المضمن ASA تعمل بشكل صحيح والتحقق من الاتصال إذا كان يتم السماح بالمنفذ الديناميكي على ASA.