دو روش رایج و ایمن جهت انتقال اطلاعات بین دو کامپیوتر SSH و TLS هستند که هر دو پروتکل استانداردی برای مباله رمز شده اطلاعات است، هدف آن ها انتقال امن داده ها و تامین امنیت در سراسر شبکه بخصوص اینترنت می باشد. فنآوری استفادهشده در هر دو پروتکل بسیار مطمئن است و در صورتیکه بدرستی پیکربندی شده باشند، تقریبا نفوذ هکرها غیرممکن می شود و درحالیکه خدمات مشابه ای ارائه می دهند، تفاوت های قابل توجهی با هم نیز دارند که فراتر از مبحث این مقاله است.
امروزه سرویس ssh(open ssh) در سیستم عامل های unix مثل Mac OS و لینوکس بصورت پیش فرض فعال می باشد. بنابرین، برنامه ها یا زیرسیستم هایی که مبتنی بر پروتکل SSH هستند، بدون نیاز به مراحل مازادی مانند خرید یا ایجاد گواهینامه SSL مورد نیاز برای حالت های خاصی از انتقال امن داده ها از طریقTLS/SSL، کار خواهند کرد.
جهت آپلود و دانلود اطلاعات بین دو سیستم، بطور کلی 4 گزینه زیر قابل انتخاب می باشند:
1- FTP پروتکل انتقال فایل
2- SCP برنامه کپی امن
3- SFTP پروتکل امن انتقال فایل
4- FTPS پروتکل انتقال فایل بر روی TLS/SSL
بیشتر بخوانید: ساخت اکانت ftp در دایرکت ادمین با آموزش ویدئویی
Ftp نا امن
در میان گزینه های مختلف انتقال فایل ذکر شده، شما نباید هرگز از طریق Ftp به سرور متصل شوید. استفاده از SCP و SFtp علاوه بر سادگی، امنیت بیشتری را تامین میکند. در حالیکه استفاده از Ftp نیاز به نصب نرم افزارهای جانبی مانند VsFTP یا ProFtp دارد، SCP و SFtp هر دو از طریقSSH ، بدون نیاز به نصب نرم افزار در سیستم عامل های لینوکس و یونیکس قابل استفاده می باشند.
تفاوت SCP و SFtp
با توجه به اینکه هر دو روش از طریق SSH جهت انتقال اطلاعات به کامپیوتر دیگری مورد استفاده قرار می گیرند از امنیت نسبتاّ برابری برخوردار می باشند اما کارائی SFtp بدلیل اینکه در صورت انتقال فایل با SFtp اگر اتصال بهردلیل قطع شود، امکان ادامه روند انتقال فایل وجود ندارد و انتقال فایل لازم است مجدد انجام شود، کمتر است.
تفاوت SFtp و Ftps
SFtp و Ftps دو روش متناقض و با مکانیرم متفاوت می باشند که بدلیل تشابه نام ممکن است با هم اشتباه گرفته شوند که صحیح نمی باشد. Ftps می تواند امینت برابری با SFtp داشته باشد اما Ftps در صورتیکه گواهی SSL نداشته باشید نیاز به تنظیمات مازادی دارد.
درصورتیکه در حال جستجو بهترین روش مدیریت و انتقال فایل ها از هاست کنونی یا سیستم شخصی تان به سرور اختصاصی/ مجازی خود می باشید و از استفاده دستورات در خط فرمان می ترسید، شما می توانید از نرم افزار filezilla که دارای رابط گرافیکی کاربرپسندی نیز می باشد جهت انتقال فایل ها به سرور و بلعکس استفاده کنید. در بخش بعدی به چگونگی انتقال امن فایل ها با این نرم افزار می پردازیم.
انتقال اطلاعات با فایل زیلا (Filezilla)
در بخش قبل انتقال امن اطلاعات و روش های مختلفی که در رابطه با این موضوع وجود دارد تشریح شد و همانطور که ذکر شد یکی از روش هایی که از امنیت بالایی برای انتقال فایل ها در سیستم عامل های لینوکس و ویندوز برخوردار است، پروتکل امن انتقال فایل SFTP می باشد.
نرم افزارهای متعددی مانند Cyberduck ,Filezilla, یا WinSCP که از SFtp پشتیانی می کنند، وجود دارد که ما در این مقاله نحوه عملکرد در نرم افزار Filezilla را که بصورت رایگان و سازگار با سیستم عامل های ویندوز، لینوکس و Mac OS می باشد را شرح می دهیم.
نیاز به احراز هویت
در هنگام اتصال با SFtp دو گزینه احراز هویت برای اتصال به سرور وجود دارد:
– رمز عبور
– SSH Key
SSH Key نسبت به احراز هویت با رمز عبور از مزایای بیشتری برخوردار است. در مورد مزایای این روش و دستورالعمل چگونگی تنظیم ورود به سرور بدون نیاز به پسورد به لینک https://goo.gl/pZRN3x مراجعه کنید.
احراز هویت مبتنی برکلید ssh2 از طریق sftp
Filezilla دارای صفحه تنظیماتی میباشد که می توانید کلید عمومی SSH را ذخیره نموده و پس از آن بصورت امن و خودکار به سرور متصل شوید.
پیشنیاز
جهت ایجاد SSH key با توجه به نوع سیستم عامل به آموزش مرتبط مراجعه کنید:
کاربران ویندوز: روش ایجاد SSH key با putty برای اتصال به vps لینک https://goo.gl/NAwMXw را مشاهده کنید
کاربران لینوکس: چگونگی تنظیم SSH key را در لینک https://goo.gl/475wy4 مشاهده کنید.
مطابق راهنمای زیر با داشتن SSH key می توانید بصورت امن به سرورتان متصل و انتقال فایل را انجام دهید:
نرم افزار filezilla را باز کنید.
از منو بالای صفحه، از قسمت Edit گزینه setting را انتخاب کنید.
در منو سمت چپ از زیر شاخه connection a ftp گزینه SFTP مشخص شده در تصویر را انتخاب کنید.
بر روی دکمه Add keyfile کلیک نموده و مسیر فایل private key را که در سیستمتان ذخیره نموده اید را مشخص کنید.
سپس از منو File گزینه Site Manager را انتخاب کنید.
بر روی دکمه New Site کلیک کنید و نام دلخواه را درج کنید.
فیلدهای مختلف بخش General را نیز مطابق راهنمای زیر وارد کنید.
در قسمت Host آدرس ftp server را درج نمائید.
در قسمت port پورت اتصال sftp را درج نمائید، بصورت پیش فرض پورت 22 استفاده می شود.
در قسمت porotocol گزینه SFTP – SSH File Transfer Protocol را انتخاب کنید.
در قسمت Logon Type نوع ورود را Interactive انتخاب کنید.
نکته: برای کاربران putty با عبارت عبور- کلید عمومی محافظت شده، درصورتیکه فایل اصلی .ppk با پسورد محافظت شده است، filezilla آن را هنگام وارد کردن کلید به غیر محافظت شده تبدیل می کند
از وژن 3.0.10 به بعد فایل کلید محافظت شده با پسورد هنوز پشتیبانی نمی شود.
درصورتیکه فایل کلید پسورد محافظت شده مورد نیاز است، filezilla قادر به استفاده از ابزار PuTTY’s Pageant میباشد.
Pageant را اجرا کنید.
بر روی آیکن راست کلیک کنید و Add Key را انتخاب و سپس فایل کلید خصوصیتان (.ppk) را انتخاب کنید.
سپس رمز عبورتان را وارد کنید.
Filezilla را راه انداری نموده و با استفاده از SSH2 از طریق SFTP با نام کاربری و رمز عبور خالی به سرورتان متصل شوید. (حتما بیاد داشته باشید پس از اتمام کار Pageant را ببندید)
ویرایش فایل متنی
در مدیریت سرور مجازی تان شما ناگزیر هستید فایل های متنی برنامه نویسی را ویرایش کنید، نرم افزار Filezilla یک ویرایشگر متن در خودش ندارد اما شما می توانید در تنظیمات آن مطابق زیر تعیین کنید که فایل ها با چه ویرایشگر متنی بصورت پیشفرض باز شده و بتوانید آن را ویرایش کنید.
از منو بالای صفحه، از قسمت Edit گزینه setting را انتخاب کنید.
از منوی سمت چپ گزینه File editing را انتخاب کنید.
Use custom Editor را انتخاب و با کلیک بر روی دکمه Browse مسیر فایلexe ویرایشگر متنی مورد نظر بر روی سیستمتان را تعیین کنید.