今回はランサムウェアに屈しないため、UrBackupで簡単かつ確実にバックアップを取る方法を紹介します。
日頃バックアップなんて気にしていなくても、ハードウェアの故障だけでなくランサムウェア対策にもなると考えると、重い腰を上げざるを得なくなるのではないでしょうか。
ランサムウェア対策していますか?
最近、ランサムウェアが巷を賑わせています。IPAが特設ページを開設しているのはまだわかるのですが(もうすこし更新したほうがいいとは思いますが)、警視庁も対策ページを開設しており、防犯という観点から国家的な関心事になっているといっても過言ではないでしょう。
警視庁の対策ページはよくできて、ランサムウェア対策として重要なのは感染を防止することと、感染しても被害を軽減することだと述べています。そしてどちらの対策も複数の取り組みを提示しています。すなわち、対策は1つだけではダメで複数組み合わせることが重要です。よって現実的には対策することによってどの程度の手間を許容できるのかと、どのぐらい費用をかけられるのかによって組織ないし個人としてケースバイケースで考えていく必要があります。
バックアップは最後の砦として重要です。せっかく取ったバックアップもランサムウェアの餌食になってしまっては意味はなく、またバックアップから正常にリストアできないと意味がありません。現実的には複数の方法で複数の場所にバックアップすることとなるでしょうが、これもどのぐらいの手間と費用をかけられるのかという話になってきます。
そんなときに検討したいのが、今回紹介するUrBackupです。オープンソースでマルチプラットフォームなサーバークライアント方式のバックアップソフトです。サーバーもマルチプラットフォームで動作するため、率直なところUbuntuである必然性は特にありません。しかしランサムウェア対策ということを考えると、バックアップサーバーをUbuntuで用意するのはより安全側に倒す良い選択肢の1つです。
UrBackupの特徴は、クライアントがWindowsの場合はイメージごとバックアップが取れるということです。不幸にもランサムウェアに感染した場合、インストールドライブをまっさらにした状態からリストアできます。逆にUbuntuでは指定したファイルだけがバックアップ対象になるため、第635回で紹介したDéjà Dupのほうがいいでしょう。ただしDéjà Dupは原則としてホームフォルダーのバックアップ用ですが、UrBackupはシステムフォルダーのバックアップも取得できますので、要求に応じて併用するといいでしょう。
UrBackupとランサムウェア対策
UrBackupのWebサイトには、「UrBackup protects against ransomware」というそのものズバリのページが用意されています。
UrBackupは他のバックアップ方式とは異なりサーバーとクライアントが独立しているので、ランサムウェア対策に優れたバックアップソフトということです。これからの説明を見るとわかりますが、クライアントには一切サーバーの設定はないため、クライアントからデータを読み取ってサーバーにアクセスすることは不可能です。もちろんランサムウェア側が「UrBackup」対策をすれば話は変わってきますが、現段階では考慮しなくてもいいでしょう。
UrBackupサーバーのセットアップ
UrBackupサーバーのパッケージはリポジトリにないため、公式に提供しているいくつかの方法から選択することになります。今回PPAにはUbuntu 22.04 LTS用のパッケージは用意されていなかったため、OpenSUSE Build Serviceのリポジトリから取得することにします。
端末から次のコマンドを実行してください。
インストール中、バックアップの保存場所を質問されます(図1)。デフォルトでは「/media/BACKUP/urbackup
」ですが、必要に応じて変更してください。個人的には「/var/backups
」以下に置くのが好きですが、「/srv/backup/urbackup
」などもいいかもしれません。
UrBackupサーバーのWebインターフェース
UrBackupをインストールしたサーバーのポート55414にアクセスすると、Webインターフェースが表示されます(図2)。テスト運用であれば特に設定を変更するところはありませんが、本番運用の前にはWebインターフェースにアクセスするためのユーザー名とパスワードを設定し、またメールの設定も行うといいでしょう。
Windowsクライアントのインストールとバックアップ
UrBackupのWindowsクライアントはUrBackupトップページの「Download UrBackup Client」をクリックしてダウンロードします。
ダウンロード完了後インストーラーを起動してインストールを実行すると、最後に図3のメニューが表示されます。いずれもデフォルトのままにして「Finish」をクリックすると、初回バックアップが実行されます。もちろんサーバーの設定が完了している場合のみです。
Windowsへのリストア
正確に言えばイメージバックアップからのリストアですが、現状イメージバックアップはWindowsからしかできません(macOS対応はベータ版のため考慮外)。事実上Windowsへのリストアということになります。
不幸にもランサムウェアに感染してしまった場合、あるいはHDD/SSDが故障してしまった場合は、「Bootable CD/USB stick to restore image backups」からisoイメージをダウンロードしCD/DVD-Rに焼くか、USBメモリーに転送してください。
今回はスクリーンショットを撮影する関係上、VirtualBox上に新たに作成した仮想マシンにリストアしています。
リストアイメージから起動すると図4が表示されるので、そのままエンターキーを押します。
続けて「Graphical/modern Interface」にチェックが入っていることを確認して「OK」でエンターキーを押します(図5)。
すると(おそらく)LXDEでリストアのプログラムが起動した状態になるので、キーボードレイアウトを変更して「Select keyboard layout」をクリックします(図6)。
「Select time zone」では「Asia」「Tokyo」を選択して「Select timezone」をクリックします(図7)。
「Select Client」でリストアするクライアントのホスト名を選択し、「Select image」でリストアするバックアップイメージを選択します。「Select disk to restore to」でリストアするディスクを選択し、「Review」をクリックします(図8)。
「Review restore」は最終確認で、選択に間違いがなければ「Start restore」をクリックします(図9)。
リストアが完了すると「Restore another image」と「Restart machine」ボタンが表示されます(図10)。今回はこれ以上リストアするイメージはないため、後者をクリックして再起動します。
これにより、(接続したCD/DVD-RまたはUSBメモリーが優先起動になっていない場合)リストアしたWindowsが起動します。
Ubuntuクライアントからのバックアップとリストア
Ubuntu用のUrBackupクライアントパッケージは存在しないため、汎用インストーラーからインストールします。
インストール方法は「Binary Linux client (command line only; with auto-update; x86/AMD64/ARMv6+/ARM64)」にあるコマンドラインを参照し、実行してください。
インストール中に2つ質問されます。1つ目はどこにインストールするかで、基本的にはデフォルトの「/usr/local
」以下でいいでしょう。
もう1つはスナップショットメカニズムを使用するかどうかで、今回は不要の「4
」にしています。
簡単な使い方としては、まずバックアップするフォルダーを登録します。例としては次のとおりです。
これで/etc
以下と/home
以下がバックアップの対象となりました。
次のコマンドを実行してバックアップを実行します。
リストアはやや使いにくいのですが(すぐエラーになる)、例えばDownloadフォルダーを最新のバックアップから復元したい場合は次のコマンドを実行します。
サーバーからバックアップのアーカイブを取得できるため、コマンドから実行するのではなくそのアーカイブから復元したほうが簡単かもしれません。