Безопасность сайта и бэкап

<…> у меня сегодня случилась неприятность с сайтом. Вчера он был недоступен по каким-то причинам. В окне броузера говорилось, что Internet Explorer не может отобразить эту веб-страницу и т.д.

В тех поддержке мне сказали, что У НИХ все нормально и это, возможно, временная проблема. Сегодня сайт доступен, но он пребывает в его первоначальном виде. Т.е. все изменения и пополнения, которые производились на сайте отсутствуют.

Каковы причины данного явления? Возможно ли восстановить более поздний вариант сайта? Со всеми изменениями я закончила совсем недавно и ничего не успела сохранить. И что мне делать, чтобы впредь избежать повторения такой ситуации?

<…> Я в расстройстве. Там столько работы было проделано.

Это фрагмент письма моей лучшей ученицы. Дальше вы узнаете что я ответил, и как ВАМ избежать такой участи…

<…> сочувствую. Вероятно ваш сайт как и многие другие подвергся DDOS атаке или произошёл какой-то сбой у хостера. Было автоматическое восстановление из резервной копии сайта. Новая версия видимо не была резервно копирована — увы. <…> Необходимо разработку страниц (текст и картинки) вести локально, не в Джумле, а в Дримвивере. Потом через буфер вставлять код. И, конечно, регулярно, специальными программами, делать дамп базы и zip-архив всех файлов сайта себе на комп…<…>

Потеря результатов многих часов работы из-за проблем хостера или собственной беспечности — одновременно и неприятная и очень полезная вещь для тех, кто способен учиться. Это как в известной пословице: «Глупец учится на своих ошибках, а умный — на чужих».

Создание сайта и его безопасность

  1. Правильно пишем статьи
  2. Делаем резервную копию (дамп) базы данных сайта
  3. Делаем резервную копию (бэкап)  всех файлов сайта

Правильно пишем статьи

Что бы не было «мучительно больно», попробуйте пользоваться такой методикой — создайте на своем рабочем компьютере (на не системном диске, т.е. не на том, где имеется папка Windows) папку, в которую будете складывать будущие статьи в html формате.

Создайте там соответствующую структуру папок (как у хостера), и кладите туда картинки к статье. Например, для Joomla это может такая структура: «корень_сайта/images/stories/articles/файлы_картинок». Потом, вы можете настроить синхронизацию каталогов в FTP клиенте FileZilla и скопировать их на хостинг.

Статья делается в Dreamveawer

Когда придет время, вы в FTP клиенте синхронизируете папки «/images/» у себя на компьютере и на компьютере хостинг-провайдера. Скопируете все новые картинки на хостинг.

Затем, вы скопируете код статьи из Dreamweaver — в окно кода wysiwyg — редактора, при создании статьи, в Админке вашего сайта в Интернет. Если вы уже вставили картинки, используя относительную адресацию к ним, то все картинки «подхватятся» сайтом и будут видны в статье.

Плюс этого метода — исходники статьи будут у вас на локальном компьютере.

Делаем резервную копию (дамп) базы данных сайта

Альтернативой «PHP MyAdmin» вашего хостера, является PHP скрипт «Sympex Dumper 2» — он позволяет быстро сделать дамп базы данных сайта, и затем, восстановить базу из дампа. Применение скрипта — это несколько простых шагов:

1. Копируем каталог «sxd» по FTP в корень вашего сайта на хостинге, настраиваете права доступа на нужные каталоги,

2. Запускаем скрипт, набрав в строке браузера «http://домен_вашего_сайта.ru/sxd/»

3. Вводим логин и пароль к базе данных вашего сайта

4. Выбираем из списка БАЗУ Данных этого сайта

5. Делаем ДАМП средствами самого скрипта

Вы можете посмотреть фрагмент видеоурока по использованию Sympex Dumper 2

При этом, в каталоге «sxd», что корне вашего сайта, появится папка «backup», в которой будет в том числе и файл «название_вашей_базы_Дата_создания_Время_создания.sql.gz» — это упакованный дамп вашей Базы. Рекомендую сразу же скачать его себе на компьютер, в надежное место.

