جدول محتوایی

FTP روش استاندارد برای انتقال فایل‌ها یا سایر داده‌ها بین رایانه‌ها است، اما در محیط امنیتی امروزی روز به روز منسوخ می‌شود. خوشبختانه، اینجا جایی است که SFTP وارد می شود، که به ویژه برای کاربران میزبان VPS مفید است.

خرید سرور مجازی و هاست وردپرس

در این راهنما، ما قصد داریم نحوه استفاده از SFTP برای انتقال امن فایل را نشان دهیم، در مورد برخی از دستورات مفید دیگر صحبت کنیم و در مورد نحوه عملکرد آن بیشتر توضیح دهیم.

بخوانید: بهترین نرم افزار FTP رایگان برای ویندوز، مک و لینوکس

چگونه با استفاده از SFTP متصل شویم؟

SFTP زیرسیستم SSH است. از این رو، از تمام روش های احراز هویت SSH پشتیبانی می کند. در حالی که تنظیم و استفاده از احراز هویت رمز عبور آسان‌تر است، ایجاد کلیدهای SSH برای ورود به سیستم SFTP بدون رمز عبور بسیار راحت‌تر و ایمن‌تر است.

می توانید این آموزش را در مورد نحوه تنظیم کلیدهای SSH خود بررسی کنید. پس از آماده شدن، مراحل زیر را برای اتصال با SFTP دنبال کنید:

  1. دسترسی SSH خود را با استفاده از یکی از این دستورات بررسی کنید
  2. پس از انجام این کار، اگر خطایی رخ نداد، جلسه را ترک کنید.
  3. یک اتصال SFTP را با دستورات زیر شروع کنید:
  4. اگر از یک پورت SSH سفارشی استفاده می کنید، از یکی از این دستورات برای تغییر پورت SFTP استفاده کنید:
  5. در اینجا چگونه باید به نظر برسد

پس از اتصال، یک اعلان SFTP را مشاهده خواهید کرد.

چگونه با استفاده از SFTP فایل ها را انتقال دهیم؟

در اینجا قصد داریم نحوه انتقال فایل های راه دور به سیستم محلی با استفاده از SFTP و بالعکس را به شما نشان دهیم.

نکته

همچنین می توانید فایل های خود را با استفاده از کلاینت های SFTP مانند WinSCP یا FileZilla انتقال دهید. اگر به دومی علاقه دارید، آموزش ما را در اینجا بررسی کنید.

انتقال فایل های راه دور از یک سرور به سیستم محلی

برای شروع، بیایید بررسی کنیم که از کدام دایرکتوری کاری محلی و از کدام راه دور استفاده می کنیم. برای انجام این کار، از این دستورات SFTP استفاده می کنیم:

sftp> lpwd
Local directory: /LocalDirectory
sftp> pwd
Remote directory: /RemoteDirectory

اکنون، بیایید ببینیم چگونه با استفاده از دستور get یک فایل را از یک سرور راه دور به دستگاه محلی خود منتقل کنیم. در اینجا نحو اصلی دستور get آمده است:

get /RemoteDirectory/filename.txt

به عنوان مثال، برای کپی کردن فایل /etc/xinetd.conf از سرور راه دور در ماشین محلی خود، باید از:

get /etc/xinetd.conf

پس از تکمیل دانلود، اکنون می توانید متوجه شوید که فایل xinetd.conf در پوشه /user/home دستگاه محلی شما قرار دارد.

برای دانلود چندین فایل با SFTP از دستور mget استفاده کنید. برای دانلود تمام فایل‌های موجود در دایرکتوری به نام /etc که دارای پسوند .conf در دایرکتوری فعلی شما هستند، از دستور زیر استفاده می‌کنید:

