Як завантажити файл із сервера за допомогою SSH / SCP

Anonim

Користувачі можуть безпечно завантажити файл з будь-якого віддаленого сервера за допомогою SSH за допомогою інструменту scp у командному рядку. По суті, це означає, що ви можете безпечно зберігати файл на віддаленому сервері та передавати його в локальне сховище без необхідності відкривати цей файл зовнішньому світу, оскільки scp пропонує той самий рівень безпеки та вимагає такої ж автентифікації, що й ssh.

Безпечне завантаження файлів за допомогою scp призначене насамперед для досвідчених користувачів, які регулярно використовують ssh і командний рядок у macOS X, bsd або linux. Для тих, хто має достатній досвід роботи з командним рядком, використовувати ssh і scp для завантаження віддалених файлів легко, і, що зручно, після завершення передачі файлу віддалене з’єднання припиниться. Це робить scp перевагою перед sftp для швидкого завантаження файлів, хоча, очевидно, ви також можете використовувати sftp, якщо хочете.

Завантаження файлу з віддаленого сервера за допомогою SSH Secure Copy

Це припускає, що на віддаленому сервері активний ssh, і якщо ви можете підключитися до машини по ssh, то, ймовірно, на ньому також буде активний scp. Якщо у вас немає віддаленого сервера, щоб спробувати це, ви можете спробувати його між комп’ютерами Mac OS X або з локальним хостом, якщо попередньо ввімкнете ssh і Remote Login на Mac.

Основний синтаксис використання scp (захищеної копії) для безпечного завантаження віддалених файлів такий: користувач, сервер, шлях і ціль замінюються відповідно:

scp user@server:/path/to/remotefile.zip /Local/Target/Destination

Наприклад, щоб завантажити файл на локальний робочий стіл під назвою «filename.zip», розташований у домашньому каталозі віддаленого користувача «osxdaily» на сервері IP 192.168.0.45, синтаксис буде таким:

% scp [email protected]:filename.zip ~/Desktop/ Пароль: filename.zip 100% 126 10,1 КБ/с 00:00 %

Якщо автентифікація виконана правильно, цільовий файл негайно почне завантажуватися до цільового місця призначення, пропонуючи відсоток завершення, швидкість завантаження та час передачі, що минув, у міру завантаження файлу.

Як зазвичай у командному рядку, важливо вказати точний синтаксис.

Якщо в назві файлу або шляху є пробіл, ви можете використовувати лапки або екранувати шлях таким чином:

"

scp [email protected]:/деякий віддалений каталог/назва файлу.zip>"

scp також можна використовувати для безпечного розміщення файлу на віддаленому сервері, також відкоригувавши синтаксис, але ми зосереджуємося на завантаженні файлу, а не на завантаженні файлів.

Якщо ви новачок у ssh і тестуєте це самостійно, і якщо ви ніколи раніше не підключалися до віддаленого сервера, вам буде запропоновано підтвердити, чи хочете ви справді підключатися до віддаленого сервера. машина. Це виглядає так і вимагає відповіді «так» або «ні» перед початком завантаження. % scp [email protected]:filename.zip ~/Desktop/ Автентичність хосту «192.168.0.4 (192.168.0.4)» не може бути встановлена. Відбиток ключа ECDSA – SHA256:31WalRuSLR83HALK83AKJSAkj972JJA878NJHAH3780. Ви впевнені, що бажаєте продовжити підключення (так/ні)? так Попередження: "192.168.0.4" (ECDSA) назавжди додано до списку відомих хостів. Пароль: filename.zip 100% 126 0.1KB/s 00:00 %

Знову ж таки, припускаючи, що підключення схвалено та вхід успішний, віддалений файл буде завантажено з цільового сервера на локальний хост.

Ви також можете використовувати scp для завантаження кількох файлів із віддаленого сервера:

scp user@host:/remote/path/\{file1.zip, file2.zip\} /Local/Path/

Використання ssh для віддаленого завантаження файлів, подібне до цього, найбільше підходить для безпечних передач, які потребують автентифікації. Звичайно, ви також можете завантажувати файли за допомогою curl або wget з віддалених серверів, але файли, доступні за допомогою curl і wget, як правило, також доступні із зовнішнього світу, тоді як ssh і scp вимагають автентифікації або ключа та використовують шифрування 3DES, що значно покращує його безпечніше.

Як завантажити файл із сервера за допомогою SSH / SCP