Windows

【Windows10】「OpenSSHサーバー」を使うには?

2022年10月30日

 

リモート接続しているLinux環境からローカル環境のWindows10へscpコマンドを使ってファイル転送する方法を下さい。

 
こんにちはユキトモです。

 
今回は、「OpenSSHサーバー」の設定の方法を解説していきます。
 

この記事でわかること

この記事でわかること

  • sshコマンドを使ってリモートPCからローカルのWindows10へログインする
  •  

  • scpコマンドを使ってリモートPCからローカルのWindows10へファイル転送ができる

 

Windows10には「SSHクライアント」が標準でインストールされています。
 
ですので、コマンドプロンプトを起動して
 
scpコマンドでリモート接続先のサーバーへファイル転送が出来るようになっています。
 

 例)Window10からリモート接続先へファイル転送
 
C:\work>scp c:\work\test1.txt ユーザー名@<接続先IPアドレス>:/tmp/
ユーザー名@<接続先IPアドレス>'s password:
test1.txt                                                                             100%    3     1.0KB/s   00:00
 

 

 
ですが、その逆リモート接続先のサーバから自分が使っているパソコン(今回はWindows10)へファイル転送するには、
 
「OpenSSHサーバー」をインストールすることでファイルを転送することができるようになります。
 

ちなみに「OpenSSHサーバー」を設定する前は以下のように接続できません。
 

 「OpenSSHサーバー」をインストール前
 
[root@localhost tmp]# scp /tmp/test2.txt ユーザー名@<接続先のIPアドレス>:c:/work/work2
ssh: connect to host <接続先のIPアドレス> port 22: Connection refused
lost connection
 

 

そして「OpenSSHサーバー」をインストール後はsshコマンドを使ってログインもできるようになります。
 
では、手順を解説していきます。
 

「OpenSSHサーバー」の機能を追加する

step
1
「Windows10」のパソコンから「スタート」→「設定」をクリック

 

step
2
「アプリ」をクリック

 

step
3
「オプション機能」をクリック

 

step
4
「機能の追加」をクリック

 

step
5
「OpenSSHサーバー」にチェックを入れ「インストール」をクリック

 

step
6
右下の虫眼鏡をクリックして「powershell」と入力して「管理者として実行する」をクリック

 

step
7
「PowerShell」のコマンドプロンプトでSSHサーバーのサービスを起動します。


 SSHサーバーのサービスを起動
 
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
新しいクロスプラットフォームの PowerShell をお試しください https://aka.ms/pscore6
PS C:\WINDOWS\system32> Start-Service sshd
 

 

step
8
サービスの自動起動を設定します。


 サービスの自動起動を設定
 
PS C:\WINDOWS\system32> Set-Service -Name sshd -StartupType Auto
 

 

step
9
Windowsのファイアーウォールを設定します。


 22番ポート経由のSSHサーバへの接続を有効にします。
 
PS C:\WINDOWS\system32> New-NetFirewallRule -Protocol TCP -LocalPort 22 -Direction Inbound -Action Allow -DisplayName "sshd"
Name                          : {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
DisplayName                   : sshd
Description                   :
DisplayGroup                  :
Group                         :
Enabled                       : True
Profile                       : Any
Platform                      : {}
Direction                     : Inbound
Action                        : Allow
EdgeTraversalPolicy           : Block
LooseSourceMapping            : False
LocalOnlyMapping              : False
Owner                         :
PrimaryStatus                 : OK
Status                        : 規則は、ストアから正常に解析されました。 (65536)
EnforcementStatus             : NotApplicable
PolicyStoreSource             : PersistentStore
PolicyStoreSourceType         : Local
RemoteDynamicKeywordAddresses :
 
PS C:\WINDOWS\system32>

 

以上の設定で「OpenSSHサーバー」が使えるようになりました。
 

sshコマンドでログインできるか確かめる

これで、sshコマンドでログインできるようになります。
 
ユーザー名はWindowsのユーザー名
 
IPアドレスはログイン先のWindowsPCのIPアドレス(ipconfigで調べて下さい)
 
パスワードはローカルアカウントの場合WindowsPCへログインするパスワードです。
 

 sshでログイン確認
 
[root@localhost tmp]# ssh ユーザー名@<接続先のIPアドレス>
ユーザー名@<接続先のIPアドレス>'s password:
Connection reset by <接続先のIPアドレス> port 22
 

 
ログアウトする時は「exit」と入力してEnterキーを押してください。
 

ファイル転送できるか確かめてみる

設定後はファイル転送もできるようになります。
 

 「OpenSSHサーバー」をインストール後
 
[root@localhost tmp]# scp /tmp/test2.txt ユーザー名@<接続先のIPアドレス>:c:/work/work2
ユーザー名@<接続先のIPアドレス>'s password:
test2.txt                                                                       100%    5     3.8KB/s   00:00
[root@localhost tmp]#
 

まとめ

 

まとめ

  • 「OpenSSHサーバー」のインストール方法
  • 「ssh」コマンドでのログインの方法
  • 「scp」コマンドでファイルの転送

 
の方法を解説しました。
 
未経験から最短でエンジニア転職を目指す

-Windows
-, , , ,