mget /etc/*.conf

پس از دانلود، می توانید تمام فایل های *.conf را در فهرست /user/home دستگاه محلی خود پیدا کنید.

انتقال فایل ها از ماشین محلی به یک سرور راه دور

برای کپی کردن یک فایل از ماشین محلی به سرور راه دور، از دستور get دوباره استفاده می کنیم. در این حالت، نحو دستور get به صورت زیر خواهد بود:

get file.txt /RemoteDirectory

برای انتقال فایل example.txt از یک ماشین محلی به ماشین راه دور، دستور زیر را وارد کنید:

put /home/user-name/example.txt /root

اکنون فایل را در دایرکتوری ریشه سرور راه دور پیدا خواهیم کرد. همچنین می توانید با استفاده از دستور mput چندین فایل را انتقال دهید. تقریباً مانند mget عمل می کند:

mput /home/user-name/*.txt /root

این دستور همه فایل‌های با پسوند txt را در /home/user-name از ماشین محلی به دایرکتوری ریشه / از راه دور منتقل می‌کند.

نکته: در نظر داشته باشید که برای دانلود و آپلود فایل ها با SFTP باید دستور put یا get را تایپ کرده و کلید TAB را فشار دهید.

دستورات جهت یابی با SFTP

برخی از دستورات را می توان برای پیمایش در میان سرورهای راه دور و محلی به طور موثرتر با SFTP استفاده کرد. آنها شبیه به مواردی هستند که در اعلان پوسته لینوکس استفاده می کنید.

برای مثال، دستور pwd همیشه مفید است تا به شما اطلاع دهد که در حال حاضر در کدام دایرکتوری فعال هستید.

sftp> pwd
Remote directory: /RemoteDirectory

یا

sftp> lpwd
Local directory: /LocalDirectory

همچنین می‌توانید فهرست فایل‌ها و دایرکتوری‌هایی را که برای دایرکتوری راه دور استفاده می‌کنید نمایش دهید:

ls

به طور مشابه، برای فهرست کاری محلی:

lls

به عنوان مثال، خروجی شبیه به این خواهد بود:

Pictures     Templates     Media     Text.txt     Documents

برای جابجایی از یک دایرکتوری کاری راه دور به فهرست کاری محلی دیگر، دستورات زیر را وارد کنید:

cd name_of_directory
lcd name_of_directory

در نهایت، از ! و از دستورات خارج شوید تا به پوسته محلی برگردید و از SFTP خارج شوید

مبانی نگهداری فایل با استفاده از SFTP

با SFTP، می توانید دایرکتوری ها و فایل ها را با استفاده از دستورات خاص مدیریت کنید.

برای بررسی فضای دیسک سرور راه دور در گیگابایت، از تابع df مانند زیر استفاده کنید:

df -h

در اینجا یک نمونه خروجی آورده شده است:

Filesystem         Size  Used Avail Use% Mounted on
/dev/ploop29212p1   59G  2.5G   56G   5% /
none               1.5G     0  1.5G   0% /sys/fs/cgroup
none               1.5G     0  1.5G   0% /dev
tmpfs              1.5G     0  1.5G   0% /dev/shm
tmpfs              1.5G  568K  1.5G   1% /run
tmpfs              308M     0  308M   0% /run/user/0

از دستور mkdir برای ایجاد یک دایرکتوری جدید در سرور راه دور و محلی استفاده کنید:

mkdir name_of_directory
lmkdir name_of_directory

می توانید با استفاده از دستور rmdir یکی را از سرور راه دور حذف کنید:

rmdir name_of_directory

در همین حال، تغییر نام یک فایل راه دور نیز بسیار ساده است:

rename filename new_filename

در اینجا یک مثال است:

rename Old_FileExample New_FileExample

اگر می خواهید یک فایل راه دور را حذف کنید، از دستور rm استفاده کنید:

rm filename

در حالی که دستور chown برای جایگزینی مالک فایل استفاده می شود:

chown userid filename

userid می تواند یک نام کاربری یا یک شناسه کاربری عددی باشد. برای مثال:

chown UserOne FileExample
chown 1234 FileExample

chgrp برای تغییر مالک گروه یک فایل استفاده می شود:

chgrp groupid filename

برای مثال:

chgrp NewGroup FileExample

در نهایت، باید از دستور chmod interactive برای تغییر مجوز یک فایل استفاده کنید:

chmod 764 FileExample

در این مثال، مقدار سه رقمی مربوط به کاربر، گروه و سایر کاربران فایل است

در مورد مجوزهای خواندن (r)، نوشتن (w) و اجرای (x)، مقادیر آنها به ترتیب 4، 2، 1 است. 0 همچنین می تواند برای ارائه بدون مجوز استفاده شود.

برای تخصیص مجوزها، به سادگی کل مقادیر را برای هر کلاس کاربر محاسبه کنید. در اینجا خلاصه ای از مثال آمده است:

chmod ugo FileExample
# u represents the User who'll be able to read, write and execute the file.
# g is for Groups, here we've given the permission to write and execute the file.
# o or Others will only be able to read the file.

فهرست دستورات مفید SFTP

اگر به یک برگه تقلب سریع نیاز دارید، در اینجا لیستی از تمام دستورات SFTP موجود است. شما می توانید این لیست را خودتان با وارد کردن راهنما یا ? فرمان – هر دو نتیجه یکسانی را نشان خواهند داد.

bye                                Quit sftp
cd path                            Change remote directory to 'path'
chgrp [-h] grp path                Change group of file 'path' to 'grp'
chmod [-h] mode path               Change permissions of file 'path' to 'mode'
chown [-h] own path                Change owner of file 'path' to 'own'
df [-hi] [path]                    Display statistics for current directory or
                                   filesystem containing 'path'
exit                               Quit sftp
get [-afpR] remote [local]         Download file
help                               Display this help text
lcd path                           Change local directory to 'path'
lls [ls-options [path]]            Display local directory listing
lmkdir path                        Create local directory
ln [-s] oldpath newpath            Link remote file (-s for symlink)
lpwd                               Print local working directory
ls [-1afhlnrSt] [path]             Display remote directory listing
lumask umask                       Set local umask to 'umask'
mkdir path                         Create remote directory
progress                           Toggle display of progress meter
put [-afpR] local [remote]         Upload file
pwd                                Display remote working directory
quit                               Quit sftp
reget [-fpR] remote [local]        Resume download file
rename oldpath newpath             Rename remote file
reput [-fpR] local [remote]        Resume upload file
rm path                            Delete remote file
rmdir path                         Remove remote directory
symlink oldpath newpath            Symlink remote file
version                            Show SFTP version
!command                           Execute 'command' in local shell
!                                  Escape to local shell

 

SFTP چیست؟

SFTP یا به اختصار پروتکل انتقال فایل SSH، راه بسیار امن تری برای انتقال فایل ها است. با استفاده از پروتکل SSH، از رمزگذاری و سایر روش های امنیتی که برای محافظت بهتر از انتقال فایل استفاده می شود، پشتیبانی می کند. این تنها پروتکل امن انتقال فایل است که در برابر حملات در هر نقطه از فرآیند انتقال داده محافظت می کند و آن را به پروتکل ترجیحی تبدیل می کند.

در حین انتقال فایل، تمام داده ها به بسته ها تقسیم می شوند و از طریق یک اتصال امن ارسال می شوند.

اطلاعات حساس هنگام انتقال بین سرویس گیرنده و سرور، رمزگذاری شده و غیرقابل خواندن خواهد شد. به عبارت دیگر، محتوای اصلی (متن ساده) با یک رشته نامنسجم از کاراکترها (متن رمز) جایگزین می شود.

فقط گیرنده ای که کلید رمزگشایی لازم را داشته باشد می تواند محتوای اصلی را ببیند. این از هرگونه دسترسی غیرمجاز در حین انتقال فایل جلوگیری می کند.

پروتکل انتقال فایل معمولی (FTP) دارای دو کانال مختلف برای تبادل داده است – کانال فرمان و کانال داده. در مقابل، SFTP تنها یک کانال رمزگذاری شده دارد که در آن داده ها در بسته های رمزگذاری شده و فرمت شده مبادله می شوند.

4رای - امتیاز 5 ممنون از امتیازی که دادید..!

دسته بندی شده در: