Windowsバックアップをどうやって作る?
Windowsのバックアップは、フルバックアップをHDDに保存することができます。
なぜか、Windows7バックアップという名前になっていますが、Windowsのフルバックアップは従来からコントロール・パネルに用意されている.
スタートメニューから「backup」で調べて、Windows7のバックアップと出てくるはず。
設定メニューのバックアップは使い物にならない。OneDriveを使ってファイルだけをバックアップされても全く役に立たないし、ストアアプリ限定である。困ったちゃんである。
コントロール・パネルにあるバックアップであれば、「フルイメージ」で「世代間」のバックアップを作成可能であり、HDDを挿し込むだけで良い。
実は。このバックアップは、ネットワーク上に保存できるし、ネットワークを使えば、定期的な世代バックアップを寝てる間に自動的に作成してくれる。
MacOSのタイムマシンのWindows版と言っても差し支えない。
ネットワークのストレージを作る
Linuxサーバーでネットワーク・ストレージを作成します。
このときに使うのはSambaです。
Sambaは古くから使われていて、ネットの情報は、質が玉石混淆で、しかも時間も玉石混淆で、最近のSambaの情報はどこにあるんでしょうね。
みんなネットワークフォルダ使わないんですかね。LANが10Gbpsな現代こそ、Windowsを移動プロファイルで使うべきだと思うんですけどねぇ
samba の設定
今どきのSambaの設定がわからないので、いろいろな情報を切り貼りしてきた。
Sambaのパスフレーズってほぼ平文だったり、暗号化処理が弱かった時代のアンセキュアなイメージのアレコレはある程度解消されていて、いまは暗号化必須でSMB3が使われる。
たとえば、いまの時代のSMB3を必須にする設定は次のとおりである。
[global] # smb v4.14 and later server signing = mandatory server min protocol = SMB3 server smb encrypt = required # smb v4.13 or earlier smb encrypt = required
SMB3でプロトコル的に相当に安全になる、暗号化処理を必須にしている。
最初は、stunnelで暗号化レイヤ(TLS)を挟もうかと思ったけどやめた。
どうしても心配なら、IPSecで透過的に暗号化したほうが良さそう。
バックアップを取れるような設定
設定作った。
[global] ## 基本的な設定 workgroup = WORKGROUP server string = %h server (Samba, Ubuntu) log file = /var/log/samba/log.%m max log size = 1000 logging = file panic action = /usr/share/samba/panic-action %d server role = standalone server ## パスフレーズ関連 obey pam restrictions = yes unix password sync = no pam password change = no ## 暗号化 server signing = mandatory server min protocol = SMB3 server smb encrypt = required ## ゲスト関連 map to guest = never usershare allow guests = no ### 文字コード関連 dos charset = CP932 unix charset = UTF-8 [homes] browseable = No comment = Home Directories create mask = 0740 directory mask = 0740 valid users = %S read only = no [backup] browseable = Yes public = no guest ok = no path=/opt/samba-vol comment = Windows Backup create mask = 0600 directory mask = 0700 read only = no
パスワードのSamba同期はオフにした。バックアップ専用のユーザとパスワードを作ってPAMとはある程度切り離した。ただしUIDの関係があるのでLinux側に同名のユーザを作成した。
sudo adduser pc-backup sudo pdbedit -a -u pc-backup
ユーザ名を揃えるだけにとどめ、パスワードの同期はオフでしばらく運用してみる。
接続の確認
Linuxのsmbclientコマンドから、動作と接続可否を検証する。
smbclient -L 192.168.1.111 -U WORKGROUP/takuya
古いプロトコルでは接続できないことを確認する
プロトコルを指定して接続
smbclient -m smb2 -L 192.168.1.111 -U WORKGROUP/takuya smbclient -m nt1 -L 192.168.1.111 -U WORKGROUP/takuya
SMB3で接続可能なことを確認する。
smbclient -m smb3 -L 192.168.1.111 -U WORKGROUP/takuya
ついでに、windowsのnet use
コマンドからも確認してみるといい。
windows側から設定する。
SSDも安い
Amazonで、1TBのSSDが6000円程度です。
SSDが安いし、ミニPCも安いのでバックアップは手軽に作れる。RaspberryPiに代表される〇〇PiのArmやルーター付属のUSBポートでもいい。手軽に作れるので使わない理由がない。
バックアップ先の暗号化
Windowsがこのバックアップを標準で有効にしない理由はBitlockerである。
Windows自体のストレージがbitlockerで暗号化されても、バックアップが暗号化されないと危殆化どころか、無防備である。
そのため、通信を暗号化した上で、Linux側もLUKSなどでルートファイルシステムからまとめて暗号化しておかないと意味がない。
バックアップを暗号化して厳密に管理する必要があるので取り扱い注意である。
これを一般人に周知するのは困難なために、Windowsの完成されたバックアップを「旧来」の名称にしたのだと思われる。Win7->Win10の一時的な移動以外に使わないでほしい、暗号化ディスクで常用しないで欲しいというWindows設計者の意図じゃないのかなとは思う。
また、ランサムウェアもあるのでネットワークに保存しても完璧なバックアップとは言えない可能性もある。
Windowsのバックアップは取っておきたい。
バックアップが無いことが怖いのですが、ファイル自体であれば、履歴を使えば解決です。ただ、システムの復元でも面倒なのでどこかのタイミングでバックアップを取ってい置く必要があります。
Windows7で搭載されたバックアップがほぼ無敵で、Macのタイムマシンと一番近いです。 Windowsのフルイメージバックアップと、ユーザフォルダのバックアップを作ってくれます。なぜこれを使わないのか。バックアップソフトウェアを買ってくるのか。 なぜ、これを「古い」「Older」「以前の」などという名前にしてしまったのか。個人的な感想ですが、「Older(以前の)」という名称が不快。暗号化にまつわる煩雑さがあるので、理解はできるけど。
なんでもOneDriveやMSアカウントに吸収されるのはちょっとねぇ。
まとめ Sambaの暗号化関連
SMB3 以上に限定して暗号化することでパケットの盗聴などはまだ防ぐことができる。
server signing = mandatory server min protocol = SMB3 server smb encrypt = required
それでもまだ、パスワード総当たりに対する対策は難しいので、Sambaを常時起動するのはやっぱりアンセキュアだと思う。
SambaをつかうならIPSecやVPNで専用のIP上に限定したほうがいいかもしれないし。
WinFSPでFUSEを使ってSFTP/SSHを通したほうがいいかもしれない。
rclone でドライブをマウントしたり、BlackBlazeもあるんだけどね。SMBプロトコルでSambaでフォルダを常時開放しっぱなしというのも、ランサムウェアの被害の視点で不安である。