BackWPupでNASにWordPressのFTPバックアップを行う

WordPressで運用しているこのブログですが、セキュリティ対策の一環でフルバックアップを取ろうと思い、バックアッププラグインの中では利用者が多くて安定してそうなBackWPupを試しました。

バックアップ方法がいろいろ選べますが、まずフォルダに吐かせるのは容量を逼迫するし、サーバーのセキュリティを突破された時点で無意味なので論外です。

メール送信もセキュリティ的な問題とメンテコストがかかるので除外。

あとは各種クラウドサービスとFTPですが、せっかくNASがあるので、FTPでNAS(Synology ds216j)に転送させようと考えました。

NAS側の設定


まずDSMメニューからコントロールパネルへ移動。NASのFTP機能を有効にします。
SSL暗号化にチェック。FTPポートは21。
「外部IPをPASVモードでレポート」にチェックを入れます。
これにチェックを入れないと、FTP通信の際にNAS側からクライアント側へのIPアドレスの返答にローカルIPを返してしまい、通信が失敗します。
アクティブモードの場合は入れなくてよいですが、今回はパッシブモードで転送するので、チェックを入れておきます。
外部IP割り当てにグローバルIPアドレスを設定します。


転送用のユーザーを作成します。
Wordpress側でNASにFTPで接続する際にユーザーとパスワードを設定するので、これが漏れても被害を最小限に抑えるためです。


homeフォルダのみに権限を与え、他のフォルダには一切権限を与えないようにしました。


アプリケーション権限では当然FTPのみ許可して、ユーザーの追加を完了。

ルーターの設定

FTP通信で使用するポートの解放を行います。

FTPの通信用のTCP21番ポートと、データ転送用の55536~55543間のTCPポートを解放します。
今回はパッシブモードで受けるのでこの設定ですが、アクティブで受ける場合は、21番と20番を設定します。

テスト

試しにちゃんとFTP接続できるか試してみます。


適当なブラウザで「ftp://NASのグローバルIP」と打つと、BASIC認証を聞かれるので、先ほど追加したユーザーでログインします。


/home/がホームディレクトリのようです。これは後程Wordpressで設定するので覚えておきます。

ここまで確認したら、念のため先ほど追加したユーザー設定で、念のためIPによる制限をかけます。どこからでもアクセスできる状態でなくすためです。


「IPによる発行」で、特定のIPのみFTP転送を許可する設定してやればOKです。
WordpressのIPアドレスはレンタルサーバーの管理メニュー等で確認できます。

WordPress側の設定


BackWPupをインストールしたら、FTP転送用のジョブをつくります。
バックアップ項目等はデフォルトです。


毎日自動でバックアップさせるので、Cronは設定しておきます。


FTPの設定を行います。
FTPサーバーにNASのIPアドレスを設定。
ユーザーとパスワードは先ほど追加したものを設定。
ファイルを格納するフォルダーは、ブラウザでログインした時のフォルダを設定します。
ファイルを削除という項目はバックアップの最大保持数です。好みで設定。
SSL-FTPにチェック
FTPパッシブモードにチェック

実行


大体60MBのサイズで31秒でした。


NAS側でちゃんとZIPファイルが転送されてるか確認しておきます。

動的IPの場合のpassiveモードがやっかいです
passiveモードは相手にサーバのIPアドレスを返すので
NAT越えの場合 ローカルIPを返します
これを グローバルIPを返すように工夫する必要があります

Wordpress

Posted by koko