windows10にftpサービス導入でラズパイからwindowsへファイル転送が可能になる

1.ラズパイからwindows10にFTP接続

ラズパイに ftp が導入されていれば、windows10 のコマンドプロンプトを用いて、ラズパイとのデータのやり取りが可能であることは、以前(便利です。ファイル転送コマンド(FTP、SCP)の使い方)の記事に書いています。

その記事とは逆の方向、即ち、ラズパイから ftp で windows10 とデータのやり取りができるか確認してみました。

pi@raspberrypi:~ $ ftp
ftp> open 192.168.XXX.YYY  ⇒ windows10 の IPアドレス
ftp: connect: Connection refused

Connection refused:接続拒否ですね。windows10 に FTP が設定されていないようです。

実は、60爺のデスクトップパソコンは windows10 Home なんです。以前から windows10 Pro でないと ftp は使用できないのかなと思っていたのですが、そうではなくて、デフォルトでは ftp が有効になっていないだけでした。

そこで、windows10 で ftp を使用できるように操作してみました。

2.windows10にFTPサービス導入

windows で ftp を使えるようにするには、Microsoft FTP Service を使用して FTP サーバーを立ち上げれば良いとわかりました。

次の手順で実施します。

(1) FTP サービスのインストール

FTP サービスは既定では無効になっているため、次のように有効化します。

左下の検索マークに「con」と入力すると、コントロールパネルが表示されるのでクリックします。

「プログラム」をクリックします。

「Windows の機能の有効化または無効化」をクリックします。

下記のように、「Windows の機能の有効化または無効化」のメニューが表示されるので、少し下の方に移動します。

「インターネット インフォメーション サービス」がありますので、その配下にある「FTP サーバー」、「Web 管理ツール」の左側の「+」をそれぞれクリックします。「+」が「-」に変わり、それぞれメニューが現れます。

「FTP サービス」と「IIS 管理コンソール」にチェックを入れて「OK」をクリックします。

すると、必要なファイルが検索され、必要な変更がなされます。

(2) ファイル管理用のための FTP サーバーの設定

サーバーへのファイルのアップロード及びダウンロード用の設定を行います。

始めに、コントロールパネルから「システムのセキュリティ」をクリックします。

下にある「管理ツール」をクリックします。

「インターネットインフォメーションサービス(IIS)マネージャ」をクリックします。

左パネルのサーバーアイコンを右クリックして、「FTP サイトの追加」を選択します

サイト情報画面に必要情報を入力します。FTP サイト名には任意の名称を入力します。コンテンツディレクトリには、FTP サーバーのデフォルトのディレクトリである C:\inetpub\ftproot を設定しますが、他のディレクトリでも問題はありません。「次へ」をクリックします。

バインドと SSL の設定画面です。バインドはデフォルトのままにします。SSL は使用しないので、「無し」にします。「次へ」をクリックします。

認証は必要なので、「基本」にチェックをし、アクセスの許可は、「指定されたユーザー」を選択し、使用するユーザー名を入力します。アクセス許可は、「読み取り」、「書き込み」両方にチェックをします。「次へ」をクリックします。

以上で、FTP サイトが作成されました。

次に、Webサーバーのディレクトリを FTP で管理できるように、仮想ディレクトリを作成します。作成した FTP サイトで右クリックをして、「仮想ディレクトリの追加」をクリックします。

「仮想ディレクトリの追加」画面から、エイリアスには任意の名称を、物理パスにはWebサーバーの物理パスを入力して、OK ボタンをクリックします。

FTP のサイトを選択して、中央の機能一覧で「FTPのディレクトリの参照」をクリックします。

「FTP ディレクトリの参照」画面の、「ディレクトリの表示オプション」で「仮想ディレクトリ」にチェックをします。この設定で FTP クライアントで仮想ディレクトリが一覧表示されるようになります。

3.ラズパイからwindows10にFTP

windows10 に ftp サービスが導入できたので、ラズパイから windows10 に ftp でファイルの送受信をしてみましょう。

(1) windows10に接続

ラズパイから ftp に入って windows10 に接続してみます。

pi@raspberrypi:~ $ ftp
ftp> open 192.168.254.211
ftp: connect: Connection refused
ftp> open 192.168.254.211
Connected to 192.168.254.211.
220 Microsoft FTP Service
Name (192.168.254.211:pi): yu19550827@gmail.com
331 Password required
Password:
230 User logged in.
Remote system type is Windows_NT.

Name と Password に正しい値を入力したところ、ログインすることが出来ました。

(2) ファイル送信

始めに、Windows10 のFTP サーバーのデフォルトのディレクトリを確認します。

それでは、windows10 にファイルを送信します。

ftp> put test1.txt
local: test1.txt remote: test1.txt
200 PORT command successful.
125 Data connection already open; Transfer starting.
226 Transfer complete.
7200 bytes sent in 0.01 secs (1.3336 MB/s)

7200 bytes を 0.01 secs で送付したと言っています。

ディレクトリを確認すると、送信した test1.txt が追加で格納されていることがわかります。

(2) ファイル受信

次に受信を行ってみます。

まず、FTP サーバーのデフォルトのディレクトリに、rasp_to_win.txt を格納します。

ラズパイの受信用ディレクトリの内容です。

ftp> !dir
110bkup                         python_games
Desktop                         python_pg
Documents                       q.sh
Downloads                       source
Music                           sqlite3
Pictures                        temp

受信を行います。windows10 から rasp_to_win.txt を受信します。

ftp> get rasp_to_win.txt
local: rasp_to_win.txt remote: rasp_to_win.txt
200 PORT command successful.
125 Data connection already open; Transfer starting.
226 Transfer complete.
497 bytes received in 0.01 secs (84.8665 kB/s)

497 bytes を 0.01 secs で受信したと言っています。

ここで、再度、ディレクトリの内容を見てみます。

ftp> !dir
110bkup                         python_games
Desktop                         python_pg
Documents                       q.sh
Downloads                       rasp_to_win.txt ※ファイルが追加されている
Music                           source
Pictures                        sqlite3

rasp_to_win.txt が追加されていますね!

ラズパイから windows10 にファイルを送受信できることが確認できました。

※補足

windows10 への接続でタイムオーバーが起きてしまう場合、windows10 のファイアーウォールが原因であることが多いです。

ftp を実施する間、ファイアーウォールを開けてください。

ちなみに、60爺の場合は「zeroスーパーセキュリティ」を使用しているので、以下のように設定しました。

(1) 保護 > ファイアーウォールの設定をクリック

(2) 設定をクリック

(3) アプリケーションごとのインターネット接続ルールのデフォルト動作を変更をクリック

(4) イーサネットから「許可」を選択後、OKをクリック