Долгое время меня интересовал вопрос связанный с возможностью сохранения зашифрованных файлов бекапа моего сервера в хранилище на облаке Amazon S3. Вот недавно я переборол свою лень и собравшись с силами все таки разобрался с данным вопросом. И теперь хочу рассказать об этом Вам.

Для бекапа системы я использовал все тот же tar, как наверное и тысячи администраторов до меня :).

  • Шифрование отдельного файла OpenSSL: openssl aes-256-cbc -salt -in file -out file.aes
  • Расшифровка отдельного файла OpenSSL: openssl aes-256-cbc -salt -in file.aes -out file
  • Архивирование и шифрование директории: tar -cf -directory | openssl aes-128-cbc -salt -out directory.tar.aes
  • Расшифровка и распаковка директории: openssl aes-256-cbc -d -salt -in directory.tar.aes | tar -x -f —

Для того чтоб указать пароль на шифр можно использовать ключ -k password после указания типа шифрования.

С шифрованием и архивирование данных все просто и понятно, теперь я расскажу Вас как сохранить все эти данные в облаке Amazon-а.

  1. Что такое Amazon S3?. Это сервис компании Amazon.com, Inc. который предоставляет услуги облачного хранилища данных. Компания Amazon.com работает на рынке ИТ услуг с 1994г. и является одним из мировых лидеров в предоставлении данных услуг.
  2. Что мне необходимо?. Для того чтоб Вам начать использовать облако Amazon Вам необходимо зарегистрироваться у них на сайте и установить клиент для Linux консоли. Например так:  apt-get install s3cmd (Для Ubuntu/Debian) или yum install s3cmd (Для CentOS/RedHat из epel repo).
  3. Далее несколько команд которые облегчат Вам жизнь.

  • s3cmd —configure — команда которую советую Вам выполнить после регистрации и установки клиента c3cms. Программа задаст Вам несколько вопросов и автоматически настроит все необходимые конфигурационные файлы.
  • s3cmd —acl-private —bucket-location=EU mb s3://backet — Если Вы еще не создали себе хранилище в котором будите хранить свои файлы.
  • s3cmb ls s3://backet — Для просмотра содержимого вашего хранилища.
  • s3cmd —acl-private —bucket-location=EU —guess-mime-type —delete-removed sync directory s3://bucket — синхронизация файлов и директорий с файлами на Amazon.
  • s3cmd del s3://bucket/fules — удаление файлов из хранилища.
  • s3cmd get s3://bucket/fules — получение файлов из хранилища.
  • s3cmd put s3://bucket/fules — загрузка файлов в хранилище.

На этом все это основные команды для работы с хранилищем Amazon S3.