公共サービスを使用した安全なバックアップ



定期的にバックアップする必要がある多くの異なるプロジェクトがあることがよくあります。

しかし、より頻繁に、あなた自身のバックアップサービスを上げることは怠zyであり、コピーは時々最高の状態で作成され、最悪の場合はまったく作成されません。 特に怠zyな人々にとっては、 DropboxYandex.Diskなどのファイル同期サービスを思いつきました。 一番下の行は常に同じです。1つの接続されたデバイスにダウンロードされたファイルは、他のすべてのデバイスに表示されます。 やった、解決策が見つかった。

しかし、別の疑問が生じます。ダウンロードされたコンテンツのセキュリティです。 マヨルカの写真について心配する必要がない場合、1Cの戦闘基地にはこのようなバックアップがたくさんあります。 そして、ここで、まさにこの記事には、不愉快なままでファイルを安全に保つ方法についての小さなHOW-TOがあります。



仮定



このHOW-TOを作成するとき、読者はシステム管理の基本に精通しており、独立してアカウントを作成し、リモートコンピューターで同期サービスを構成できると想定しています。 例として、CentOS 6 Linux、 その ノード 、およびDropboxサービスを示します。 他のOSやサービスでも同じことができます。 また、GnuPGの代わりに、OpenSSLを使用できます。



ストレージへのソフトウェアのインストール



Dropboxをインストールして構成する


ダウンロードして設定します。 ところで、X11が依存関係にあるという事実にもかかわらず、--nodepsで安全にインストールできます

[root@server ~]# wget https://www.dropbox.com/download?dl=packages/fedora/nautilus-dropbox-1.6.0-1.fedora.x86_64.rpm [root@server ~]# rpm -i --nodeps nautilus-dropbox-1.6.0-1.fedora.x86_64.rpm Dropbox installation successfully completed! You can start Dropbox from your applications menu. [root@server ~]# su user [user@server ~]$ dropbox start -i Downloading Dropbox... 100% Unpacking Dropbox... 100% Done! [user@server ~]$ dropbox stop [user@server ~]$ ~/.dropbox-dist/dropboxd This computer isnt linked to any Dropbox account... Please visit https://www.dropbox.com/cli_link?host_id=**************************************** to link this device. This computer isnt linked to any Dropbox account... Please visit https://www.dropbox.com/cli_link?host_id=**************************************** to link this device.
      
      





リンクをたどり、パスワードを入力してください。

 This computer is now linked to Dropbox. Welcome ********* ^C ~/.dropbox-dist/dropboxd & [user@server ~]$ exit [root@server ~]# rpm -e nautilus-dropbox
      
      





GNUPG2をインストールしてキーを作成する


 [root@server ~]# yum install gpg [... skipped ...] [root@server ~]# su user
      
      





キーペアを作成する

 [user@server ~]$ gpg --gen-key [... skipped ...] Please select what kind of key you want: (1) RSA and RSA (default) (2) DSA and Elgamal (3) DSA (sign only) (4) RSA (sign only) Your selection? 1 RSA keys may be between 1024 and 4096 bits long. What keysize do you want? (2048) 4096 Requested keysize is 4096 bits Please specify how long the key should be valid. 0 = key does not expire <n> = key expires in n days <n>w = key expires in n weeks <n>m = key expires in n months <n>y = key expires in n years Key is valid for? (0) Key does not expire at all Is this correct? (y/N) y GnuPG needs to construct a user ID to identify your key. Real name: Backup Server Email address: backup@my.company.com Comment: Main backup server You selected this USER-ID: "Backup Server (Main backup server) <backup@my.company.com>" Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O You need a Passphrase to protect your secret key. [... skipped ...] gpg: key E4E021AB marked as ultimately trusted public and secret key created and signed. gpg: checking the trustdb gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u pub 4096R/E4E021AB 2014-01-29 Key fingerprint = 0FDC B999 6FEB FBB5 1E59 48BD 71C2 6663 E4E0 21AB uid Backup Server (Main backup server) <backup@my.company.com> sub 4096R/C7212824 2014-01-29
      
      





生成中にgpgが十分なエントロピーがないことを誓う場合、作成します。

私は通常別のコンソールに行き、次のようなことをします:

 [user@server ~]$ while true; do find / -type f; done
      
      





公開鍵をすべての参加者間で共有することのみが残ります-Dropboxに配置します。

 [user@server ~]$ gpg --export -o ~/Dropbox/public.gpg
      
      





冗長サーバーへのソフトウェアのインストール



原則として、すべてが同じですが、独自のキーを生成することはできません。

するのに十分
 [user@server ~]$ gpg --import ~/Dropbox/public.gpg
      
      







バックアッププロセス



さまざまな方法で可能です。 各サーバーには、独自のDropboxアカウントと、バックアップサーバーと共有されるフォルダー(共有フォルダー)があります。 backu_srv1、backup_srv2などと入力します。 すべてのサーバーに1つのアカウントを設定できますが、バックアップするデータの量によって異なります。

主な「トリック」は、ファイルをDropboxに入れる前に暗号化することです。

以下は、mysqlデータベースをバックアップするスクリプトの例です。

 #!/bin/sh FILE="~/Dropbox/backup_srv1/mysql_$(date +%d.%m.%y).sql.gz.gpg" LOG="~/scripts/backup.log" USER="************" PASS="************" DB="**********" KEY="0xE4E021AB" export PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/core_perl mysqldump -u${USER} -p${PASS} $DB|gzip -c|gpg --trust-model=always --yes -e -r $KEY -o "$FILE" && echo "$FILE : OK" >> "$LOG" && exit echo "$FILE : ERROR" >> "$LOG" && exit
      
      





KEYに注意してください-これは、ステップ2で受信し、サーバーにインポートした/サーバー上の公開キーIDです。



実際には、それだけです。 バックアップはDropboxを介して同期されますが、公開キーは暗号化のみが可能で、秘密キーはストレージ上にのみあるため、誰もデータにアクセスできません。



バックアップのさらなる使用



可能なオプション。 受信したすべてのバックアップを復号化してどこかに置くことができ、暗号化して最大1時間「X」で保存できます。 これは好みの問題です。 私が唯一お勧めするのは、金庫の封筒に入れられたA4シートなど、秘密鍵のコピーをいくつか持つことです。 他のすべてのオプションを失うと、リーフレットから非常に多くのシンボルが詰め込まれます。

 [user@server ~]$ gpg --armor --export-secret-keys
      
      







そうそう。 復号化自体。

 [user@server backup_srv1]$ gpg -o ~/mysql_29.01.14.sql.gz -d mysql_29.01.14.sql.gz.gpg  -      : "Backup Server (Main backup server) <backup@my.company.com>" 4096- RSA , ID C7212824,  2014-01-29 (  ID E4E021AB) gpg:  4096-  RSA,  ID C7212824,  2014-01-29 "Backup Server (Main backup server) <backup@my.company.com>"
      
      





そして今、重要なこと:

Dropboxと同期しているフォルダーにバックアップを復号化しないでください!



結論の代わりに



この記事を読んだ後に、何らかのサービスでアカウントを登録してキーを生成した場合、あなたはすでにバックアップを作成している人の一人です。 おめでとうございます!

あなたがまだ怠けている場合-絶望しないでください、あなたは素晴らしい経験とアドレナリンがたくさんあります。 いつか

また、gnupgで他に何ができるか知りたい場合は、 こちらをご覧ください。



-

8033A3EF / DBD1 B794 73AD 3A5C 9279 A8E1 16B5 6AA3 8033 A3EF



All Articles