先日、レンタルサーバとのファイルのやり取りを SFTP で行い、FTP に対しては .ftpaccess でまるっと制御した云々の話を書きましたが、自宅の Windows にも SSH を入れ、ファイルのやり取り(けっこう頻繁にある)は SFTP でやればいいんじゃないかって思いつきました。 もうなんでもかんでも CyberDuck でやるってか。
Windows には OpenSSH はプリインストールされていて、設定>アプリ>オプション機能>(オプション機能を追加するの)機能を表示、に OpenSSH サーバーがあるのでチェックを入れてどんどん進めれば手軽に追加できます。
それからファイアウォールに追加したりポート開けたりサービスに追加して開始したりとあれこれありまして、そのへんはネット検索してほしいところではありますが、ここまではさして難しいこともなくできるかとは思います。 ログインするまでに「んー」ってなったのは、果たしてどのアカウントでログインするかっていうことで、管理者権限でログインしたいものですからアカウントのパスワードを強固なものに変更したりなんだりかんだりで、そっちに手間取るという。 そしたらタスクスケジューラーで問題が発生しちゃったりで更にそっちに時間を取られる始末。
それでも SSH には直接関係の薄いところではあるのでログインは普通にできちゃいます。 ちなみに自宅は固定 IP ではないので、DDNS に登録したドメインでログインする感じ。 Windows の SSH は PowerShell なんですね。 ls したら「は?」って言われちゃったし。
SSH 通ったんで SFTP も問題なくいけます。 これまで手間がかかったり遅かったりだったファイル転送が一気に高速化しました。 つったってマイクラのデータをやり取りしているわけではなくて、仕事のデカいデータのやり取りがメインです。 そっちはお見せできないのでマイクラのフォルダのスクリーンショットをば、っていうう。
それと最後に、悩んだ点がひとつ。 仕事場からの接続しかないので、ファイアウォールで制限した件。 コントロールパネル> Windows Defender ファイアウォール>詳細設定>受信の規則、で 該当アプリ(というかサービス)のプロパティからスコープ>リモート IP アドレスときて「任意の IP アドレス」から「これらの IP アドレス」に切り替えて仕事場の IP アドレスを登録するのですけれども、OpenSSH SSH Server (sshd) と、ただの「sshd」と、両方とも設定しないと制限がかけられませんでした。 どういうことだかわからないんですけど、ともかくこうしたら制限かけられた。