نماد سایت وبلاگ شتابان هاست

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

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

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

دستور SCP (کپی امن) یک ابزار خط فرمان است که به شما امکان می دهد به طور ایمن فایل ها و دایرکتوری ها را بین دو مکان کپی کنید.

هنگام انتقال داده‌ها با scp، هم فایل‌ها و هم رمز عبور رمزگذاری می‌شوند تا هر کسی که در ترافیک جاسوسی می‌کند چیز حساسی دریافت نکند.SCP از پروتکل SSH برای احراز هویت و رمزگذاری استفاده می کند.

این آموزش نحوه استفاده از دستور scp را از طریق مثال های عملی و توضیحات مفصل در مورد رایج ترین گزینه های scp نشان می دهد.

نحو دستور SCP

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

scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2

OPTION – گزینه های scp مانند رمز، پیکربندی ssh، پورت ssh، محدودیت، کپی بازگشتی … و غیره.

[user@]SRC_HOST:]file1 – مسیر فایل منبع.نام کاربر در ماشین منبع و نام میزبان (یا آدرس IP) ماشین منبع زمانی استفاده می شود که فایل در یک ماشین راه دور قرار دارد.

[user@]DEST_HOST:]:file2 – مسیر فایل مقصد.نام کاربر در ماشین مقصد و نام میزبان (یا آدرس IP) ماشین مقصد زمانی که فایل در یک ماشین راه دور قرار دارد استفاده می شود.

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

scp تعدادی گزینه را ارائه می دهد که هر جنبه ای از رفتار آن را کنترل می کند.پرکاربردترین گزینه ها عبارتند از:

– پورت ssh میزبان راه دور را مشخص می کند.

– حفظ تغییر فایل و زمان دسترسی.

– اگر می خواهید پیغام های پیشرفت سنج و پیام های بدون خطا را سرکوب کنید از این گزینه استفاده کنید.

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

– این گزینه به scp می گوید که دایرکتوری ها را به صورت بازگشتی کپی کند.

 

قبل از اینکه شروع کنی

دستور scp برای انتقال داده به ssh متکی است، بنابراین برای احراز هویت در سیستم های راه دور به یک کلید ssh یا رمز عبور نیاز دارد.

کولون (:) نحوه تمایز scp بین مکان های محلی و راه دور است.

برای اینکه بتوانید فایل ها را کپی کنید، باید حداقل مجوز خواندن در فایل منبع و مجوز نوشتن در سیستم مورد نظر داشته باشید.

مراقب باشید هنگام کپی کردن فایل هایی که نام و مکان یکسانی در هر دو سیستم دارند، scp فایل ها را بدون هشدار بازنویسی می کند.

هنگام انتقال فایل های حجیم، توصیه می شود دستور scp را در یک صفحه نمایش یا جلسه tmux اجرا کنید.

کپی فایل ها و دایرکتوری ها بین دو سیستم با scp

با scp، می توانید یک فایل یا دایرکتوری را کپی کنید:

از سیستم محلی شما به یک سیستم راه دور.

از یک سیستم راه دور تا سیستم محلی شما.

بین دو سیستم راه دور از سیستم محلی شما.

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

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

scp file.txt remote_username@10.10.0.2:/remote/directory

جایی که file.txt نام فایلی است که می خواهیم کپی کنیم، remote_username کاربر روی سرور راه دور است، ۱۰٫۱۰٫۰٫۲ آدرس IP سرور است.

دایرکتوری /remote مسیری به دایرکتوری است که می خواهید فایل را در آن کپی کنید.اگر دایرکتوری راه دور را مشخص نکنید، فایل در فهرست اصلی کاربر راه دور کپی می شود.

از شما خواسته می شود رمز عبور کاربر را وارد کنید و فرآیند انتقال شروع می شود.

remote_username@10.10.0.2’s password:
file.txt 100% 0 0.0KB/s 00:00

حذف نام فایل از محل مقصد، فایل را با نام اصلی کپی می کند.اگر می خواهید فایل را با نام دیگری ذخیره کنید، باید نام فایل جدید را مشخص کنید:

scp file.txt remote_username@10.10.0.2:/remote/directory/newfilename.txt

اگر SSH در هاست راه دور به پورتی غیر از ۲۲ پیش فرض گوش می دهد، می توانید پورت را با استفاده از آرگومان -P مشخص کنید:

scp -P 2322 file.txt remote_username@10.10.0.2:/remote/directory

برای کپی کردن یک دایرکتوری و تمام فایل های آن، دستور scp را با پرچم -r فراخوانی کنید، که به صورت بازگشتی کل دایرکتوری و محتویات آن را کپی می کند:

scp -r /local/directory remote_username@10.10.0.2:/remote/directory

هنگام استفاده از حروف عام مانند * یا ? برای مطابقت با فایل‌ها یا دایرکتوری‌های خاص، برای جلوگیری از گسترش پوسته، باید مسیری را که شامل کاراکترهای عام در گیومه (” “) یا تک نقل قول (” “) باشد، محصور کنید.

در مثال زیر، ما در حال کپی کردن همه فایل‌های txt. از دایرکتوری محلی Projects در پوشه Projects در سرور راه دور هستیم:

scp “~Projects/*.txt” remote_username@10.10.0.2:/home/user/Projects/

اگر می خواهید ابرداده فایل را که از جمله اطلاعات دیگر شامل مالکیت و تاریخ ایجاد آن فایل است، حفظ کنید، گزینه -p را پاس کنید.

به عنوان مثال، برای کپی کردن file.txt در دایرکتوری راه دور و حفظ ابرداده، وارد کنید:

scp -p file.txt remote_username@10.10.0.2:/remote/directory/

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

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

به عنوان مثال، برای کپی کردن فایلی به نام file.txt از یک سرور راه دور با IP 10.10.0.2، دستور زیر را اجرا کنید:

scp remote_username@10.10.0.2:/remote/file.txt /local/directory

اگر یک ورود بدون رمز عبور SSH به دستگاه راه دور تنظیم نکرده باشید، از شما خواسته می شود رمز عبور کاربر را وارد کنید.

با استفاده از دستور scp یک فایل بین دو سیستم از راه دور کپی کنید

برخلاف rsync، هنگام استفاده از scp، برای انتقال فایل‌ها از یک دستگاه راه دور به دستگاه دیگر، لازم نیست وارد یکی از سرورها شوید.

دستور زیر فایل /files/file.txt را از میزبان راه دور host1.com در پوشه /files روی میزبان راه دور host2.com کپی می کند.

scp user1@host1.com:/files/file.txt user2@host2.com:/files

از شما خواسته می شود که رمز عبور هر دو حساب راه دور را وارد کنید.

داده ها مستقیماً از یک میزبان راه دور به میزبان دیگر منتقل می شود.

برای مسیریابی ترافیک از طریق ماشینی که فرمان روی آن صادر می شود، از گزینه -۳ استفاده کنید:

scp -3 user1@host1.com:/files/file.txt user2@host2.com:/files

نتیجه

اگر به دنبال راهی سریع، قابل اعتماد و ایمن برای کپی فایل ها و دایرکتوری ها بین سیستم های لینوکس خود هستید، scp ابزار مناسبی برای این کار است.

همچنین ممکن است بخواهید احراز هویت مبتنی بر کلید SSH را تنظیم کنید و بدون وارد کردن رمز عبور به سرورهای لینوکس خود متصل شوید.

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

خروج از نسخه موبایل