Потом, вы с его же помощью, сможете восстановить Базу из этого дампа.

Осталось совсем немного для «полного спокойствия».

Делаем резервную копию всех файлов сайта

Тут есть два пути:

1. вы имеете доступ к своему сайту по SSH и знаете несколько команд UNIX SHELL для упаковки файлов в один архив

2. у вас нет доступа по SSH, или вы НЕ знаете команд UNIX SHELL (например, вы — начинающий, или — домохозяйка :-))

Рассмотрим второй вариант. Что вам остается? Опять тут можно выбрать «из двух зол» :

а) копировать все файлы сайта по FTP (по-одному) — долго и ненадежно (от получаса, до нескольких часов)

б) упаковать все файлы в один архив на сервере, и скачать его себе на компьютер (быстрее и надежнее)

Для второго варианта служит скрипт «Joomla! system tool» — полезная вещь во всех отношениях.

Joomla! system tool

Как им пользоваться? Да не сложнее предыдущего, по шагам:

1. Меняем пароль доступа в файле скрипта «jsys.php» на свой

2. Копируем файл «jsys.php» по FTP в корень вашего сайта на хостинге

3. Запускаем скрипт, набрав в строке браузера «http://домен_вашего_сайта.ru/jsys.php»

4. Вводим пароль к скрипту, который изменили в шаге 1

5. Переходим по ссылке «Файл Менеджер»

6. Выбираем файлы и папки для упаковки в единый архив

7. Щелкаем по ссылке «архивировать в tmp.zip» примечание

8. Ждем завершения операции упаковки и скачиваем (например по FTP) полученный zip-архив себе на компьютер, в надежное место

9. удаляем файл «jsys.php» по FTP (для безопасности)

10. Радуемся 🙂

*примечание* Так как файлов для упаковки много, а время работы скрипта у хостера, как правило, не более 30 сек, лучше архивацию делать по частям. Например, вначале паковать папки «administrator» и «components», а затем «добавить к архиву tmp.zip» все остальные папки и файлы (папку «cache» и «help» добавлять не обязательно).

Если у вас никак не получается создать архивный файл этим скриптом — вам придется научиться использовать SSH клиент и выучить несколько команд Unix Shell для ВЕБ мастера.

Кроме перечисленного, скрипт позволяет поменять пароль администратора Joomla!

Можно посмотреть важные настройки хостера (версию Операционной системы, PHP, модули и настройки серверов и т.п.)

Не забудем мысленно (а лучше письменно) сказать «Спасибо» автору скрипта — Dead Krolik’у.

Восстанавливаем Joomla

Теперь у нас есть все необходимое для восстановления работы сайта — файлы сайта и дамп базы. Если «злые хакеры» уничтожат все файлы вашего сайта, делаете простые действия:

1. в контрольной панели вашего хостера меняете пароль доступа по FTP к вашему сайту на сложный (так, на всякий случай)

2. закачиваете в корень сайта «jsys.php»

3. закачиваете в корень сайта архив всех файлов сайта

4. запускаете скрипт «Joomla! system tool» и вводите пароль доступа к скрипту

5. восстанавливаете все файлы сайта из архива

6. восстанавливаете БАЗУ Данных

7. в контрольной панели вашего хостера, меняете пароль к Базе Данных

8. удаляем файл «jsys.php» по FTP (для безопасности)

9. проверяем работу сайта

Если какой-то из приведенных в этом уроке скриптов не работает — внимательно читаете readme.txt к каждому скрипту. Есть вероятность, что потребуется небольшая настройка. К примеру, в файле «dumper.php» может потребоваться заменить название (адрес) сервера MySQL, если он (адрес) отличен от localhost.

Если все же, что-то продолжает НЕ работать — вопросы к хостинг-провайдеру. Вполне возможно, у них стоят какие-то ограничения или не правильные настройки. Кстати это один из косвенных показателей качества хостинга.

Поделиться этим:

Комментарии 3

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *