2012-04-20 16:02:59 +0000 2012-04-20 16:02:59 +0000
24
24

Как выполнить SCP с linux сервера на Windows клиент

я SSHing на Linux машине с помощью PuTTY и пытаюсь скопировать файл куда-нибудь (куда угодно) на мою локальную машину. Я figure SCP - лучший кандидат на эту работу, но мне все равно, пока работает решение!

I cd в каталог, содержащий файл, который мне нужен (app.war) и введите следующее:

scp app.war ./

Я попробовал оба безрезультатно:

scp app.war ./C:/Users/myUser/
scp app.war ./Users/myUser/

Это заставило меня подумать, что, возможно, SCP является клиентом/сервером и требует клиента на моей Windows машине, которого там нет.

Я что, просто использую неправильный синтаксис? Или я не на той машине? Если да, то какие у меня есть варианты? Заранее спасибо!

Ответы (6)

25
25
25
2012-04-20 16:12:55 +0000

для того, чтобы вы могли скопировать файлы обратно в Windows, вам нужен SSH демон/служба, которая будет работать на вашей Windows, гораздо проще использовать этот инструмент вместо него, у него есть возможность импортировать сеансы из Putty, очень простой прямой клиент, который вам понравится! WinSCP ::: Бесплатный SFTP и FTP клиент для Windows

12
12
12
2012-04-20 16:10:01 +0000

Вы правы. SSHD - это службы сервера SSH, которые работают на хосте. Он принимает подключения от SSH клиентов (например, PuTTy), SCP клиентов и SFTP клиентов.

Вы можете загрузить pscp с того же вебсайта, где PuTTY .

С машины windows, вы выполните команду, подобную

pscp.exe someuser@somehost.com:/path/to/app.war c:\tmp.

2
2
2
2015-07-27 11:19:07 +0000

Чтобы SCP файл на машине Windows, вам нужен SSH/SCP сервер в Windows.

По умолчанию в Windows нет поддержки SSH/SCP. Вы можете установить сборку Microsoft OpenSSH for Windows Релизы и загрузки ). Она доступна в качестве дополнительной функции в Windows 10 версии 1803 и новее. Его также можно установить вручную на старые версии Windows.

Я подготовил руководство по настройке SSH/SFTP-сервера на Windows с использованием этой сборки OpenSSH от Microsoft .

См. также Поддерживается ли IIS SFTP в Windows?

  • *

Хотя в качестве SSH на Linux-сервере с Windows-машины можно загрузить файл с Linux-сервера на Windows-сервер, вместо того, чтобы пытаться загрузить файл с Linux-сервера на Windows-сервер.

У вас есть SSH-доступ из Windows в Linux, у вас также есть SCP-доступ (или, что еще лучше, SFTP-доступ).

Используйте любой доступный SCP/SFTP-клиент.

Вы можете использовать WinSCP SFTP/SCP клиент , который имеет как GUI , так и интерфейс командной строки .

Другая альтернатива - PuTTY toolet, который включает инструмент командной строки pscp command-line tool с синтаксисом, похожим на команду OpenSSH scp. Также последние версии Windows 10 поставляются со встроенной OpenSSH scp и могут быть установлены и на более старые версии.

(Я автор WinSCP).

1
1
1
2019-05-17 03:57:39 +0000

В Windows 10 теперь есть встроенный OpenSSH https://docs.microsoft. com/en-us/windows- server/administration/openssh/openssh_install_firstuse

Получить команду администратора

Open PowerShell as an Administrator.

Проверить доступные версии

Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

Установить клиент

Add-WindowsCapability -Online -Name OpenSSH.Client ~~~~ 0.0.1.0

Установите сервер

Запустите сервер и включите его при загрузке

Найдите свой IP-адрес Windows

Add-WindowsCapability -Online -Name OpenSSH.Server ~~~~ 0.0.1.0

на удаленной машине (Linux), найти свой IP-адрес.

Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'

Создайте открытый SSH ключ

Копируйте открытый ключ с локальной (Windows) на удаленную (Linux) машину, чтобы не вводить пароль постоянно.

Обратите внимание, что ssh-copy-id в настоящее время недоступен в Windows.

ipconfig

Делайте то же самое на машине с Linux (Обратите внимание, ssh-copy-id не работает)

ifconfig
  • Вышеуказанный способ не сработал для меня, поэтому я вручную SCPing the public key over и вставил его в файл C:/Users/YOU/.ssh/authorized_keys.

  • Это все равно не сработало, поэтому мне пришлось изменить файл sshd_config.

ssh-keygen.exe
  • Перезагрузка

Создание пароля в Windows, если у вас его еще нет

cat C:\Users\YOU/.ssh/id_rsa.pub | ssh USER@REMOTE_IP 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'

– Обратите внимание, вы все еще можете отключить экран входа в Windows, а) установив опцию ‘Require sign-in’ равным never и б) используя команду ‘netplwiz’ и сняв галочку с опции ‘Пользователи должны ввести пароль’. …“.

Теперь вы должны иметь возможность SSH или SCP с вашей Linux машины

ssh-keygen # if needed
cat ~/.ssh/id_rsa.pub | ssh USER@WINDOWS_IP 'mkdir -p ~/.ssh && type con >> C:/Users/YOU/.ssh/authorized_keys'
```.
1
1
1
2019-12-05 02:57:19 +0000

Это можно сделать с помощью подсистемы Linux Ubuntu для Windows (необходимо включить эту функцию в качестве функции Windows). Затем вы можете использовать Linux терминальный клиент, который работает под Windows, получив его из Microsoft Store (например, Ubuntu 16.04 LTS). Затем, если у вас есть ssh безопасности настроен на удаленный доступ к вашей машине Linux, вы можете scp с вашего локального терминала Windows Ubuntu (при входе в систему как имя пользователя, которое вы установили для вашего экземпляра Linux) что-то вроде этого:

scp -i ~/.ssh/my_rsa username@11.11.11.11:~/myfile ~/… введите RSA ключевую фразу

Удаленный файл будет скопирован в вашу локальную файловую систему Ubuntu, используемую Windows, например,

C:\Users\my.username\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu16.04onWindows_79rhkp1fndgsc\LocalState\rootfs\home\my_linux_username

-1
-1
-1
2017-05-30 13:43:58 +0000

Степ 1: Скачать pscp https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html (На основе вашей машины скачать соответствующую версию)

Степ 2: Ознакомиться с командами pscp Для этого откройте командную строку на вашей машине windows, перейдите в каталог, в который вы скачали pscp. exe и введите “pscp”

Степ 3: Передача файла с Linux-машины на Windows-машину откройте командную строку и выполните следующую команду, указав свои данные:

pscp usernameofyourlinuxmachine@10.40.000.000:/path/of/your/File/nameofyourfile.txt ./

, и эта команда перенесет файл с Linux-машины в текущую директорию Windows-машины

Степ 4: Передайте файл с Windows-машины на Linux-машину откройте командную строку и выполните следующую команду, указав свои данные:

pscp nameofyourfile.txt usernameofyourlinuxmachine@10.40.000.000:/path/where/youwantyourfile

Надеюсь, это понятно и работает на всех вас!

Похожие вопросы

3
6
10
19
11