web-dev-qa-db-ja.com

インターネット経由でWindowsからWindowsにファイルを転送する最良の方法

私のコンピューターから別の人のコンピューターにファイルを転送するための最良の方法を探しています。

私たちはどちらもWindowsを使用しており、TeamViewerなどのいくつかの外部プログラムを使用してファイルを転送できますが、速度が不足していることがわかりました。そこで、データを転送する他の方法を見つけようとしました。 Linuxでは、scpftpなどがあるので、これはとても簡単です。しかし、Windowsでは、そのようなサポートはありません。少なくともネイティブではありません。

だから私は TeamViewer (しかし遅い速度)を試しました、そして WinSCP がありますが、ある種のサーバーをセットアップする必要があります(ssh daemon?)。

[〜#〜] pscp [〜#〜] も機能せず、エラーが発生するだけです。

ローカルからローカルへの転送はサポートされていません。

FTPにはFTPサーバーも必要です。

他にどのようなオプションがありますか?ファイルを転送する好ましい方法は何ですか?

BitTorrentテクノロジーを使用できると思いますが、トラッカーアドレスが必要です。もちろん、これらを見つけるのはそれほど難しいことではありませんが、コマンドラインオプションを使用してファイルを転送するLinuxの方法、またはクライアントからクライアントへのデータ転送を簡単かつ高速に行えるものに相当するものは本当にありますか?

6
enrm

バージョン1803以降、Windows10には OpenSSH for Windows が組み込まれています。

古いバージョンのWindowsの場合、OpenSSHを手動でインストールできます。

このMicrosoftビルドのOpenSSHを使用したWindows上のSSH/SFTPサーバー をセットアップするためのガイドを用意しました。


FTPの場合、IIS(Webサーバー)に組み込まれているFTPサーバーを使用できます。デフォルトでは実行されていません。IISを使用してWebサイトを設定しなくてもFTPサーバーを設定します。

IISでFTPサーバーをセットアップするときは、セキュリティのために、TLS/SSL暗号化(FTPS)を強制し、匿名認証を禁止するようにしてください。

IISを使用したWindowsへのセキュアFTPサーバーのインストール に関する(私の)ガイドを参照してください。

FTP(S)サーバーをセットアップすると、任意のFTPクライアントを使用できるようになります。 Windowsエクスプローラー自体はFTP(S)をサポートしています。ただし、Windowsの組み込みコマンドラインftp.exeクライアントは、TLS/SSLまたはパッシブモードをサポートしていないため、役に立ちません(したがって、ファイアウォールやNATを介して接続することはほとんどできません)。

5
Martin Prikryl

Powershellリモーティングを使用できます(Powershell 5以降)
https://docs.Microsoft.com/en-us/powershell/module/Microsoft.powershell.management/copy-item に多くの例があります
これは、PowershellでHelp Copy-Item -Examplesを実行することでも取得できます。

これは、ローカルファイルをリモートコンピュータにコピーする簡単な例です。

例5:ファイルをリモートコンピューターにコピーする

$Session = New-PSSession -ComputerName "Server01" -Credential "Contoso\PattiFul"
Copy-Item "C:\MyRemoteData\test.log" -Destination "D:\MyLocalData\" -FromSession $Session
1
Jason S

現在のところ、Windows 10でネイティブscpを使用することは可能です。最後のオプションとして、構成メニューまたはPowerShellを使用してインストールできます。コードは次のとおりです。

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

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

着信接続にはOpenSSHサーバー、発信にはクライアントが必要です。

ファイアウォールを備えたウイルス対策ソフトウェアを使用している場合は、ポート22でsshの送信ルールと受信ルールを作成することを忘れないでください。

0
Jatib