Как удаленно копировать файлы по SSH без ввода пароля

Jul 11, 2025
Конфиденциальность и безопасность

SSH - спасение, когда вам нужно удаленно управлять компьютером, но знаете ли вы, что вы также можете загружать и скачивать файлы? Используя ключи SSH, вы можете не вводить пароли и использовать их для скриптов!

Этот процесс работает в Linux и Mac OS при условии, что они правильно настроены для доступа по SSH. Если вы используете Windows, вы можете используйте Cygwin, чтобы получить функциональность, подобную Linux , и после небольшой настройки SSH тоже будет работать .

Копирование файлов через SSH

Безопасное копирование - действительно полезная команда, и ею действительно легко пользоваться. Основной формат команды следующий:

scp [options] исходный_файл целевой_файл

Самый большой удар - как отформатировать удаленную часть. Когда вы обращаетесь к удаленному файлу, вам нужно сделать это следующим образом:

пользователь @ сервер: путь / к / файлу

Сервер может быть URL-адресом или IP-адресом. За ним следует двоеточие, а затем путь к рассматриваемому файлу или папке. Давайте посмотрим на пример.

ссп –П 40050 Десктоп/урл.тхт ятры@192.168.1.50:~/Десктоп/урл.тхт

Эта команда содержит флаг [-P] (обратите внимание, что это заглавная буква P). Это позволяет мне указать номер порта вместо значения по умолчанию 22. Это необходимо мне из-за того, как я настроил свою систему.

Затем мой исходный файл - «url.txt» находится внутри каталога «Рабочий стол». Файл назначения находится в «~ / Desktop / url.txt», что совпадает с «/user/yatri/Desktop/url.txt». Эту команду выполняет пользователь «yatri» на удаленном компьютере «192.168.1.50».

Что, если вам нужно сделать наоборот? Аналогичным образом вы можете копировать файлы с удаленного сервера.

Здесь я скопировал файл из папки «~ / Desktop /» удаленного компьютера в папку «Рабочий стол» моего компьютера.

Чтобы скопировать целые каталоги, вам нужно использовать флаг [-r] (обратите внимание, что это буква r в нижнем регистре).

Вы также можете комбинировать флаги. Вместо того

scp –P –r…

Вы можете просто сделать

SCP - Но ...

Самая сложная часть здесь заключается в том, что завершение табуляции не всегда работает, поэтому полезно иметь еще один терминал с запущенным сеансом SSH, чтобы вы знали, куда что-то положить.

SSH и SCP без паролей

Защищенная копия - это здорово. Вы можете поместить его в сценарии и сделать резервное копирование на удаленные компьютеры. Проблема в том, что вы не всегда можете быть рядом, чтобы ввести пароль. И, честно говоря, очень сложно ввести пароль для удаленного компьютера, к которому у вас, очевидно, есть постоянный доступ.

Что ж, мы можем обойтись без паролей, используя ключевые файлы. Мы можем заставить компьютер сгенерировать два ключевых файла - один общедоступный, который принадлежит удаленному серверу, и один частный, который находится на вашем компьютере и должен быть безопасным, - и они будут использоваться вместо пароля. Довольно удобно, правда?

На вашем компьютере введите следующую команду:

ssh-keygen –t rsa

Это сгенерирует два ключа и поместит их:

~ / .ssh /

с именами «id_rsa» для вашего закрытого ключа и «id_rsa.pub» для вашего открытого ключа.

После ввода команды вас спросят, где сохранить ключ. Вы можете нажать Enter, чтобы использовать вышеупомянутые значения по умолчанию.

Затем вам будет предложено ввести кодовую фразу. Нажмите Enter, чтобы оставить это поле пустым, затем сделайте это снова, когда он запросит подтверждение. Следующим шагом является копирование файла открытого ключа на ваш удаленный компьютер. Вы можете использовать scp для этого:

Место назначения вашего открытого ключа находится на удаленном сервере в следующем файле:

~ / .ssh / authorized_keys2

Последующие открытые ключи могут быть добавлены к этому файлу, как и файл ~ / .ssh / known_hosts. Это означает, что если вы хотите добавить еще один открытый ключ для своей учетной записи на этом сервере, вы должны скопировать содержимое второго файла id_rsa.pub в новую строку в существующем файле authorized_keys2.

Соображения безопасности

Разве это не менее безопасно, чем пароль?

В практическом смысле нет. Сгенерированный закрытый ключ хранится на используемом вами компьютере и никогда не передается, даже для проверки. Этот закрытый ключ соответствует ТОЛЬКО этому ОДНОМУ открытому ключу, и соединение необходимо запускать с компьютера, на котором есть закрытый ключ. RSA довольно безопасен и по умолчанию использует длину 2048 бит.

Теоретически это очень похоже на использование вашего пароля. Если кто-то знает ваш пароль, ваша безопасность уходит в прошлое. Если у кого-то есть файл с вашим секретным ключом, безопасность будет потеряна для любого компьютера, на котором есть соответствующий открытый ключ, но им нужен доступ к вашему компьютеру, чтобы получить его.

