こんにちはマツダです。
前回はOpenSSHを使ったWindowsへのSSHログインをご紹介しました。
今回は引き続きOpenSSHを使って、SFTPでファイルのアップロードとダウンロードする方法をご紹介したいと思います。
対象バージョン
- Windows Server 2016
OpenSSHのインストール
OpenSSHのインストールについては前回の記事「windowsにsshログイン」をご覧ください。
SFTP用のユーザとグループの作成
SFTP用にWindowsのユーザとグループの作成を行います。
「管理ツール→コンピューターの管理→ローカルユーザーとグループ→ユーザー」からユーザ(sftpuser)を作成します。
「管理ツール→コンピューターの管理→ローカルユーザーとグループ→グループ」からSftpGroupを作成し、sftpuserをグループに含めます。
SFTP用のフォルダの用意
「c:\sftp_root」を作成し、作成したSftpGroupに読み書き権限を与えます。
OpenSSHの設定
「C:\ProgramData\ssh\sshd_config」に以下を追記します。
Match Group SftpGroup
ForceCommand internal-sftp -f LOCAL0 -l INFO
ChrootDirectory c:\sftp_root\
「C:\ProgramData\ssh\logs」にもSftpGroupに読み書き権限を与えます。
※これをしない場合は権限エラーでログが出力されませんでした。
設定の反映
管理ツールのサービスから以下2つのサービスを起動します。
- OpenSSH SSH Servere
- OpenSSH Authentication Agent
確認
WinSCP等のソフトを使って、作成したユーザ(sftpuser)で接続できることと、ファイルのアップロードとダウンロードができることを確認します。