صفحه 1:
5 ATP 1 ۳ 3
ارائه دهنده:
پیمان مهدی پور
زير نظر استاد راهنما :
جناب آقاى حاجى ميرزا
3 ار و
صفحه 2:
Sa
20000
صفحه 3:
1
۳
كردد كه 002 تعداد اند کی از آنان آ rea ا
سازی شده اند . اینترنت نیز به عنوان یک شبکه گسترده از این قاعده
مستثنى نبوده و در أين رأبطه از يروتكل هاى متعددى استفاده مى شود.
براى بسيارى از كاربران اينترنت همه جيز محدود به وب و يروتكل
مرتبط با آن یعت le صورتی که در این عرصه از
پروتکل های م2 دیکری نب فاد می گردد. ۴1۳ نمونه ای در
این زمینه است .
صفحه 4:
ور الا ۱9
و خركت از سايتى به سايت تالكر است و شايد به همين دليل باشد كه
اينترنت در طى ساليان اخير به سرعت رشد و متداول شده است . بسيارى
از كارشناسان اين عرصه اعتقاد دارنداكه اينترنت كسترش و عموميت خود
ود ۲
--ص
| | ل ا ۱[
Ree er aC sy eRe cer cer) 0
ca ا ا ل 000950 02
تصويرى و ساير نمونه فايل هاي ديكر با استفاده از يروتكل 11 | (بركرفته
.cuul (File Transfer Protocol ;!
صفحه 5:
* پروتکل ۰۳۲۳ اولین تلاش آنجام شده برای ایجاد یک استاندارد به منظور
مبادله فایل بر روی شبکه های مبتنی بر پروتکل ۲0/۳/۱۳ است که از
اوايل سال 197١ مطرح و مشخصات استاندارد آن طى 959 81500 در
اكتبر سال ۱۹۸۵ ارائه گردید .
و ۱
منظور استفاده در شبکه های مختلف با توجه به نوع پروتکل شبکه است.
eats te eee ae |
Sareea S Sees irae a ae Se
ان ا رن cele)
eee es Mee ae eS nO hs ei oes
. دهندگان 1۳ ۳ وجود دارد
صفحه 6:
0200555 ير | Oona
ا ری( ee ys) vaya نياز مى Fil
I ee ee Re CINE) reel ne we Coe sng)
ل كت ered tLe ee)
شده أست:
_WS FTP Professional . 2
1 oil | nil: 0
صفحه 7:
۱ He LOSES
مر رب تب ولتت زر سرد
را سا IO) OE Dec ees
می نماید که سرویس گیرنده و سرویس دهنده. داده را بر روی کانال
۱ را
۳ Ie Oe ater a
ROMA Sule oo SIE oo),
های موجود در یک دایرکتوری نیز به عنوان یک ارسال فایل تلقی می
. گردد)
G ا را امكان استفاده از سيستم فايل را مشابه بوسته يونيكس و يا
ey et Bret الل ل CSN
صفحه 8:
PERTENECE YN OSTEO) Reed DEC
pres eek ۱ Pear conf al
0 ا را لوه ae we
برنامه های سرولاس كيرنده زمائ اقادر به شبيه سازى يك محیط تراکنشی می باشند
اسم 1 Fe) Oo RGM
از یک و یا چندین تراکنش است. Briel Pies 8 پروتگل
ai. See ل ores erence sity
Pree cre. كه با اسشقادة از دستورات أوليه 21 انجام مي كردد.
Ferree heh [Peer ا ا
FMAM MPN) a es
خواهد داد ( سه رقم كه به دنبال آن از 50366 استفاده شده اسث به همراه يك متن
عددى,نتيجه استناد نمايند OSs سل درو
جراكه متن تشريحى تغيير يذير بوده و در عمل براى اشكال زدائى مفيد است ( براى
. ) كاربران حرفه اى
صفحه 9:
ere . POC ne pears Bre er oa a rg
PCE ان onl epegrietees
رساند ) و a ارسال دستور ۵ ۲۷۳ .موضوع را به اطلاع سرویس
۳
گردد) ر ۳1[ داده با فرمت اسکی در مواردی که ماشین سرویس دهنده و
0 ty SO con BSE Yor)
مفيد بوده و يك سرويس كيرنده مى تواند يس از ی آن را به
فرمت مورد نظر خود ترجمه و استفاده كان در نسخه های ویندوز از
يك دنباله 1الاأع! 63111306 و 1©76©0! براى نشان دادن انتهاى
ل ا ا ل cca
صرفا" از یک 16]660]]] استفاده می شود . برای ارسال هرنوع داده که به
ترجمه نیاز نداشته بآشلهمی توان از ارسال باینری استفاده نمود.
صفحه 10:
* اتخاذ تصميم در رابطه با نوع ارسال فايل ها در اختيار سرويس كيرنده
Cae eer UINT sy = PC a are cope oer] 0
ارسالی on (aye 2
انتخا می نمایند و پس از دریافت فایل . ترجمه لازم را انجام خواهند
gS را rer)
دهنده و سرويس كيرنده نيازى به انجام تراكنش هاى إ1؟ ©6817 017
Oe eS Teese eNO cea ca
Sie rine سس«
بایست این موضوع را از سرویس دهنده درخواست نماید .
صفحه 11:
Pee | ا OL] | ag ل ل ا ل ا
مجزا مى باشد که هر نقطه از یک | IP eo و یک شماره پورت استفاده
ا الا ل ا ب ل 2
yee yur) ا ۱
ور Sets COIN سس رس دا
در زمان برقرارى يك ارتباط » سرويس كيرنده از يك شماره يورت
ere: . lb ot
برنامه سرویس گیرنده به صورت اختیاری و با اجباری باشد . مثلا"
ا ا الل ل ان
نيازمند استفاده از يك شماره يورت خاص مى باشند ( نظير برنامه هاى
سرويس كيرنده وب و يا مروركرهاى وب كه از يورت
صفحه 12:
* شماره ۸۰ به منظور ارتباط با سرویس دهنده وپ استفاده می نماید) .
در مواردى كه الزامى در خصوص شماره يورت وجود ندارد از يك شماره
يورت موقتى ويا 0106176121 »© استفاده مى كردد . اين نوع يورت
ها موقتى بوده و توسط >5]3601 | ماشين مربوطه به متقاضيان نسبت
داده شده و پس از خانمه ارتباط » يورت آزاد مى كردد . با توجه به اين
ور 0
(LL ots LroS POO! plas a5 ile; b ) 0,5 sinless 0200
كه سرويس كيرنده مجددا" درخواست برقرارى يك ارتباط را نمايد»
os ec nas) ا ل ا
صفحه 13:
° تال ۳1۳۲ منحصرا" Sty is) 182 د
Bere eee beny UDP ۹ 000 پروتکل های لایه
6081120 ( با توجه به مدل مرجع |05 ) از يكى از يروتكل
هاى B) od ery Wale )0 ساك ee نمایند ( به جزء پروتکل aii DNS
پروتکل ۳ lbs el > Eas سس وال زور
وظایث محوله از دو پورت استفاده مي نمایث ین پروتکل معمولا" از
Preys ok he
فرامین استفاده وی نمایت نو 9ته باشید که برای ارسال داده
CS |
Ry or) ver CCRT SC rege)
صفحه 14:
* اکثر سرویس دهندگان ۳۲۳ از روش خاصی برای رمزنگاری اطلاعات
onmer ten ا ار
ء اطلاعات مربوّط به نام و رم عبور کاربر به صورت متن معمولی در شبکه
ارسال مى كردد . افرادى كه داراى يك 51011661 ©2361 بين
ee so) (ot) ا ا ا ل للك
اقرح Prete Ey
Fee eet pre Sere NN ae iar) Speer ne CoS Ins x)
pen ا ل OF ONC MBL Sea NT
سرویس دهنده 1۳ ۴ مطرح می گردد ولی تا زمانی که رمزنگاری و امکانات
SEED SSE Om RCS eo Lane eT yee) ire eee
5 ).نمی بایست از 1۳ ۳ استفاده گردد خصوصا" اگر بر روی
sie i CLES زر
صفحه 15:
* همانند بسيارى از يروتكل اد ار داراى
ECS ا ا اا
اطلاعات لازم ذر خصوص وضعيت ارتباط ايجاد شده و يا درخواستى را ارائه
می نماید . زمانی که یک درخواست ۳۱۲ , 1عت) )برای یک سرویس
Pe al sete) ا 1
ل م 00[
Sore all I Oe ir peare nee ner ا 500
UN ا bemecerUI eres
a Ree) رح سر وضعيت
بركردانده شده رأ مى توان در ينج كروه متفاوت تقسيم نمود :
صفحه 16:
و
7 ۱
3XX clas 2
کدهای 406 :
7
باسخ اولي
درخواست بذوؤن خطاء اجراء كرديد .
به اطلاعات بشترى نياز است .
یک خطاء موقت ایجاد شده است .
ee ا ل
صفحه 17:
0 و
110
120
125
150
Restart reply
Service ready in x minutes
Connection currently open, transfer starting
File status okay, about to open data
صفحه 18:
ار الات
211
212
213
214
215
220
221
225
226
227
230
250
257
System status/help reply
Pyare meee)
Cy
ym 765530
NAME system type
BT a ea ۴
۲۵ ۶ ۵عووما 6۱0۴۰( ۵98۳۵۱ وطنعه 56۳۵
aac
retest Couto can ee
ل 8۵9۵65۲۵۵ :600ص 02۴2 وصنعها)
Entering Passive Mode
(eee mums
Requested file action okay, completed
A wiser
صفحه 19:
اس تلبت
Ree eee cue te
۳ Renal
PCO Rae) Cums
صفحه 20:
کدهای وضعیت سری 500
502
زر
504
530
532
550
552
553
rin paramet
.Command not implemented
0
.Command not implemented for that parameter
eee Erni
0
CUM UC CLC} غمم ممع نت ترا
و
۳
Requested action not taken. File name not allowed
صفحه 21:
مفهوم برخی از کدهای متداول
2777 eae
دى است بر اعلام حاير تت
الاستور تايب شده داراى خطاء كرامرى است و مى بايست مجددا" دستور تايب
8 se
PLO رات روت oon Sean
۳9
رمز عبور اشتباه باشد
0 " فایل مشخص شده در دستور امعتبز Bre
5
صفحه 22:
0 ا ل yore era alla
ا گانمتص و صرفنظر از نوع سرویسدهندم
لل ones) ال
خدماتخود از دو حا لتمتفىتلستفادم مئنمايد : ©1100 ©/1أأ8 و
مهمترينة فاوتبيزروشهاوفوقجايكام سرويس . 58355116 1/100
دهنده و با سرمیسگبرنده در لیجد و خاتمه یکارتباط لست
۲0۳/۱۴ همانگونه که در بشید رده . بکلتصا لپ روتکل
حاشدكههر نقطهان |i OE Orem)
۶ MAN Pepe st ۴ a يكاديسظاو!
0 ا ا ا الي Saad
av yore gree) res لطاهات لست آدیسسرمیس رههنده »پ ویتسروی
گیرنده و پورتسرهیسگیرنده . در زمان
صفحه 23:
seep) Sow |g تیا سح سا
شماره پورت می تواند متنا با نوع عملکرد برنامه سرویس گیرنده به صورت
م ا ا ا ا ل
اي ل ا ا ا 0000
te ا لا
با سرویس دهنده وب استفاده می نماید) . در مواردی که الزامی در خصوص شماره
cya ل ل 0 لات 22
MOS oe Ses ا 00
Peres CSM prey Finds lic ow eae npr Wen welts] ester gny Peevey
Rycantrsperereirrae ا ل (FUE کف
( تا زمانى كه تمام 0001] تكميل نشذه بأد ) »در صورتى كه سرويس كيرنده
مجددا" درخواست برقراری یک ارتباط را نماید . یک شماره پورت موقتی دیگر به وی
تخصیص داده می شود و
صفحه 24:
* يس از eCaee ل ل ل
STII) — ا ا 2 0
Active Mode
)010( الع ا ل 00
لدت و یک سرویس دهنده می باشد که عملکرد آن بر اساس فرایتد
Breen er)
صفحه 25:
و را كا لك ل ل 2 ال
می نماید . پورت ۲۱ er ا ل
می دهد تا از ا 2 ۳
گیرنده برای برقراری ارتباط با سرویس دهنده از یک پورت تصادفی و
موقتی ( بزرگتر از ever rang 0 يورت )16 ).
eet ond ا ا ل
Ce صدور دستور | 2011 به وى اطلاع مى دهد ( يورت
وگ
tS ل ل ات ا ا لي
شده سرویس ٩ ۱۱ رت ۳۳1 ) برقرار می نماید .
صفحه 26:
در فرآيند فوق » ارتباط توسط سرويس كيرنده آغاز و ياسخ به آن
eye Tey eerie sedan 1
گیرنده مشخص شده است ۰ انجام می شود . در صورتی که سرویس
ع را ۱۳۳0۱۱
ee nee ا ee
میزبان راه دور به سرویس گیرنده پیش بینی تا آنان بتوانند به هر پورت
Mtge yy an A Ie 9
است که پورت های اشاره شده بر روی ماشین سرویس
باشند . اين موضوع مى تواند تهديدات و جالش هاى امنيتى متعددى را
برای سرویس گیرندگان به دنبال داشته باشد .
<a>
صفحه 27:
PRT Sry لل ا
“BP. ۱۳ نیز گفته می شود از فرآیند زير استفاده می گردد :
ل Ge PS eRe ene
ارتباط اولية از طريق بورت كا سرويس كيرنده با يورت 1١ سرويس
دهنده أغاز مى كردد .
سرویس دهنده یک پورت را فعال ( ۷) و به سرویس گیرنده شماره
پورت را اعلام می نماید .
* در ادامه سرویس گیرنده یک اتصال از طریق پورت 1 ۴« با پورت /
سرویس دهنده برقرار می نماید .
صفحه 28:
۳ بر روی آدرس
3, bis JIP: 192. 168. 1. 25
برقرار
در فرايند فوق » سرويس كيرنده داراى نقش محورى است و فايروال موجود بر
er went sents)) ۱
را shay, تا ۱ PET
ee ee eet eee ens oe
تا را PAIS,
oS eee el ا ا ا لك
کش م ا ا RE
<a>
صفحه 29:
|08 CECE
ار رح ل
RRs Pe ا ا ا ammrer ty
نشاندهنده این موضوع است که فایروال و یا 2016۷/3۷) برای استفاده
row حاف را
صفحه 30:
در صورتى كه فايروال هاى موجود بر روى كامييوترهاى سرويس
Pol aha nel nen CCRC CY. 7
plSxu! Passive Mode jo . sul. ool! Mode
سیستم امنیتی در سمت سرویس دهنده و توسط فایروال مربوطه
CORE SIC Ree Ney porn ااا
Fe Se eae WM FIN A a ee Sean ey Py [PU UCT)
فوق . معمولا" توسط فایروال سرویس دهنده بلاک می گرد . در
جنين شرايطى امكان استفاده از ©1/1002 ©/0أ8355 وجود
نخواهد داشت .
صفحه 31:
۳
6 > ۳۵55۱۷ به دلایل متعددی به ۷006 ۸61۷6 ترجیح
داده مى شود؟
تعداد سرويس دهندكان موجود بر روى اينترنت به مراتب كمتر از
ا
ال ا Pe rere el 7 0
بتوانند از مجموعه پورت های محدود و تعریف شده ای با در نظر گرفتن
nN cows ۰
صفحه 32:
ع/اأووومط
7100 رانشان مى دهد .
صفحه 33:
XR Cre}
Server Outbound
Client Inbound
Client Outbound
۴۵55۱۷۰ 6
Server Inbound
Server Outbound
Client Inbound
Coad
from port 20 on the client on any port
< 4
اع را Peace ela
غمعناء مه 1024<
from any port >1024 to port 21 on
Rac
port 21 and any port >1024 from
اقلت سین واه با نت ات 001
<-4
port 21 and any port >1024 to
client/anywhere, to any port >1024
Return traffic, any port > 1024 from
server using any port >1024
صفحه 34:
* در صورتی که در زمان دریافت یک فایل با استفاده از پروتکل ۴۲۳
CERT SVR Ce egies =o pe or CE S| pee eam oe ی
كردد ٠ سرویس گیرنده می توآند با مشخص کردن یک 0۴۴56 از فایل
دريافتى به سرويس دهنده اعلام نمايد كه عمليات ارسال را از جائى كه
ارتباط قطع شده است . ادامه دهد ( سرويس كيرنده از محلى شروع به
دریافت فایل می نماید که ارتباط غیرفعال شده بود ) . استفاده از ویژگی
ل yee: CRee Ngee peer
صفحه 35:
۱ ere
53522020
صفحه 36:
عنوان ارائه :
آشنایی با پروتکل FTP
ارائه دهنده :
پیمان مهدی پور
زیر نظر استاد راهنما :
جناب آقای حاجی میرزا
بهار 86
آشنائی با پروتكل
FTP
آشنائی با پروتكل FTP
• امروزه از پروتكل های متعددی در شبكه های كامپيوتری استفاده می
گردد كه صرفا" تعداد اندكی از آنان به منظور انتقال داده طراحی و پياده
سازی شده اند .اينترنت نيز به عنوان يك شبكه گسترده از اين قاعده
مستثنی نبوده و در اين رابطه از پروتكل های متعددی استفاده می شود.
برای بسياری از كاربران اينترنت همه چيز محدود به وب و پروتكل
مرتبط با آن يعنی HTTPاست ،در صورتی كه در اين عرصه از
پروتكل های متعدد ديگری نيز استفاده می گردد FTP .نمونه ای در
اين زمينه است .
پروتكل FTPچيست ؟
• تصوير اوليه اينترنت در ذهن بسياری از كاربران ،استفاده از منابع اطالعاتی
و حركت از سايتی به سايت ديگر است و شايد به همين دليل باشد كه
اينترنت در طی ساليان اخير به سرعت رشد و متداول شده است .بسياری
از كارشناسان اين عرصه اعتقاد دارند كه اينترنت گسترش و عموميت خود
را مديون سرويس وب می باشد .
فرض كنيد كه سرويس وب را از اينترنت حذف نمائيم .برای بسياری از ما
اين سوال مطرح خواهد شد كه چه نوع استفاده ای را می توانيم از اينترنت
داشته باشيم ؟ در صورت تحقق چنين شرايطی ،يكی از عملياتی كه
كاربران قادر به انجام آن خواهند بود ،دريافت داده ،فايل های صوتی ،
تصويری و ساير نمونه فايل های ديگر با استفاده از پروتكل ( FTPبرگرفته
از ) File Transfer Protocolاست.
ويژگی های پروتكل FTP
• پروتكل ، FTPاولين تالش انجام شده برای ايجاد يك استاندارد به منظور
مبادله فايل بر روی شبكه های مبتنی بر پروتكل TCP/IPاست كه از
اوايل سال 1970مطرح و مشخصات استاندارد آن طی RFC 959در
اكتبر سال 1985ارائه گرديد .
• پروتكل FTPدارای حداكثر انعطاف الزم و در عين حال امكان پذير به
منظور استفاده در شبكه های مختلف با توجه به نوع پروتكل شبكه است.
• پروتكل FTPاز مدل سرويس گيرنده -سرويس دهنده تبعيت می نمايد .
برخالف HTTPكه يك حاكم مطلق در عرصه مرورگرهای وب و سرويس
دهندگان وب است ،نمی توان ادعای مشابهی را در رابطه با پروتكل FTP
داشت و هم اينك مجموعه ای گسترده از سرويس گيرندگان و سرويس
دهندگان FTPوجود دارد .
برای ارسال فايل با استفاده از پروتكل FTPبه يك سرويس گيرنده
FTPنياز می باشد .ويندوز دارای يك برنامه سرويس گيرنده FTPاز
قبل تعبيه شده می باشد ولی دارای محدوديت های مختص به خود می
باشد .در اين رابطه نرم افزارهای متعددی تاكنون طراحی و پياده سازی
شده است:
TP Ex
،WS FTP Professional ، ulletProof FTP
Smartنمونه هائی در اين زمينه می باشند.
plorer
و FTP
• پروتكل FTPرا می توان به عنوان يك سيستم پرس وجو نيز تلقی نمود
چراكه سرويس گيرندگان و سرويس دهندگان گفتگوی الزم به منظور تائيد
يكديگر و ارسال فايل را انجام می دهند .عالوه بر اين ،پروتكل فوق مشخص
می نمايد كه سرويس گيرنده و سرويس دهنده ،داده را بر روی كانال
گفتگو ارسال نمی نمايند .در مقابل ،سرويس گيرنده و سرويس دهنده در
خصوص نحوه ارسال فايل ها بر روی اتصاالت مجزا و جداگانه ( يك اتصال
برای هر ارسال داده ) با يكديگر گفتگو خواهند كرد ( نمايش ليست فايل
های موجود در يك دايركتوری نيز به عنوان يك ارسال فايل تلقی می گردد
).
• پروتكل FTPامكان استفاده از سيستم فايل را مشابه پوسته يونيكس و يا
خط دستور ويندوز در اختيار كاربران قرار می دهد .
• سرويس گيرنده در ابتدا يك پيام را برای سرويس دهنده ارسال و سرويس دهنده
نيز به آن پاسخ خواهد داد و در ادامه ارتباط غيرفعال می گردد .وضعيت فوق با
ساير پروتكل هائی كه به صورت تراكنشی كار می كنند ،متفاوت می باشد ( نظير
پروتكل . ) HTTPبرنامه های سرويس گيرنده زمانی قادر به شبيه سازی يك
محيط تراكنشی می باشند كه از مسائلی كه قرار است در آينده محقق شوند ،
آگاهی داشته باشند .در واقع ،پروتكل FTPيك دنباله statefulاز يك و يا
چندين تراكنش است.
• سرويس گيرندگان ،مسئوليت ايجاد و مقداردهی اوليه درخواست ها را برعهده
دارند كه با استفاده از دستورات اوليه FTPانجام می گردد .دستورات فوق ،
عموما" سه و يا چهار حرفی می باشند (مثال" برای تغيير دايركتوری از دستور
CWDاستفاده می شود ) .سرويس دهنده نيز بر اساس يك فرمت استاندارد به
سرويس گيرندگان پاسخ خواهد داد ( سه رقم كه به دنبال آن از space
استفاده شده است به همراه يك متن تشريحی ) .سرويس گيرندگان می بايست
صرفا" به كد عددی نتيجه استناد نمايند چراكه متن تشريحی تغيير پذير بوده و
در عمل برای اشكال زدائی مفيد است ( برای كاربران حرفه ای ) .
• پروتكل FTPدارای امكانات حمايتی الزم برای ارسال داده با نوع های
مختلف می باشد .دو فرمت متداول ،اسكی برای متن ( سرويس گيرنده با
ارسال دستور ، TYPE Aموضوع را به اطالع سرويس دهنده می رساند ) و
imageبرای داده های باينری است ( توسط TYPE Iمشخص می
گردد) .ارسال داده با فرمت اسكی در مواردی كه ماشين سرويس دهنده و
ماشين سرويس گيرنده از استانداردهای متفاوتی برای متن استفاده می نمايند
،مفيد بوده و يك سرويس گيرنده می تواند پس از دريافت داده آن را به
فرمت مورد نظر خود ترجمه و استفاده نمايد .مثال" در نسخه های ويندوز از
يك دنباله carriage returnو linefeedبرای نشان دادن انتهای
خط استفاده می گردد در صورتی كه در سيستم های مبتنی بر يونيكس
صرفا" از يك linefeedاستفاده می شود .برای ارسال هرنوع داده كه به
ترجمه نياز نداشته باشد،می توان از ارسال باينری استفاده نمود.
• اتخاذ تصميم در رابطه با نوع ارسال فايل ها در اختيار سرويس گيرنده
است ( برخالف HTTPكه می تواند به سرويس گيرنده نوع داده
ارسالی را اطالع دهد ) .معموال" سرويس گيرندگان ارسال باينری را
انتخاب می نمايند و پس از دريافت فايل ،ترجمه الزم را انجام خواهند
داد .ارسال باينری ذاتا" دارای كارآئی بيشتری است چراكه سرويس
دهنده و سرويس گيرنده نيازی به انجام تراكنش های on the fly
نخواهند داشت .ارسال اسكی گزينه پيش فرض انتخابی توسط پروتكل
FTPاست و در صورت نياز به ارسال باينری ،سرويس گيرنده می
بايست اين موضوع را از سرويس دهنده درخواست نمايد .
• يك اتصال پروتكل ( TCP/IPنسخه شماره چهار) شامل دو نقطه
مجزا می باشد كه هر نقطه از يك آدرس IPو يك شماره پورت استفاده
می نمايد .برقراری ارتباط بين يك سرويس گيرنده و يك سرويس
دهنده منوط به وجود چهار عنصر اطالعاتی است :آدرس سرويس دهنده
،پورت سرويس دهنده ،آدرس سرويس گيرنده و پورت سرويس گيرنده .
در زمان برقراری يك ارتباط ،سرويس گيرنده از يك شماره پورت
استفاده می نمايد .اين شماره پورت می تواند متناسب با نوع عملكرد
برنامه سرويس گيرنده به صورت اختياری و يا اجباری باشد .مثال"
برخی برنامه های سرويس گيرنده به منظور ارتباط با سرويس دهنده ،
نيازمند استفاده از يك شماره پورت خاص می باشند ( نظير برنامه های
سرويس گيرنده وب و يا مرورگرهای وب كه از پورت
• شماره 80به منظور ارتباط با سرويس دهنده وب استفاده می نمايد) .
در مواردی كه الزامی در خصوص شماره پورت وجود ندارد از يك شماره
پورت موقتی و يا ephemeralاستفاده می گردد .اين نوع پورت
ها موقتی بوده و توسط IP stackماشين مربوطه به متقاضيان نسبت
داده شده و پس از خاتمه ارتباط ،پورت آزاد می گردد .با توجه به اين
كه اكثر IP Stacksبالفاصله از پورت موقت آزاد شده استفاده
نخواهند كرد ( تا زمانی كه تمام poolتكميل نشده باشد ) ،در صورتی
كه سرويس گيرنده مجددا" درخواست برقراری يك ارتباط را نمايد ،
يك شماره پورت موقتی ديگر به وی تخصيص داده می شود .
• پروتكل FTPمنحصرا" از پروتكل TCPاستفاده می نمايد( هرگز از
پروتكل UDPاستفاده نمی شود) .معموال" پروتكل های اليه
( Applicationبا توجه به مدل مرجع ) OSIاز يكی از پروتكل
های TCPو يا UDPاستفاده می نمايند ( به جزء پروتكل . ) DNS
پروتكل FTPنيز از برخی جهات شرايط خاص خود را دارد و برای انجام
وظايف محوله از دو پورت استفاده می نمايد .اين پروتكل معموال" از
پورت شماره 20برای ارسال داده و از پورت 21برای گوش دادن به
فرامين استفاده می نمايد .توجه داشته باشيد كه برای ارسال داده
همواره از پورت 20استفاده نمی گردد و ممكن است در برخی موارد از
پورت های ديگر استفاده شود .
• اكثر سرويس دهندگان FTPاز روش خاصی برای رمزنگاری اطالعات
استفاده نمی نمايند و در زمان loginسرويس گيرنده به سرويس
دهنده ،اطالعات مربوط به نام و رمز عبور كاربر به صورت متن معمولی در
شبكه ارسال می گردد .افرادی كه دارای يك Packet snifferبين
سرويس گيرنده و سرويس دهنده می باشند ،می توانند به سادگی اقدام به
سرقت نام و رمز عبور نمايند .عالوه بر سرقت رمزهای عبور ،مهاجمان می
توانند تمامی مكالمات بر روی اتصاالت FTPرا شنود و محتويات داده های
ارسالی را مشاهده نمايند .پيشنهادات متعددی به منظور ايمن سازی
سرويس دهنده FTPمطرح می گردد ولی تا زمانی كه رمزنگاری و
امكانات حفاظتی در سطح اليه پروتكل IPاعمال نگردد ( مثال" رمزنگاری
توسط ، ) IPsecsنمی بايست از FTPاستفاده گردد خصوصا" اگر بر
روی شبكه اطالعات مهم و حياتی ارسال و يا دريافت می گردد .
• همانند بسياری از پروتكل های اليه ، Applicationپروتكل FTPدارای
كدهای وضعيت خطاء مختص به خود می باشد ( همانند ) HTTPكه
اطالعات الزم در خصوص وضعيت ارتباط ايجاد شده و يا درخواستی را ارائه
می نمايد .زمانی كه يك درخواست ( ) GET , PUTبرای يك سرويس
دهنده FTPارسال می گردد ،سرويس دهنده پاسخ خود را به صورت يك
رشته اعالم می نمايد .اولين خط اين رشته معموال" شامل نام سرويس دهنده
و نسخه نرم افزار FTPاست .در ادامه می توان دستورات GETو يا
PUTرا برای سرويس دهنده ارسال نمود .سرويس دهنده با ارائه يك پيام
وضعيت به درخواست سرويس گيرندگان پاسخ می دهد .كدهای وضعيت
برگردانده شده را می توان در پنج گروه متفاوت تقسيم نمود :
• كدهای : 1xxپاسخ اوليه
خطاء اجراء گرديد .
كدهای : 2xxدرخواست بدون
كدهای : 3xxبه اطالعات بشتری نياز است .
كدهای : 4xxيك خطاء موقت ايجاد شده است .
كدهای : 5xxيك خطاء دائمی ايجاد شده است .
متداولترين كدهای وضعيتFTP به همراه مفهوم
هريك در جدول زير نشان داده شده است:
100 كدهای وضعيت سری
Restart reply
110
Service ready in x minutes
120
Connection currently open, transfer starting
125
File status okay, about to open data
150
200 كدهای وضعيت سری
Command okay
200
Command not implemented, superfluous at this site
202
System status/help reply
211
Directory status
212
File status
213
System Help message
214
NAME system type
215
.Service ready for next user
220
Service closing control connection. Logged off where
appropriate
221
.Data connection open; no transfer in progress
225
Closing data connection. Requested action successful
226
Entering Passive Mode
227
User logged in, continue
230
Requested file action okay, completed
250
.PATHNAME" created"
257
300 كدهای وضعيت سری
.User name okay, need password
331
Need account for login
332
.Requested file action pending further information
350
400 كدهای وضعيت سری
.Service not available, closing control connection
421
Can't open data connection
425
.Connection closed; transfer aborted
426
..Requested file action not taken. File not available - busy etc
450
.Request aborted: error on server in processing
Requested action not taken. Insufficient resources on system
451
452
500 كدهای وضعيت سری
Syntax error, command unrecognized
500
.Syntax error in parameters or arguments
501
.Command not implemented
502
Bad sequence of commands
503
.Command not implemented for that parameter
504
.Not logged in
530
Need account for storing files
532
Requested action not taken. File unavailable
550
Requested file action aborted. Exceeded storage
allocation
552
Requested action not taken. File name not allowed
553
مفهوم برخی از كدهای متداول
226
دستور بدون هيچگونه خطائی اجراء گرديد .
230
زمانی اين كد نمايش داده می شود كه يك سرويس گيرنده رمز عبور خود را به
درستی درج و عمليات loginبا موفقيت انجام شده باشد .
231
كد فوق نشاندهنده دريافت usernameارسالی سرويس گيرنده توسط
سرويس دهنده می باشد و تائيدی است بر اعالم وصول ( Usernameنه
صحت آن ) .
530
عمليات loginبا موفقيت انجام نشده است .ممكن است Usernameو يا
رمز عبور اشتباه باشد .
501
دستور تايپ شده دارای خطاء گرامری است و می بايست مجددا" دستور تايپ
گردد .
550
فايل مشخص شده در دستور تايپ شده نامعتبر است .
• ، FTPيك پروتكل ارسال فايل است كه با استفاده از آن سرويس
گيرندگان می توانند به سرويس دهندگان متصل و صرفنظر از نوع سرويس
دهنده اقدام به دريافت و يا ارسال فايل نمايند .پروتكل FTPبه منظور
ارائه خدمات خود از دو حالت متفاوت استفاده می نمايد Active :
Modeو . Passive Modeمهمترين تفاوت بين روش های فوق
جايگاه سرويس دهنده و يا سرويس گيرنده در ايجاد و خاتمه يك ارتباط
است .
همانگونه كه در بخش اولاشاره گرديد ،يك اتصال پروتكل TCP/IP
( نسخه شماره چهار) شامل دو نقطه مجزا می باشد كه هر نقطه از يك
آدرس IPو يك شماره پورت استفاده می نمايد .برقراری ارتباط بين يك
سرويس گيرنده و يك سرويس دهنده منوط به وجود چهار عنصر اطالعاتی
است :آدرس سرويس دهنده ،پورت سرويس دهنده ،آدرس سرويس
گيرنده و پورت سرويس گيرنده .در زمان
• برقراری يك ارتباط ،سرويس گيرنده از يك شماره پورت استفاده می نمايد .اين
شماره پورت می تواند متناسب با نوع عملكرد برنامه سرويس گيرنده به صورت
اختياری و يا اجباری باشد .مثال" برخی برنامه های سرويس گيرنده به منظور
ارتباط با سرويس دهنده ،نيازمند استفاده از يك شماره پورت خاص می باشند
( نظير برنامه های سرويس گيرنده وب و يا مرورگرهای وب كه از پورت شماره 80به
منظور ارتباط با سرويس دهنده وب استفاده می نمايد) .در مواردی كه الزامی در
خصوص شماره پورت وجود ندارد از يك شماره پورت موقتی و يا
ephemeralاستفاده می گردد .اين نوع پورت ها موقتی بوده و توسط IP
stackماشين مربوطه به متقاضيان نسبت داده شده و پس از خاتمه ارتباط ،
پورت آزاد می گردد .با توجه به اين كه اكثر IP Stacksبالفاصله از پورت موقت
آزاد شده استفاده نخواهند كرد ( تا زمانی كه تمام poolتكميل نشده باشد ) ،در
صورتی كه سرويس گيرنده مجددا" درخواست برقراری يك ارتباط را نمايد ،يك
شماره پورت موقتی ديگر به وی تخصيص داده می شود .
• پس از اين مقدمه ،در ادامه به بررسی هر يك از روش های Activeو
Passiveدر پروتكل FTPخواهيم پرداخت .
Active Mode
، Active Modeروش سنتی ارتباط بين يك سرويس گيرنده
FTPو يك سرويس دهنده می باشد كه عملكرد آن بر اساس فرآيند
زير است :
• سرويس گيرنده يك ارتباط با پورت 21سرويس دهنده FTPبرقرار
می نمايد .پورت ، 21پورتی است كه سرويس دهنده به آن گوش فرا
می دهد تا از صدور فرامين آگاه و آنان را به ترتيب پاسخ دهد .سرويس
گيرنده برای برقراری ارتباط با سرويس دهنده از يك پورت تصادفی و
موقتی ( بزرگتر از ) 1024استفاده می نمايد( پورت .) x
• سرويس گيرنده شماره پورت الزم برای ارتباط سرويس دهنده با خود را
از طريق صدور دستور PORT N+1به وی اطالع می دهد ( پورت
) x+1
• سرويس دهنده يك ارتباط را از طريق پورت 20خود با پورت مشخص
شده سرويس گيرنده ( پورت ) x+1برقرار می نمايد .
لطفا" به من از طريق پورت 1931بر روی آدرس
IP: 192.168.1.2متصل و سپس داده را ارسال نمائيد .
تائيد دستور
سرويس
گيرنده
سرويس
دهنده
• در فرآيند فوق ،ارتباط توسط سرويس گيرنده آغاز و پاسخ به آن
توسط سرويس دهنده و از طريق پورت x+1كه توسط سرويس
گيرنده مشخص شده است ،انجام می شود .در صورتی كه سرويس
گيرنده از سيستم ها و دستگاه های امنيتی خاصی نظير فايروال استفاده
كرده باشد ،می بايست تهميدات الزم به منظور ارتباط كامپيوترهای
ميزبان راه دور به سرويس گيرنده پيش بينی تا آنان بتوانند به هر پورت
باالتر از 1024سرويس گيرنده دستيابی داشته باشند .بدين منظور الزم
است كه پورت های اشاره شده بر روی ماشين سرويس گيرنده open
می تواند تهديدات و چالش های امنيتی متعددی را
باشند .اين موضوع
برای سرويس گيرندگان به دنبال داشته باشد .
Passive Mode
•
•
•
•
•
در ، Passive Modeكه به آن " مديريت و يا اداره سرويس
گيرندگان "FTPنيز گفته می شود از فرآيند زير استفاده می گردد :
سرويس گيرنده دو پورت را فعال می نمايد ( پورت xو ) x+1
ارتباط اوليه از طريق پورت xسرويس گيرنده با پورت 21سرويس
دهنده آغاز می گردد .
سرويس دهنده يك پورت را فعال ( ) Yو به سرويس گيرنده شماره
پورت را اعالم می نمايد .
در ادامه سرويس گيرنده يك اتصال از طريق پورت x+1با پورت y
سرويس دهنده برقرار می نمايد .
لطفا" به من بگوئيد كه از كجا می توانم داده را دريافت نمايم
با من از طريق پورت 4023بر روی آدرس
IP: 192.168.1.25ارتباط برقرار نمائيد .
سرويس گيرنده
سرويس دهنده
• در فرآيند فوق ،سرويس گيرنده دارای نقش محوری است و فايروال موجود بر
روی سرويس گيرنده می تواند درخواست های دريافتی غيرمجاز به پورت های
باالتر از 1024را به منظور افزايش امنيت بالك نمايند .در صورتی كه بر
روی كامپيوترهای سرويس دهنده نيز فايروال نصب شده باشد ،می بايست
پيكربندی الزم به منظور استفاده از پورت های باالتر از 1024بر روی آن
آنجام و آنان openگردند .باز نمودن پورت های فوق بر روی سرويس
دهنده می تواند چالش های امنيتی خاصی را برای سرويس دهنده به دنبال
داشته باشد .
• متاسفانه تمامی سرويس گيرندگان FTPاز Passive Mode
حمايت نمی نمايند .اگر يك سرويس گيرنده بتواند به يك سرويس
دهنده loginنمايد ولی قادر به ارسال داده بر روی آن نباشد ،
نشاندهنده اين موضوع است كه فايروال و يا Gatewayبرای استفاده
از Passive Modeبه درستی پيكربندی نشده است .
مالحضات امنيتی
در صورتی كه فايروال های موجود بر روی كامپيوترهای سرويس
گيرنده به درستی پيكربندی نگردند ،آنان نمی توانند از Active
Modeاستفاده نمايند .در Passive Modeاستحكام
سيستم امنيتی در سمت سرويس دهنده و توسط فايروال مربوطه
انجام خواهد شد .بنابراين الزم است به سرويس دهنده اجازه داده
شود كه به اتصاالت هر پورت باالتر از 1024پاسخ دهد .ترافيك
فوق ،معموال" توسط فايروال سرويس دهنده بالك می گردد .در
چنين شرايطی امكان استفاده از Passive Modeوجود
نخواهد داشت .
Passive Modeو يا Active Mode؟
• با توجه به مستندات درج شده در ، RFC 1579استفاده از
Passive Modeبه داليل متعددی به Active Modeترجيح
داده می شود :
• تعداد سرويس دهندگان موجود بر روی اينترنت به مراتب كمتر از
سرويس گيرندگان می باشد .
• با استفاده از امكانات موجود می توان سرويس دهندگان را پيكربندی تا
بتوانند از مجموعه پورت های محدود و تعريف شده ای با در نظر گرفتن
مسائل امنيتی ،استفاده نمايند.
پيكربندی فايروال
• جدول زير پيكربندی فايروال در Active Modeو Passive
Modeرا نشان می دهد .
Active Mode
from any client port >1024 to port 21
on the server
Server Inbound
from port 20 on the client on any port
> 1024
Server Outbound
ports 20 from the server to any port
>1024 on client
Client Inbound
from any port >1024 to port 21 on
the server
Client Outbound
Passive Mode
port 21 and any port >1024 from
client/anywhere, from any port
>1024
Server Inbound
port 21 and any port >1024 to
client/anywhere, to any port >1024
Server Outbound
Return traffic, any port > 1024 from
server using any port >1024
Client Inbound
و اما يك نكته ديگر در رابطه با پروتكل ! FTP
• در صورتی كه در زمان دريافت يك فايل با استفاده از پروتكل FTP
مشكالت خاصی ايجاد كه منجر به قطع ارتباط با سرويس دهنده FTP
گردد ،سرويس گيرنده می تواند با مشخص كردن يك offsetاز فايل
دريافتی به سرويس دهنده اعالم نمايد كه عمليات ارسال را از جائی كه
ارتباط قطع شده است ،ادامه دهد ( سرويس گيرنده از محلی شروع به
دريافت فايل می نمايد كه ارتباط غيرفعال شده بود ) .استفاده از ويژگی
فوق به امكانات سرويس دهنده FTPبستگی دارد
با تشكر از شما دوستان كه حوصله به خرج داده و
اينجانب را همراهي نموديد .
پايان