Может это быть безопаснее?

Вы можете комбинировать пароль с ключевыми файлами. Следуйте инструкциям выше, но введите надежную парольную фразу. Теперь, когда вы подключаетесь через SSH или используете SCP, вам понадобится соответствующий файл закрытого ключа. так же как правильный пароль.

После того, как вы введете парольную фразу один раз, вас не спросят снова, пока вы не закроете сеанс. Это означает, что при первом использовании SSH / SCP вам потребуется ввести пароль, но для всех последующих действий он не потребуется. После выхода из системы (не на удаленном) или закрытия окна терминала вам придется войти в него снова. Таким образом, вы не жертвуете безопасностью, но и не подвергаетесь постоянному преследованию из-за паролей.

Могу ли я повторно использовать пару открытого и закрытого ключей?

Это действительно плохая идея. Если кто-то найдет ваш пароль, и вы используете один и тот же пароль для всех своих учетных записей, то теперь у них будет доступ ко всем этим учетным записям. Точно так же ваш файл секретного ключа также является суперсекретным и важным. (Для получения дополнительной информации см. Как восстановить после взлома пароля электронной почты )

Лучше всего создать новые пары ключей для каждого компьютера и каждого аккаунта, который вы хотите связать. Таким образом, если каким-то образом будет обнаружен один из ваших закрытых ключей, вы поставите под угрозу только одну учетную запись на одном удаленном компьютере.

Также очень важно отметить, что все ваши закрытые ключи хранятся в одном месте: в ~ / .ssh / на вашем компьютере, вы можете использовать TrueCrypt чтобы создать безопасный зашифрованный контейнер, затем создать символические ссылки в вашем каталоге ~ / .ssh /. В зависимости от того, что я делаю, я использую это суперпараноик супербезопасный способ успокоить мой разум.


Вы использовали SCP в каких-либо сценариях? Вы используете ключевые файлы вместо паролей? Поделитесь своим опытом с другими читателями в комментариях!

How To Copy Files Using SSH

SSH Login Without Password

SSH Login Without Password

Login SSH Without Using Password In 5 Minutes

Windows 10 Native SSH Client Connect Without Password

How To Transfer Files Using SSH

Linux/Mac Tutorial: SSH Key-Based Authentication - How To SSH Without A Password

SSH Into Your Pi WITHOUT A Password With SSH Keys! | 4K TUTORIAL

How To: Transfer Files Over SSH

Enable Password Less SSH Between Linux Servers

Secure Remote SSH To A Raspberry Pi Without Passwords

Configure SSH Password Less Login Authentication Using SSH Keygen On Linux

Linux Tutorials: How To Setup Passwordless SSH & Disable Password SSH

PowerShell Remoting Over SSH


Конфиденциальность и безопасность - Самые популярные статьи

Как защитить свой аккаунт Gmail и Google

Конфиденциальность и безопасность Nov 14, 2024

Из всех ваших онлайн-аккаунтов большая часть вашей информации хранится в Google. Подумайте об этом: ес..


Как сэкономить на счете за мобильный телефон с помощью MVNO

Конфиденциальность и безопасность Nov 22, 2024

НЕКЕШЕРОВАННЫЙ КОНТЕНТ Если у вас есть сотовая связь в США, то, скорее всего, вы пользуетесь услуг�..


Почему удаленные файлы можно восстановить и как это предотвратить

Конфиденциальность и безопасность Jun 8, 2025

Когда вы удаляете файл, он не стирается на самом деле - он продолжает существовать на вашем жестком ..


Как защитить свой телефон Android с помощью PIN-кода, пароля или шаблона

Конфиденциальность и безопасность May 9, 2025

Экран блокировки - важная функция Android, и его безопасность важна для всех пользователей Android. С Lollipop ..


Как очистить историю просмотров в Firefox

Конфиденциальность и безопасность Mar 7, 2025

НЕКЕШЕРОВАННЫЙ КОНТЕНТ Как и другие браузеры, Firefox собирает подробную историю ваших интернет-при�..


Да, каждый сайт загрузки бесплатного программного обеспечения обслуживает Crapware (вот доказательство)

Конфиденциальность и безопасность Dec 31, 2024

Когда мы писали о том, что происходит, когда вы устанавливаете десять лучших приложений из CNET Downloads,..


Как автоматически войти в OS X Yosemite без пароля

Конфиденциальность и безопасность Nov 16, 2024

НЕКЕШЕРОВАННЫЙ КОНТЕНТ Если у вас дома есть компьютер, а вокруг никого нет, действительно нет ник�..


Лучшие статьи для компьютерных фанатов за август 2012 г.

Конфиденциальность и безопасность Mar 23, 2025

НЕКЕШЕРОВАННЫЙ КОНТЕНТ В прошлом месяце мы рассмотрели такие темы, как как снова сделать Mozilla Firefox..


Категории