Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Пример реализации в FreeBSD
Денис Пеплин
Резервное копирование, как правило, предусматривает наличие некоторого объема «ручной работы». Обычно это замена съемных носителей. Наличие этого этапа мешает полностью автоматизировать процесс и тем самым накладывает ограничение на частоту резервного копирования, а в некоторых случаях и на его регулярность. Выходом из ситуации может стать создание промежуточных копий на жестком диске. Это позволит, не снижая частоты резервного копирования, уменьшить частоту сохранения данных на съемные носители (а в некоторых случаях и вообще отказаться от него).
Вместе с тем надежность такого решения практически невозможно обеспечить, если жесткий диск подключен к тому серверу, с которого делается копия, и организация удаленного резервного копирования становится необходимостью.
Пример, о котором пойдет речь, несложно реализовать в любой системе, где есть ssh и tar (последний выбран произвольно и может быть заменен на cpio, pax или даже dump). Тем не менее, поскольку некоторые детали реализации будут различны даже для FreeBSD и Linux, пришлось отказаться от идеи сделать некий универсальный пример, что привело бы только к излишнему усложнению.
Выбор ssh обусловлен необходимостью обеспечить безопасность данных при передаче по сети. Тем не менее, этот выбор сам по себе не освобождает от необходимости принятия дополнительных мер безопасности как по отношению к данным, так и по отношению к серверу, служащему для сохранения резервных копий. Для этого, во-первых, необходимо правильно устанавливать права на файлы, во-вторых, все действия должны быть выполнены под пользователями с минимально возможными привилегиями, и, наконец, в качестве дополнительной меры нелишним будет применить chroot.
Ситуацию с правами на файлы проиллюстрирую на примере:
# tar -cf etc.tar /etc
# ls -l etc.tar
-rw-r--r-- 1 root wheel 1607680 7 мар 15:51 etc.tar
Теперь можно сравнить права на архив с правами на один из файлов, который был туда упакован:
# ls -l /etc/master.passwd
-rw------- 1 root wheel 6370 6 мар 18:02 /etc/master.passwd
Налицо нарушение безопасности. Исправить ситуацию поможет umask:
# rm etc.tar