Tag Archives: Защита информации

Предметная визуализация

Ещё 10 уловок для защиты WordPress’a

31e5c23c01dd3cf983925ba6b7d3fb39На сегодняшний день WordPress как никогда популярен. Блоги, мини-сайты, а то и целые порталы — всё это строится на основе такого удобного движка-конструктора как WordPress. Но за удобностью и лёгкостью освоения кроются, прежде всего, вопросы, связанные с безопасностью вашего сайта. Большая распространённость — большее внимание злоумышленников.

В этой статье описаны десять простых уловок, которые позволят сделать ваш сайт на WordPress’e ещё более защищённым и позволят спокойнее спать по ночам.

1. Защищаем WordPress от XSS-инъекций

В чём проблема?
Программисты всегда стараются защитить GET- и POST- запросы, однако, иногда этого недостаточно. Необходимо защитить блог от XSS-инъекций и попыток модификации переменных GLOBALS и _REQUEST.

Что делаем?
Этот код блокирует использование XSS-инъекций и попытки модифицировать переменные GLOBALS и _REQUEST. Вставьте код в ваш файл .htaccess, расположенный в корне сайта. (И не забывайте бэкапить этот файл перед внесением любых изменений).

Как это работает?
Код позволяет проверять все запросы. Если запрос содержит тег или попытку модифицировать значение переменных GLOBALS и _REQUEST, он просто блокирует его и выдаёт пользователю 403-ю ошибку.

 

2. Убираем показ лишней информации


В чём проблема?
Если при попытке зайти в админку WordPress’a вы ошибётесь с логином или паролем, вежливый движок скажет вам об этом. Ну а зачем злоумышленнику знать, что пароль, который он пытается подобрать – неверен? Давайте просто уберём вывод этой информации и чуток запутаем его.

Что делаем?
Открываем functions.php, лежащий в папке с активной темой нашего блога (wp-content/themes/название-вашей-темы/) и добавляем следующий код:

сохраняем файл. Вуаля – больше никаких сообщений.

Как это работает?
С помощью этого хука мы переписываем стандартную функцию login_errors(). В результате этого, в случае, когда введены неправильный логин или пароль, никакой информации, объясняющей ситуацию не появится — то, что нам нужно.

 

3. Принудительное использование SSL


В чём проблема?
Если вы хотите, чтобы передаваемая вами информация была защищена, вам необходимо использовать SSL—протокол, обеспечивающий целостность и конфиденциальность обмена данными. В WordPress’e это сделать проще простого.

Что делаем?
Прежде всего узнаём, есть ли возможность у вашего провайдера использовать SSL. Если да, то открываем файл wp-config.php (обитающий в корне сайта) и добавляем следующую строку:

Как это работает?
Всё просто. WordPress использует множество констант и FORCE_SSL_ADMIN всего лишь одна из них. Эта константа включает принудительное использование SSL при заходе в панель администратора.

 

4. Используем .htaccess для защиты файла wp-config


В чём проблема?
wp-config.php содержит все данные, необходимые для подключения к серверу MySQL и базе данных. Защита этого файла – одна из самых главных задач.

Что делаем?
Находим файл .htaccess в корне нашего сайта и добавляем следующие строки:

Как это работает?
Мы просто запрещаем доступ к этому файлу кому бы то ни было. Теперь уж точно ни один бот не сможет и близко подойти к этому файлу.

 

5. Скрываем версию WordPress’a


В чём проблема?
Wordpress автоматически вставляет номер своей версии в исходный код страниц. К сожалению, не всегда удаётся вовремя обновлять движок. А это означает, что зная какая у вас версия WordPress’a со всеми её брешами и слабыми местами, злоумышленник может очень-очень огорчить вас. Что делаем? Правильно, убираем вывод версии.

Что делаем?
Снова открываем functions.php, лежащий в папке с активной темой нашего блога (wp-content/themes/название-вашей-темы/) и добавляем туда этот код —

Как это работает?
Хуки WordPress'a позволяют легко заменять одну функцию на другую. Именно этим мы сейчас и воспользовались – мы просто запретили вывод информации о версии нашего движка.

+ как справедливо указал пользователь rOOse, необходимо также удалить файл readme.html, находящийся в корне сайта. В нём тоже содержится информация о текущей версии WordPress’a.

 

6. Баним спамеров и ботов

 

af963c4e9c2a3c07fc7695bd1cc9d5bbВ чём проблема?
Надоедливые постеры и спамеры. Решение – запретить им доступ к сайту по IP. Конечно, это не защитит от спам-скриптов, постоянно меняющих прокси, но немного облегчить жизнь вполне может.

Что делаем?
Вставьте этот код в файл .htaccess. Просто поменяйте адрес 123.456.789 на IP того редиски нехорошего человека, который вас достаёт и всё — он забанен всерьёз и надолго.

Как это работает?
И снова нам на помощь приходит apache. Посредством файла .htaccess мы запрещаем доступ к сайтe пользователям с конкретным IP. Нужно забанить ещё кого-то? Просто добавим ещё одну строку, к примеру -

7. Пишем плагин для защиты от зловредных url-запросов

266ee8d62ecf692be36531fcaafdab99 В чём проблема?
Хакеры и недохакеры всех родов очень часто пытаются найти слабые места при помощи всевозможных зловредных запросов. WordPress неплохо защищён от этого, но лишняя защита никогда не повредит.

Что делаем?
Создаём новый файл под названием blockbadqueries.php и помещаем его в папку wp-content/plugins. Затем просто активируйте его в админке как любой другой плагин.

Как это работает?
Работа этого плагина проста – он проверяет все длинные запросы (более 255 символов) и наличие php-функций eval или base64 в URI. Если что-то из этого находится, браузеру пользователя отдаётся страница с ошибкой 414.

 

8. Личеры!


В чём проблема?
Мир полон добрых людей, которые изо всех сил пытаются донести до других новость или статью, написанную вами. Всё бы ничего, но ведь по доброте душевной они берут картинки прямо с наших с вами серверов, скромно забывая при этом про слово «трафик». А теперь представьте что будет, если ссылки на наши картинки попадут на какой-нибудь популярный китайский блог, с их-то почти уже четырёхсотмиллионным интернет-населением! Свят-свят-свят… Значит сейчас будем защищать хотлинкинг, a.k.a. личинг, a.k.a. «да я просто вставил ссылки на файлы с вашего сервера».

Что делаем?
И опять всемогущий apache поможет защищить нам наш трафик. Достаём в очередной раз файлик .htaccess и пишем следующее:

Как это работает?
При помощи этих правил мы заставляем сервер проверять откуда пришёл запрос на нашу фотку — если со страниц нашего сайта, он отдаёт её пользователю. Если с «вражеского» — то показывает личерам какую-нибудь обидную картинку.

 

9. Убить админа. (Нет дефолтному юзернейму «admin»)!

80a6f9955e1b96bde313b8ef36811321В чём проблема?
Злоумышленникам всегда проще получить доступ к сайту при помощи брута, если уже известен логин. При этом на протяжении многих лет дефолтный логин админа был примитивным до зубного скрежета — «admin».

Надо сказать, что в новом WordPress 3.0 у вас есть право указать любой логин, какой только душе будет угодно. Для остальных версий нужно применить одно волшебное заклинание.

Что делаем?
Просто выполняем этот запрос к базе данных:

Как это работает?
С помощью sql-запроса меняем дефолтный логин. Правда, есть одно «но». Посты, написанные ранее admin'ом не поменяют своего автора. А для того чтобы извести admin'a на корню, необходимо выполнить ещё один запрос:

10. Защита директорий на сервере от просмотра


В чём проблема?
Очень многие хостеры позволяют просматривать директории на своих серверах. Поэтому, если ввести в адресную строку www.вашблог.ru/wp-includes, то очень часто можно увидеть всё содержимое этой директории. Безусловно это небезопасно, поэтому лучше это сразу запретить.

Что делаем?
Вы можете либо добавить пустые файлы index.html в папки, просмотр которых хотели бы запретить. Либо дополнить наш .htaccess ещё одной строкой:

Как это работает?
Пустой index.html будет выдаваться каждый раз, когда последует запрос к директории. Ну а директива в .htaccess просто запрещает апачу выдавать список содержимого директории.


Источник: http://habrahabr.ru/post/98083/

 

Разработка и создание сайтов, интернет-магазинов, веб-приложений, порталов, лэндингов, мобильных приложений (Киев)

Защита файла wp-config.php в nginx

Автор: Рудюк С . А.
https://corp2.net

E-Mail: rs@corp2.net

В файле wp-config.php CMS WordPress хранит пароли и логины для доступа к базе данных. Это очень безопасная информация. Есть вероятность, что в момент отладки приложения или веб-сервера данный файл может быть доступен злоумышленникам, поэтому, рекомендуется защищать данный файл от доступа в веб-серверах.

Защита в веб-сервере Apache указывается в файле .htaccess:

Защита в веб-сервере Nginx:

Автор: Рудюк С . А. https://corp2.net

Разработка и создание сайтов, интернет-магазинов, веб-приложений, порталов, лэндингов, мобильных приложений (Киев)

Безопасность WordPress. 3 самых эффективных способа защиты от брутфорса

По статистике, около 19% от общего количества всех сайтов Интернета, работают на WordPress — это почти каждый пятый сайт. Успех платформы вполне логичен и закономерен, не зря еще 5 лет назад я сделал ставку именно на нее. Но сегодня речь пойдет не о преимуществах WordPress, а о его безопасности. Высокая популярность платформы активизировала злые силы, и вот уже на протяжении нескольких месяцев в Рунете идут массовые атаки на сайты, работающие на WordPress. Атаки настолько серьезные и настолько массовые, что не выдерживают даже самые мощные серверы. Хостинг-провайдеры, конечно, принимают меры, порой даже самые радикальные, вплоть до полной блокировки администраторских консолей WordPress. Поэтому, если вас еще не заблокировали, лучше самостоятельно провести ряд несложный действий по укреплению обороны вашего WordPress.

В этой статье я расскажу о самых эффективных способах защиты вашего сайта именно от брутфорса (brute force) — метода подбора и взлома пароля путем перебора всех теоретически возможных вариантов. Так как все последние массовые атаки работают по этому методу.

1. Первое с чего нужно начать — это избавиться от пользователя admin. Если у вас нет пользователя admin, можете сразу переходить к пункту 2. В WordPress начиная с 3 версии это делается очень просто. Достаточно создать нового пользователя, наделить его администраторскими правами, а старого пользователя «admin» — удалить. При его удалении, WordPress предложит вам выбрать нового пользователя, который станет автором публикаций старого администратора.

В старых версиях WordPress эта процедура проделывается с помощью пары SQL-запросов:

2. Очень важно обратить внимание на пароль администратора. Лучше если это будет хаотичная комбинация заглавных и строчных букв, знаков и цифр не менее чем из 10-12 символов.

3. При бутфорсе WordPress, производится огромное количество запросов к файлу авторизации «wp-login.php», и будет правильно обеспечить ему двойную защиту.

Если вы работаете с сайтом один, и ваш интернет-провайдер предоставляет вам статичный IP-адрес, вы можете разрешить доступ к директории «wp-admin» только с вашего IP-адреса, заблокировав тем самым для всех остальных даже возможность авторизации. Делается это следующим образом. В директории «wp-admin» создаем файл «.htaccess» следующего содержания:

Где IP — это ваш IP-адрес. Узнать его вы можете, например, здесь.

Если же, кроме вас с сайтом работают еще люди со статическими IP-адресами, вы можете просто добавить их в список ниже. Например, так:

Где, IP1, IP2, IP3 — разрешенные IP-адреса.

Благодаря этому, все пользователи (боты) с IP-адресами, не указанными в списке разрешенных, просто не получат доступа к директории «wp-admin» и, соответственно, не смогут брутфорсить файл «wp-login.php». Всем им будет возвращаться ошибка 403.

Если провайдер вам выдает динамический IP-адрес, меняющийся с каждым новым подключением к Интернету, тогда этот способ не пройдет, т.к «.htaccess» придется редактировать при каждом вашем подключении к Сети. С помощью все того же «.htaccess» мы можем установить дополнительную серверную HTTP-авторизацию. Делается это следующим образом.

Все в той же директории «wp-admin» создаются два файла: «.htaccess» и «.htpasswd». В первом будут храниться инструкции, во втором разрешенные данные для доступа к директории.

В «.htaccess» пишем следующее:

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

Или другим способом:

Если вы по каким-то причинам не хотите паролить всю директорию «wp-admin», вы можете запаролить непосредственно файл «wp-login.php». Делается это аналогично, но в «.htaccess» нужно написать следующее:

Файл «.htpasswd» в обоих случаях должен выглядеть следующим образом:

Где username — это имя разрешенного пользователя, а password — это пароль. Обратите внимание, что пароль хранится в зашифрованном виде. Поэтому, предварительно ваш пароль нужно зашифровать. Сделать это можно, например, с помощью этого сервиса. На пароль действуют те же правила, что указаны в пункте 2 данной публикации.

Для использования нескольких пользователей с паролями, вы можете просто перечислить их по-порядку. Например, вот так:

Если вы сделаете все правильно, перед авторизацией в WordPress вам будет предложено ввести логин и пароль доступа к директории (файлу). И только после успешного входа вы сможете авторизоваться и войти в администраторскую консоль.

В Safari 6.0.5 на Mac OS это выглядит примерно так:

htpasswd

В других браузерах возможно немного иначе.

Выполнив хотя бы эти 3 пункта, вы в разы снизите вероятность взлома вашего WordPress.

Дополнительные меры по защите WordPress

Дополнительно вы можете защитить таким же образом файл настроек WordPress «wp-config.php». Я бы рекомендовал его защитить, потому что в нем содержатся данные для подключения к БД MySQL. Делается это аналогично:

Также, я бы рекомендовал вам проверить директории вашего сайта. Дело в том, что очень многие хостеры и безалаберные сисадмины не закрывают по-дефолту просмотр директорий сайтов своих клиентов. Если, к примеру, ввести в адресную строку браузера: http://вашсайт/wp-includes/ и вы увидете содержимое этой директории — нужно бить тревогу и срочно закрывать просмотр. Для этого можно создать в директориях, которые вы хотите закрыть от просмотра, пустые файлы «index.html» или дописать в ваш «.htaccess» всего одну строку:

Которая запретит серверу показывать содержимое директорий.

Кроме всего прочего, вы можете самостоятельно установить плагины безопасности WordPress, рекомендованные разработчиками платформы.

Их обзор в рамках данной публикации я проводить не буду.

Если в процессе настройки защиты WordPress от брутфорса у вас возникнут сложности — вы всегда можете обратиться ко мне за помощью. Контакты здесь.

3D визуализация и интерьер

Предметная визуализация

Приложение SECUREit в Lenovo S860

Автор: Рудюк С . А.
https://corp2.net

E-Mail: rs@corp2.net

Нужно признать, что телефон Lenovo S860 (black) оправдал все мои надежды:
— Данный телефон дешевле, чем телефоны Samsung Galaxy — мне он обошелся около 3 тыс. грн.
— В нем вставляется 2 SIM-карты.
— Параметры его конкурируют даже с одно-симковыми телефонами Samsung Galaxy.
— Высокое время реальной автономной работы в активном режиме эксплуатации 2-3 дня.
— Большой удобный экран.
— Есть дополнительное программное обеспечение SECUREit — для защиты информации на телефоне.
С помощью SECUREit можно отслеживать трафик, производить удаленную блокировку и удаление данных с телефона, снимать задачи, оптимизировать процессы. защищаться от спама и  т.п.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Резервное копирование информации между серверами. Защита информации от рейдеров

Автор: Рудюк С . А.
https://corp2.net

E-Mail: rs@corp2.net

В сегодняшнее псевдо-правовое время, никто не может быть спокоен за безопасность техники и информации на ней. Даже если Вы запрячете информацию в бункер, к Вам могут прийти право-охранительные органы, взломать двери и достать оттуда всю технику. И сделать этом могут без выдвижения обвинения, а лиш назвав Вас «свидетелем». При этом, свидетелем какого дела и почему изымается — могут не объяснять. Адвокатов — могут не пускать. Подобные ситуации в Украине — не редкость. И в последнее время, в связи с происходящей неразберихой в стране — участились.

Изъятие информации — это один из самых серьезных и самых дешевых способов удара по предприятию. Многие компании, после таких действий вынуждены распускать персонал и закрывать свою деятельность. Т.к. даже начислить зарплату или отчитаться в налоговой не могут — вся информация «изъята». Что же делать, если работать приходится в псевдо-прововом государстве ?
Храните информацию распределенно по всему миру, синхронизируйте её между собой, храните в недоступных местах для потенциальных рейдеров и рекетиров.

В данной статье рассказывается, как построить распределенную систему хранения информации.

Структура сети

Итак, рассмотрим примерную структуру хранения информации.

Здесь мы имеем структуру из 5 точек, которые синхронизируются друг с другом через интернет. Данная синхронизация может происходить в разное время, с применением динамических ip-адресов и использованием прокси-серверов из-за чего «вычислить» и уничтожить все узлы сразу — сравнительно проблематично. Не говоря о том, что сервера могут находиться в разных странах, числиться за разными людьми и управляться разными администраторами.
Количество узлов делается настолько большим, насколько критична потеря информации и насколько высоки потенциальные потери от этого.

Структура сервера

Нужно всегда помнить, что физический доступ любого из узлов в любой момент может оказаться у злоумышленников. А это значит, что информацию нужно шифровать.
На представленной выше схеме показано схематически, как можно хранить информацию:
1. В качестве основной операционной системы используется Linux Ubuntu. Эта операционная система бесплатна, достаточно устойчива к вирусным атакам и попыткам взлома. Данная система способна работать непрерывано без перезагрузки годами. А так же постоянно обновляется и совершенствуется. Обновления Вы можете ставить не мешая работе пользователей. Словом, преимуществ очень много, перед тем же Windows.
2. Фактически в основной операционной системе ничего не хранится — только файл крипто-провайдера, в котором сохраняется вся информация.
Криптопровайдер может выглядеть в виде любого файла, например, в виде виде, свопа и т.п. Файл может иметь как статический (более стабильно работает), так и динамический размер.
Можно использовать, например, контейнер truecrypt. Такой контейнер может работать в различных операционных системах: Windows, Linux, MacOS. И это очень хорошо, т.к. позволяет переписать криптопровайдер с одного компьютера на другой, даже если операционные системы отличаются.
3. Внутри криптопровайдера сохраняем основную операционную систему с которой работаем. Это может быть на Ваше усмотрение, например Windows. Хотя, никто не мешает размещать Linux, MacOS и т.п.
В качестве «движка» виртуальной машины можно использовать бесплатные virtualbox или vmplayer.
4. Сама информация уже хранится вниутри виртуальной машины. И именно её бекапим на различные сервера.

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

Структура накопителей информации

Накопители информации, можно подлкючать непосредственно к сетевым шлюзам, поддерживающим подключение устройств по USB. Т.к. накопители не имеют операционной системы, храним информацию в «открытом виде», но в виде архива с шифрацией :). Пароль желательно подбирать беспорядочным сочетанием английских, русских букв, а так же спец-символов и цифр. Такой пароль должен быть более 12 символов, а лучше делать более 100. Никто не ограничивает Вас в длине пароля. Чем больше пароль — тем сложней его «взломать» методом перебора даже на много-ядерных серверах.

Программная реализация

Структура серверов может быть не однородной и работать под различными операционными системами. Например, у меня часто используются Linux, Windows XP, Windows Server. Поэтому, я опишу реализацию резервного копирования для каждой из этих систем.
Так же нужно определиться с переодичностью резервного копирования. Практика показывает, что хватит полностью архивировать информацию один раз в квартал, а каждую неделю делать- инкрементный бекап (т.е. делать резервную копию изменений). Такой подход сэкономит дисковое пространство, а так же процессорное время. При этом, информация будет сохранена в полной мере.
Файловую информацию сохраняем с помощью архиватора 7zip с применением шифрации.
А информацию из баз данных сохраняем с помощью утилит соответствующей базы данных для резервного копирования с последующей архивацией бекапа с помощью 7zip с применением шифрации.
Обмен шифрованными файлами между серверами и накопителями производится через интернет по ftp или ssh.

Передача информации между серверами
Передачу информации производим с помощью утилиты curl. Данная утилита есть для всех основных операционных систем: Windows, Linux, MacOS. И это хорошо, т.к. позволяет использовать одинаковый подход в разных операционных системах.
Почитать о данной команде и найти где закачать Вы можете из Wikipedia: https://ru.wikipedia.org/wiki/CURL

Есть еще вариант — использовать wput. Но, как оказалось, данная команда хуже работает да и поддерживает меньше протоколов.

Windows XP

Обычно, данные в Windows XP — это данные обычных пользователей. Например, личные документы, фотографии и т.п.

1. Полный бекап (Производим полное резервное копирование 1 раз в квартал). Назовем его backup_inc.bat. В моем случае, скрипты для резервного копирования находятся по адресу: C:\backup_full, а сами полные бекапы сохраняются по адресу: C:\backup_full\full_arh.

echo on

echo Этот код оставил для возможности указания даты при необходимости сохранения ежедневных копий:   for /f «tokens=1-4 delims=/ » %%i in («%date%») do (
set dow=%%i
set month=%%j
set day=%%k
set year=%%l
)
set datestr=%month%_%day%_%year%
echo datestr is %datestr%

echo 1. Архивация конфигурационных файлов (Не забываем делать копии конфигурационных файлов. Ведь не хочется их заново писать…)

xcopy C:\backup_full\*.bat C:\backup_full\configs_tmp /Y
«C:\Program Files\7-Zip\7z.exe» a «C:\backup_full\full_arh\configs_tmp_rud.7z» -r -mx5 «C:\backup_full\configs_tmp» -p»ВашПарольДлинойБолее12Символов»

echo 2. Архивация Документов
«C:\Program Files\7-Zip\7z.exe» a «C:\backup_full\full_arh\docs.7z» -r -mx5 «C:\docs» -p»ВашПарольДлинойБолее12Символов»

echo ###### Архивация завершена #######

C:
cd C:\backup_full

echo II.1. Подключаюсь по ftp и изменяю названия архивов старых архивов
echo ftp> ftp_backup.txt
echo open>> ftp_backup.txt
echo IPАдресВашегоFTPСервера>> ftp_backup.txt
echo rud>> ftp_backup.txt
echo ПарольКFTP>> ftp_backup.txt
echo literal PASV>> ftp_backup.txt
echo cd КаталогНаFTP>> ftp_backup.txt
echo binary>> ftp_backup.txt
echo literal PASV>> ftp_backup.txt

echo rename configs_tmp_rud.7z configs_tmp_rud_old.7z>> ftp_backup.txt
echo rename docs.7z docs_old.7z>> ftp_backup.txt

echo bye>> ftp_backup.txt

ftp -s:ftp_backup.txt

cd C:\backup_full

echo III.1 Копирование информации по ftp
curl -T C:\backup_full\full_arh\configs_tmp_rud.7z -u admin:ПарольОтFTP ftp://ВашFTP/КаталогНаFtp/
curl -T C:\backup_full\full_arh\docs.7z -u admin:ПарольОтFTP ftp://ВашFTP/КаталогНаFtp/

2. Инкрементное резервное копирование (производим 1 раз в неделю). Полный архив обязательно должен оставаться на локальном компьютере, т.к. при формировании инкрементного архива производится сравнение файлов с файлами в полном архиве.
Назовем инкрементное резервное копирование backup_inc.bat.

echo on

for /f «tokens=1-4 delims=/ » %%i in («%date%») do (
set dow=%%i
set month=%%j
set day=%%k
set year=%%l
)
set datestr=%month%_%day%_%year%
echo datestr is %datestr%

echo 1. Архивация конфигурационных файлов
xcopy C:\backup_full\*.bat C:\backup_full\configs_tmp /Y
«C:\Program Files\7-Zip\7z.exe» a «C:\backup_full\inc_arh\configs_tmp_rud_changes.7z» -r -mx5 «C:\backup_full\configs_tmp» -p»ВашПарольДлинойБолее12Символов»

echo 2. Архивация Исходных файлов Корпорация 2
«C:\Program Files\7-Zip\7z.exe» u «C:\backup_full\full_arh\docs.7z» -u- -up3q3r2x2y2z0w2!C:\backup_full\inc_arh\docs_changes.7z «C:\docs» -p»ВашПарольДлинойБолее12Символов»

echo ###### Архивация завершена #######

C:
cd C:\backup_full

echo II.1. Подключаюсь по ftp и изменяю названия архивов старых архивов
echo ftp> ftp_backup.txt
echo open>> ftp_backup.txt
echo ПутьКFTP>> ftp_backup.txt
echo rud>> ftp_backup.txt
echo ПарольКFTP>> ftp_backup.txt
echo literal PASV>> ftp_backup.txt
echo cd КаталогНаFTP>> ftp_backup.txt
echo binary>> ftp_backup.txt
echo literal PASV>> ftp_backup.txt

echo rename configs_tmp_rud_changes.7z configs_tmp_rud_changes_old.7z>> ftp_backup.txt
echo rename docs_changes.7z docs_changes_old.7z>> ftp_backup.txt

echo bye>> ftp_backup.txt

ftp -s:ftp_backup.txt

cd C:\backup_full

echo III.1 Копирование информации по ftp
curl -T C:\backup_full\inc_arh\configs_tmp_rud_changes.7z -u admin:ПарольКFTP ftp://ВашFTP/КаталогНаFTP/
curl -T C:\backup_full\inc_arh\docs_changes.7z -u admin:ПарольКFTP ftp://ВашFTP/КаталогНаFTP/

3. Устанавливаем планировщик на выполнение задач. Для полного бекапа — 1 раз в квартал. Для инкрементного резервного копирования — 1 раз в неделю. Бекап делаем ночью — чтоб не мешать работе пользователей (правда пользователи в этом случае не должны выключать компьютер наночь).

Зададим задачу выполнения скрипта полного резервного копирования 1 раз в  квартал.
Запускаем меню:
     Пуск — Программы — Стандартные — Служебные — Назначение задания — Добавить Задание

 

 

 

 

 

Задание для инкрементного резервного копирования делаем аналогично предыдущему пункту только для файла backup_full.bat и за исключением 2-х пунктов, определяющих время срабатыварния:

 

Windows Server
На серверной версии Windows могут находиться базы данных, большое количество документов, конфигурации 1С и т.п.
По аналогии с WindowsXP сохраняем скрипты и бекапе в каталог: C:\backup_full.
Файл для полного резервного копирования backup_full.bat:

echo on

for /f «tokens=1-4 delims=/ » %%i in («%date%») do (
set dow=%%i
set month=%%j
set day=%%k
set year=%%l
)
set datestr=%month%_%day%_%year%
echo datestr is %datestr%

echo 1. Архивация конфигурационных файлов
xcopy C:\backup_full\*.bat C:\backup_full\configs_tmp /Y
«C:\Program Files\7-Zip\7z.exe» a «C:\backup_full\full_arh\configs_tmp_fd.7z» -r -mx5 «C:\backup_full\configs_tmp» -p»ВашПарольНаБолее12Символов»

echo 2. Архивация 1С
«C:\Program Files\7-Zip\7z.exe» a «C:\backup_full\full_arh\1cbase.7z» -r -mx5 «C:\1cbase» -p»ВашПарольНаБолее12Символов»

echo 3. Архивация документов
«C:\Program Files\7-Zip\7z.exe» a «C:\backup_full\full_arh\docsfd.7z» -r -mx5 «C:\Docs» -p»ВашПарольНаБолее12Символов»

echo 3. Резервное копирование базы данных в MsSQL
SQLCMD -S (local) -E -Q «BACKUP DATABASE oberon TO DISK = ‘C:\backup_full\full_arh\oberone_backup.bak’ WITH INIT, NOFORMAT, SKIP, NOUNLOAD»
«C:\Program Files\7-Zip\7z.exe» a «C:\backup_full\full_arh\oberone_backup.7z» -r -mx5 «C:\backup_full\full_arh\oberone_backup.bak» -p»ВашПарольНаБолее12Символов»

echo ###### Архивация завершена #######
C:
cd C:\backup_full

echo II.1. Подключаюсь по ftp и изменяю названия архивов старых архивов
echo ftp> ftp_backup.txt
echo open>> ftp_backup.txt
echo ВашFTP>> ftp_backup.txt
echo ЛогинНаFTP>> ftp_backup.txt
echo ПарольНаFTP>> ftp_backup.txt
echo literal PASV>> ftp_backup.txt
echo cd КаталогНаFTP>> ftp_backup.txt
echo literal PASV>> ftp_backup.txt
echo literal PASV>> ftp_backup.txt

echo rename configs_tmp_fd.7z configs_tmp_fd_old.7z>> ftp_backup.txt
echo rename 1cbase.7z 1cbase_old.7z>> ftp_backup.txt
echo rename docsfd.7z docsfd_old.7z>> ftp_backup.txt
echo rename oberone_backup.7z oberone_backup_old.7z>> ftp_backup.txt

echo bye>> ftp_backup.txt

ftp -s:ftp_backup.txt

cd C:\backup_full

echo III.1 Копирование информации по ftp
curl -T C:\backup_full\full_arh\configs_tmp_fd.7z -u Логин:Пароль ftp://ВашFTP/КаталогВFTP/
curl -T C:\backup_full\full_arh\1cbase.7z -u Логин:Пароль ftp://ВашFTP/КаталогВFTP/
curl -T C:\backup_full\full_arh\docsfd.7z -u Логин:Пароль ftp://ВашFTP/КаталогВFTP/
curl -T C:\backup_full\full_arh\oberone_backup.7z -u Логин:Пароль ftp://ВашFTP/КаталогВFTP/

Файл для инкрементного резервного копирования backup_inc.bat:

echo on
echo Инкрементное архивирование
for /f «tokens=1-4 delims=/ » %%i in («%date%») do (
set dow=%%i
set month=%%j
set day=%%k
set year=%%l
)
set datestr=%month%_%day%_%year%
echo datestr is %datestr%

echo 1. Архивация конфигурационных файлов
xcopy C:\backup_full\*.bat C:\backup_full\configs_tmp /Y
«C:\Program Files\7-Zip\7z.exe» a «C:\backup_full\inc_arh\configs_tmp_fd_changes.7z» -r -mx5 «C:\backup_full\configs_tmp» -p»ВашПарольБолее12Символов»

echo 2. Архивация 1С
«C:\Program Files\7-Zip\7z.exe» u «C:\backup_full\full_arh\1cbase.7z» -u- -up3q3r2x2y2z0w2!C:\backup_full\inc_arh\1cbase_changes.7z «C:\1cbase» -p»ВашПарольБолее12Символов»

echo 3. Архивация документов
«C:\Program Files\7-Zip\7z.exe» u «C:\backup_full\full_arh\docsfd.7z» -u- -up3q3r2x2y2z0w2!C:\backup_full\inc_arh\docsfd_changes.7z «C:\Docs» -p»ВашПарольБолее12Символов»

echo 3. Резервное копирование MsSQL
SQLCMD -S (local) -E -Q «BACKUP DATABASE oberon TO DISK = ‘C:\backup_full\inc_arh\oberone_backup.bak’ WITH INIT, NOFORMAT, SKIP, NOUNLOAD»
«C:\Program Files\7-Zip\7z.exe» a «C:\backup_full\inc_arh\oberone_backup_changes.7z» -r -mx5 «C:\backup_full\inc_arh\oberone_backup.bak» -p»ВашПарольБолее12Символов»

echo ###### Архивация завершена #######

C:
cd C:\backup_full

echo II.1. Подключаюсь по ftp и изменяю названия архивов старых архивов
echo ftp> ftp_backup.txt
echo open>> ftp_backup.txt
echo ВашFTP>> ftp_backup.txt
echo ЛогинFTP>> ftp_backup.txt
echo ПарольFTP>> ftp_backup.txt
echo literal PASV>> ftp_backup.txt
echo cd КаталогНаFTP>> ftp_backup.txt
echo binary>> ftp_backup.txt
echo literal PASV>> ftp_backup.txt

echo rename configs_tmp_fd_changes.7z configs_tmp_fd_changes_old.7z>> ftp_backup.txt
echo rename 1cbase_changes.7z 1cbase_changes_old.7z>> ftp_backup.txt
echo rename docsfd_changes.7z docsfd_changes_old.7z>> ftp_backup.txt
echo rename oberone_backup_changes.7z oberone_backup_changes_old.7z>> ftp_backup.txt

echo bye>> ftp_backup.txt

ftp -s:ftp_backup.txt

cd C:\backup_full

echo III.1 Копирование информации по ftp
curl -T C:\backup_full\inc_arh\configs_tmp_fd_changes.7z -u ЛогинFTP:ПарольFTP ftp://ВашFTP/КаталогНаFTP/
curl -T C:\backup_full\inc_arh\1cbase_changes.7z -u ЛогинFTP:ПарольFTP ftp://ВашFTP/КаталогНаFTP/
curl -T C:\backup_full\inc_arh\docsfd_changes.7z -u ЛогинFTP:ПарольFTP ftp://ВашFTP/КаталогНаFTP/
curl -T C:\backup_full\inc_arh\oberone_backup_changes.7z -u ЛогинFTP:ПарольFTP ftp://ВашFTP/КаталогНаFTP/

По аналогии с WindowsXP настраиваем задания в Windows Server на выполнение скрипта полного резервного копирования 1 раз в квартал и скрипта инкрементного резервного копирования — 1 раз в неделю.

Linux Ubuntu
Сервера частно работаю на операционной системе Linux. Поэтому, тут есть и сайты и базы данных и конфигурационные файлы. Все это желательно сохранять. Т.к. даже если клиент не заботится о резервном копировании своих сайтов, то провайдер или администратор сервера должен все равно о этом заботиться.

Делаем изменения в /etc/crontab, чтоб бекап выполнялся один раз в квартал:
# m h dom mon dow user<>command
17 *<—>* * *<->root    cd / && run-parts —report /etc/cron.hourly
25 6<—>* * *<->root<—>test -x /usr/sbin/anacron || ( cd / && run-parts —report /etc/cron.daily )
47 6<—>* * 7<->root<—>test -x /usr/sbin/anacron || ( cd / && run-parts —report /etc/cron.weekly )
52 6<—>1 * *<->root<—>test -x /usr/sbin/anacron || ( cd / && run-parts —report /etc/cron.monthly )
52 6<—>3 * *<->root<—>test -x /usr/sbin/anacron || ( cd / && run-parts —report /etc/cron.kvartal )

Создаем каталог: etc/cron.kvartal. В него записываем скрипт backup_full и устанавливаем атрибуты на выполнение. Этот файл будет производить полное резервное копирование 1 раз в квартал. Содержимое этого файла:
Скрипт полного резервного копирования записываем в файл :

#!/bin/sh

echo ############################################
echo ## Полное резервное копирование
echo ############################################

echo 1. Копирование конфигурационных файлов
cp /media/truecrypt6/backup_full/backup_full /media/truecrypt6/backup_full/configs_tmp.
cp /media/truecrypt6/backup_full/backup_inc /media/truecrypt6/backup_full/configs_tmp.
7z a /media/truecrypt6/backup_full/full_arh/configs_tmp_host.7z -r -mx5 «/media/truecrypt6/backup_full/configs_tmp» -p»ВашПарольБолее12Символов»

echo 2. Apache
7z a /media/truecrypt6/backup_full/full_arh/apache_host.7z -r -mx5 «/etc/apache2″ -p»ВашПарольБолее12Символов»

echo 3. Nginx
7z a /media/truecrypt6/backup_full/full_arh/nginx_host.7z -r -mx5 «/etc/nginx» -p»ВашПарольБолее12Символов»

echo 4. PHP
7z a /media/truecrypt6/backup_full/full_arh/php_host.7z -r -mx5 «/etc/php5″ -p»ВашПарольБолее12Символов»

echo 5. Копирование сайтов
7z a /media/truecrypt6/backup_full/full_arh/sites_host.7z -r -mx5 «/media/truecrypt1/www» -p»ВашПарольБолее12Символов»

echo 6. Копирование баз данных MySQL
mysqldump -uroot -pПарольКMySQL -A > /media/truecrypt6/backup_full/full_arh/mysqldump_host.sql
7z a /media/truecrypt6/backup_full/full_arh/mysqldump_host.7z -r -mx5 «/media/truecrypt6/backup_full/full_arh/mysqldump_host.sql» -ВашПарольБолее12Символов»

echo ###### Архивация завершена #######
cd /media/truecrypt6/backup_full

echo II.1. Подключаюсь по ftp и изменяю названия архивов старых архивов

HOST=’СерверFTP’
USER=’ЛогинКFTP’
PASSWD=’ПарольКFTP’
FILE=’file.txt’

ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD

passive
cd КаталогВFTP

rename configs_tmp_host.7z configs_tmp_host_old.7z
rename apache_host.7z apache_host_old.7z
rename nginx_host.7z nginx_host_old.7z
rename php_host.7z php_host_old.7z
rename sites_host.7z sites_host_old.7z
rename mysqldump_host.7z mysqldump_host_old.7z

bye

quit
END_SCRIPT

cd /media/truecrypt6/backup_full

echo III.1 Копирование информации по ftp
curl -T /media/truecrypt6/backup_full/full_arh/configs_tmp_host.7z -u admin:ПарольКFTP ftp://СерверFTP/КаталогВFTP/
curl -T /media/truecrypt6/backup_full/full_arh/apache_host.7z -u admin:ПарольКFTP ftp://СерверFTP/КаталогВFTP/
curl -T /media/truecrypt6/backup_full/full_arh/nginx_host.7z -u admin:ПарольКFTP ftp://СерверFTP/КаталогВFTP/
curl -T /media/truecrypt6/backup_full/full_arh/php_host.7z -u admin:ПарольКFTP ftp://СерверFTP/КаталогВFTP/
curl -T /media/truecrypt6/backup_full/full_arh/sites_host.7z -u admin:ПарольКFTP ftp://СерверFTP/КаталогВFTP/
curl -T /media/truecrypt6/backup_full/full_arh/mysqldump_host.7z -u admin:ПарольКFTP ftp://СерверFTP/КаталогВFTP/

exit 0

Крипт инкрементного резервного копирования сохраняем в каталоге /etc/cron.weekly и называем, например backup_inc. Устанавливаем атрибуты 755.

Содержимое данного файла:

#!/bin/sh

echo ############################################
echo ## Инкрементное резервное копирование
echo ############################################

echo 1. Копирование конфигурационных файлов
cp /media/truecrypt6/backup_full/backup_full /media/truecrypt6/backup_full/configs_tmp.
cp /media/truecrypt6/backup_full/backup_inc /media/truecrypt6/backup_full/configs_tmp.
7z a /media/truecrypt6/backup_full/inc_arh/configs_tmp_host_changes.7z -r -mx5 «/media/truecrypt6/backup_full/configs_tmp» -p»ВашПарольБолее12Символов»

echo 2. Apache
7z a /media/truecrypt6/backup_full/inc_arh/apache_host_changes.7z -r -mx5 «/etc/apache2″ -p»ВашПарольБолее12Символов»

echo 3. Nginx
7z a /media/truecrypt6/backup_full/inc_arh/nginx_host_changes.7z -r -mx5 «/etc/nginx» -p»ВашПарольБолее12Символов»

echo 4. PHP
7z a /media/truecrypt6/backup_full/inc_arh/php_host_changes.7z -r -mx5 «/etc/php5″ -p»ВашПарольБолее12Символов»

echo 5. Копирование сайтов
7z u «/media/truecrypt6/backup_full/full_arh/sites_host.7z» -u- -up3q3r2x2y2z0w2!/media/truecrypt6/backup_full/inc_arh/sites_host_changes.7z «/media/truecrypt1/www» -p»ВашПарольБолее12Символов»

echo 6. Копирование баз данных MySQL
mysqldump -uroot -pПарольКMySQL -A > /media/truecrypt6/backup_full/inc_arh/mysqldump_host_changes.sql
7z a /media/truecrypt6/backup_full/inc_arh/mysqldump_host_changes.7z -r -mx5 «/media/truecrypt6/backup_full/inc_arh/mysqldump_host_changes.sql» -p»ВашПарольБолее12Символов»

echo ###### Архивация завершена #######
cd /media/truecrypt6/backup_full

echo II.1. Подключаюсь по ftp и изменяю названия архивов старых архивов

HOST=’СерверFTP’
USER=’ЛогинКFTP’
PASSWD=’ПарольКFTP’
FILE=’file.txt’

ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD

passive
cd КаталогНаFTP

rename configs_tmp_host_changes.7z configs_tmp_host_changes_old.7z
rename apache_host_changes.7z apache_host_changes_old.7z
rename nginx_host_changes.7z nginx_host_changes_old.7z
rename php_host_changes.7z php_host_changes_old.7z
rename sites_host_changes.7z sites_host_changes_old.7z
rename mysqldump_host_changes.7z mysqldump_host_changes_old.7z

bye

quit
END_SCRIPT

cd /media/truecrypt6/backup_full

echo III.1 Копирование информации по ftp
curl -T /media/truecrypt6/backup_full/inc_arh/configs_tmp_host_changes.7z -u admin:ПарольFTP ftp://СерверFTP/КаталогНаFTP/
curl -T /media/truecrypt6/backup_full/inc_arh/apache_host_changes.7z -u admin:ПарольFTP ftp://СерверFTP/КаталогНаFTP/
curl -T /media/truecrypt6/backup_full/inc_arh/nginx_host_changes.7z -u admin:ПарольFTP ftp://СерверFTP/КаталогНаFTP/
curl -T /media/truecrypt6/backup_full/inc_arh/php_host_changes.7z -u admin:ПарольFTP ftp://СерверFTP/КаталогНаFTP/
curl -T /media/truecrypt6/backup_full/inc_arh/sites_host_changes.7z -u admin:ПарольFTP ftp://СерверFTP/КаталогНаFTP/
curl -T /media/truecrypt6/backup_full/inc_arh/mysqldump_host_changes.7z -u admin:ПарольFTP ftp://СерверFTP/КаталогНаFTP/

exit 0

Заключение
Любая система может развиваться до бесконечности. Можно добавлять новые хранилища, узлы. Так же команды резервного копирования для различных баз данных могут отличаться друг от друга. Поэтому, не исключено, что со временем в эту статью будут добавляться новые команды, индивидуальные для определенной реализации.

Автор: Рудюк С . А. https://corp2.net

3D визуализация и дизайн

Дизайн интерьеров

Программа для шифрования данных Truecrypt

TrueCrypt — отличный инструмент для шифрации Ваших данных. С помощью этой программы Вы
формируете криптографический контейнер, который может выглядеть, как любой файл. Или как видео-файл огромных размеров или как файл подкачки. В любом случае, догадаться, что это крипто-контейнер может оказаться достаточно сложно. Вы подключаете с помощью программы True Crypt данный контейнер, вводите пароль и он подключается, как диск. Далее, работаете как с обычным винчестером ни о чем не задумываясь.
Данная программа развивалась как свободно распространяемая с открытым исходным кодом.
Стала очень популярной, т.к. данная программа кросс-платформенная и работает в основных компьютерных операционных системах: Windows, Linux и MacOS. Но, в один прекрасный момент, разработчик удалил все экземпляры из репозитария. Якобы причиной этого стало то, что есть внутри данной программы уязвимость. Но, думаю, реальная причина — «наезд» правоохранительных органов. Т.к. данная программа работала настолько
отлично, что криминал начал её активно использовать… И как результат, спец-службам стало проблематично получать доступ к данным, изымая компьютеры или сервера.
Как бы то ни было. Скажу по своему опыту: программа эффективна и оправдывает свое существование. Более того — бесплтна! А если Вы уж так боитесь, что есть «заплатка», можете закачать последний доступный
исходный код, проанализировать его и сделать свою компиляцию «без заплаток» :)
Далее, приведу описание данной программы, взятое из свободных источников информации:

Описание TrueCrypt

TrueCrypt
— компьютерная программа для шифрования «на лету» (On-the-fly encryption) для 32- и 64-разрядных операционных систем семейств Microsoft Windows NT 5 и новее (GUI-интерфейс), Linux и Mac OS X. Она
позволяет создавать виртуальный зашифрованный логический диск, хранящийся в виде файла. С помощью TrueCrypt также можно полностью шифровать раздел жёсткого диска или иного носителя информации, такой как
флоппи-диск или USB флеш-память. Все сохранённые данные в томе TrueCrypt полностью шифруются, включая имена файлов и каталогов. Смонтированный том TrueCrypt подобен обычному логическому диску, поэтому
с ним можно работать с помощью обычных утилит проверки и дефрагментации файловой системы.
Лицензия программы считалась свободной, однако при её проверке для включения TrueCrypt в
Fedora в октябре 2008 года были обнаружены опасные и делающие её несвободной неоднозначности. К ноябрю в лицензию были внесены исправления.
28 мая 2014 проект был закрыт, разработка свёрнута. Все старые версии удалены, репозиторий
очищен. Обстоятельства закрытия проекта вызвали множество догадок и обсуждений в ИТ сообществе.

Закачка программы TrueCrypt

Описание работы в Truecrypt

БАЗОВЫЙ УРОВЕНЬ
  1. О программе TrueCrypt. Немного теории
  2. Установка TrueCrypt, русификация и настройка. TrueCrypt Portable
  3. Создание простого тома и его монтирование (подключение) для последующей работы
  4. Защита флешки паролем при помощи TrueCrypt. Шифрование несистемного диска и внешних носителей
ПРОДВИНУТЫЙ УРОВЕНЬ (это вторая часть статьи)
  1. Создание скрытого тома TrueCrypt
  2. Шифрование системного диска и операционной системы (ОС)
  3. Создание скрытой ОС
  4. Немного о дешифрации
  5. TrueCrypt и виртуальные машины
  6. Правдоподобное отрицание причастности (Plausible Deniability)
  7. Требования безопасности, меры предосторожности, утечки данных
И начну я, как вы уже догадались из заголовка, с Базового уровня. Итак, поехали!

О программе TrueCrypt. Немного теории

TrueCrypt
– это бесплатное, кроссплатформенное криптографическое программное обеспечение (ПО) с открытым исходным кодом для шифрования данных «на лету» (On-the-fly encryption).
Данное ПО позволяет создавать отдельные криптоконтейнеры, шифровать целые разделы дисков,
сами диски (в т.ч. и системные), а также съемные устройства хранения данных (USB-флешки, floppy-диски, внешние HDD).
Шифрование «на лету» означает, что все данные шифруются и дешифруются перед непосредственным
обращением к ним (чтение или сохранение), и какого-либо участия пользователя в этом процессе не требуется. При всем при этом данные шифруются в полном объеме, включая заголовки файлов, их содержимое,
метаданные и т.п. Работает такое шифрование примерно так…
Допустим, у вас имеется видео-файл (пусть это будет приватное хоум-видео =)), который хранится в
зашифрованном контейнере. Следовательно, сам файл тоже зашифрован. При обращении к этому файлу (т.е. вы клацнули на нем дважды, и запустили) будет запущена программа, которая ассоциирована с этим типом файлов
(напр., VLC Media Player, или любой другой проигрыватель). Естественно, речь идет о ситуации, когда том смонтирован.
Так вот, при запуске файла через VLC Media Player, этот проигрыватель начинает загружать
небольшие порции данных из зашифрованного тома в ОЗУ (оперативную память), чтобы начать их воспроизводить. Пока часть этих данных загружается, TrueCrypt их расшифровывает в ОЗУ (не на HDD, как это
делают, например, архиваторы, создавая временные файлы, а именно в оперативной памяти). После того, как часть данных дешифруется, они воспроизводятся в проигрывателе, тем временем в ОЗУ поступает новая
порция зашифрованных данных. И так циклически, пока идет обращение к зашифрованному файлу.
Обратным примером шифрования «на лету» (и очень показательным), является то, например, как
работают архиваторы (WinRAR, 7-Zip и проч.). Как многие из вас знают, при запуске запароленного архива, после введения пароля, необходимо дождаться момента, когда искомый файл разархивируется (извлечется), и
только после этого он сможет быть прочитан (запустится). В зависимости от размера заархивированного файла и общего размера архива – это может занять очень длительное время. Кроме того, архиваторы создают временные локальные копии извлекаемых файлов, которые уже расшифрованы и хранятся
на жестком диске в открытом виде. О чем я уже упоминал, и что не есть хорошо, когда речь идет о чем-то конфиденциальном. Смонтированный же том, аналогичен обычному логическому диску или подключенному внешнему устройству (напр., флешке). И в этом плане с томом можно работать посредством всех стандартных средств, как-то, проводник Windows, файловый менеджер и т.д.. В том числе и скорость работы с этим
виртуальным диском (томом) чисто визуально аналогична тому, как если бы вы работали с обычным HDD или флешкой.
И еще один момент — все данные, находящиеся в зашифрованном контейнере (разделе диска,
логическом диске, съемном носителе, etc.) могут быть расшифрованы только при введении соответствующего пароля или ключевого файла. Не зная пароль, или не имея key-файла, расшифровать данные практически не
представляется возможным. По крайней мере, в наш век и в ближайшие годы. Итак, подытожим ключевые особенности и возможности, а также преимущества TrueCrypt:
  • открытый исходный код, свободное (бесплатное) распространение, а
    также возможность портативного использования (portable truecrypt);
  • кроссплатформенность – на момент написания статьи, TrueCrypt
    работает с ОС Windows, начиная с 2000/XP и выше (x32/x64), GNU/Linux
    (32- и 64-разрядные версии, ядро 2.6 или совместимое) и Mac OS X (10.4
    Tiger и выше);
  • стойкие алгоритмы шифрования — AES-256, Serpent и Twofish (в т.ч. и возможность их комбинирования);
  • шифрование осуществляется «на лету» (в реальном времени), и совершенно не заметно для пользователя;
  • возможность создания как отдельных файловых контейнеров (в том числе
    и динамически расширяющихся), так и шифрования целых разделов жесткого
    диска, включая системные (дозагрузочная аутентификация);
  • создание зашифрованных контейнеров, как на локальных дисках, так и на съемных, в том числе и в «облаке»;
  • внешне криптоконтейнер может выглядеть как обычный файл с любым
    расширением (или же без расширения), например, txt, doc(x), mp3, img,
    iso, mpg, avi и т.д.;
  • полное шифрование содержимого устройств — жестких дисков, съемных носителей;
  • создание скрытых томов, в т.ч. и скрытой ОС;
  • различные вариации правдоподобного отрицания причастности, включая и
    то, что в системе невозможно однозначно определить наличие томов
    TrueCrypt – они представляют собой всего лишь набор случайных данных и
    идентифицировать их с TrueCrypt не представляется возможным (не считая
    метода termorectum cryptoanalysis);
  • и множество, множество других возможностей и функций….
Что касается открытого исходного кода…
Вообще, это считается гарантией того, что разработчик не «вшил» какие-то лазейки («закладки»,
«бэкдоры») в свой продукт. Ведь любой желающий (это, конечно, грубо сказано, т.к. для этого нужно обладать очень обширными знаниями, профессиональными навыками и некими аппаратными ресурсами, но факт остается фактом – код доступен для каждого) может проанализировать исходные коды, и поделиться своим исследованием с сообществом. И я целиком и полностью поддерживаю эту концепцию.
Для сравнения возьмем другое криптографическое ПО, встроенное в некоторые версии Windows – BitLocker.
Исходные коды BitLocker закрыты, где тогда гарантия того, что в него не вшиты бэкдоры? Где гарантия того, что BitLocker не имеет общего мастер-ключа для дешифрации данных? Аналогичная ситуация складывается и с
прочим ПО с закрытыми исходниками.
Это, конечно же, не значит, что тот же BitLocker наверняка имеет «закладки». Но и подтвердить обратное не представляется возможным.
Так что, гарантий никаких. А учитывая все те же разоблачения Сноудена, выбор в сторону свободного и открытого ПО становится очевидным. Особенно, когда речь идет о критических данных.
Что касается TrueCrypt, то здесь есть занятный момент. Совсем недавно был создан проект IsTrueCryptAuditedYet, и начат сбор средств для оплаты независимого аудита TrueCrypt. Сам аудит предполагается провести по следующим направлениям:
  • юридический анализ лицензии ТруКрипт на соответствие требованиям, к примеру, лицензии GNU GPL (т.е. действительно ли данное ПО может считаться свободным);
  • проверка на идентичность исходных кодов и бинарных версий ТруКрипт – идентичность позволит уверенно заявлять, что в исполняемый exe-файл с офсайта не «вшиты» никакие бэкдоры;
  • полный аудит исходников
Заявленная сумма уже набрана, но сбор еще продолжается (на момент написания статьи). И первые
результаты не заставили себя долго ждать. В конце октября были опубликованы результаты проверки на идентичность готовой сборки (exe-файла с официального сайта) сборке,  созданной собственными
усилиями из исходников. Вердикт – официальная сборка (дистрибутив) не содержит каких-либо скрытых функций.  Что ж, это радует. Осталось дождаться главного – проведения полного аудита.
Ну а мы плавно перейдем к практике…

Установка TrueCrypt, русификация и настройка. TrueCrypt Portable

Первым делом, конечно
же, нужно скачать TrueCrypt. Делаем это исключительно с официального
сайта http://www.truecrypt.org/downloads (официальный сайт закрыт! Читайте об этом по предупредительной ссылке в начале статьи). Текущая актуальная версия — 7.1a.
Скачивать ТруКрипт нужно с официального сайта
Дальше запускаем
скачанный файл, соглашаемся с лицензий и жмем «Далее». В следующем окне
нам будет предложено два варианта на выбор: «Install» или «Extract».
Варианты установки
Если выбрать вариант «Extract», то на выходе вы получите версию TrueCrypt Portable. Во многих случаях портативная версия предпочтительней. Например, чтобы исключить признаки использования данной программы (для этого извлеките файлы, к примеру, на флешку, и программа всегда будет с вами). Но
следует помнить, что Portable версия TrueCrypt имеет ряд ограничений – в такой версии невозможно будет полностью зашифровать диски (в т.ч. и флешки) и системные разделы. Поэтому стоит выбирать используемую версию в зависимости от потребностей.
В данной статье мы будем работать с установленным TrueCrypt .
После установки программа предложит вам внести donate (пожертвование), и, если такая возможность у вас имеется, не скупитесь =)
После нажатия на «Finish» появится небольшое окно, где вас уведомят о том, что если вы впервые пользуетесь ТруКриптом, то можете ознакомиться с краткой инструкцией (на английском). Можете согласиться или отказаться.
Теперь, для удобства, можно русифицировать наш TrueCrypt. Официальные локализации находятся
также на офсайте программы http://www.truecrypt.org/localizations.
Имеется и украинский перевод, и белорусский, и многие другие. Выбирайте какой вам ближе всего.
Стоит отметить, что в русификаторе находится еще и официальная инструкция TrueCrypt (TrueCrypt User Guide.ru.pdf), о которой я говорил ранее. Настоятельно рекомендую прочитать ее по мере свободного времени. Узнаете очень много нового и полезного! Если же вы поместите этот документ вместе с файлом русификации в директорию TrueCrypt, то русскоязычная справка будет в последующем доступна и из меню программы («Справка» – «Руководство пользователя»), что очень удобно.
Итак, чтобы русифицировать ТруКрипт, следует извлечь из скачанного архива файл Language.ru.xml в папку с установленной программой (по умолчанию – это C:\Program Files\TrueCrypt).
Затем запускаем TrueCrypt, и видим, наконец, рабочую область программы.
Главное окно программы
У меня ТруКрипт автоматически «подхватил» русский язык. Если же этого не произошло, то зайдите в «Settings» – «Language», и выберите из списка «Русский».
Теперь я рекомендую внести некоторые изменения в настройки («Настройки» – «Параметры…»), но все это не столь критично, кроме нескольких моментов, поэтому выбирайте по своему усмотрению.
Параметры
Опишу только ключевые детали, и то, что нужно изменить:
  • Ни в коем случае не отключаем работу TrueCrypt в фоновом режиме (должна стоять галочка «Включено»), иначе некоторый важный функционал будет недоступен.
  • В разделе «Автоматическое размонтирование» можно активировать пункт, отвечающий за размонтирование при старте экранной заставки (а также при входе в энергосбережение). Также обязательно активируем возможность размонтирования при простое, и указываем время простоя (напр., 30 минут). Ни к чему держать смонтированные тома, когда они нам не нужны.
  • И последнее – включим принудительную очистку кэша паролей (т.е. их запоминание) при выходе из программы.
Все остальное можно оставить по умолчанию.
Хотелось бы еще упомянуть об используемых в TrueCrypt горячих клавишах («Настройки» – «Горячие клавиши…»).
В принципе, достаточно будет назначить всего одну критическую комбинацию клавиш, которая позволит немедленно размонтировать все тома, очистить кэш и выйти из программы. В форс-мажорных ситуациях может
здорово выручить =)
Общесистемные горячие клавиши TrueCrypt
Мне, например, удобна
комбинация «Ctrl + Shift + Стрелка вниз», как показано на рисунке. Первые две находятся очень близко, и легко зажимаются одним пальцем, ну а «стрелка вниз» нажимается другой рукой – все происходит почти
мгновенно.
Так-с, TrueCrypt мы установили, русифицировали, немного поправили настройки, самое время теперь перейти непосредственно к работе с программой…

Создание простого тома и его монтирование (подключение) для последующей работы

В TrueCrypt томами называются любые криптоконтейнеры, будь-то файловые контейнеры, usb-флешки или целые разделы HDD. Простым (обычным) томом называется именно файловый контейнер. То есть, со стороны такой контейнер – это всего лишь обычный файл, с абсолютно любым расширением (или без него).
Когда же такой файл будет смонтирован, он будет выглядеть уже как съемный носитель, или отдельный раздел жесткого диска. Нажимаем кнопку «Создать том» в главном окне программы, после чего нас поприветствует «Мастер создания томов TrueCrypt»:
Мастер создания томов TrueCrypt
Выбираем самый первый пункт «Создать зашифрованный файловый контейнер», жмем «Далее». В следующем окне указываем «Обычный том», а дальше нужно будет указать файл, который и будет являться нашим зашифрованным контейнером.
Размещение тома
В качестве файла-контейнера можно выбрать любой существующий файл (но помните, что сам файл будет удален, и заменен на новый, с таким же именем), а можно просто создать пустой файл с любым именем. В качестве выбора расширения файла можно руководствоваться примерно следующим принципом.
Если в контейнере планируется хранение множества зашифрованных данных большого размера, то
следует выбирать расширение, характерное для больших файлов. Это может быть, например, видеофайл с названием какого-нибудь фильма и указанием качества (DVDRip, BDRip и т.п.), или же, iso-образ какой-нибудь игры, или любой другой дистрибутив. В общем, чтобы скрыть наличие контейнера в системе, выбирайте для него то расширение, каких файлов в системе много. Таким образом, контейнер «затеряется» в общей массе.
Если же в зашифрованном томе планируется хранить только небольшие файлы (документы, какую-то
базу и проч.), то можно в качестве расширения файла выбрать, напр., mp3 или jpg. Я думаю, принцип понятен.
Когда укажете файл, не забудьте в том же окне отметить пункт «Не сохранять историю».
Следующим этапом будет «Настройка шифрования»:
Настройка шифрования
В принципе, здесь можно оставить все как есть, и не менять алгоритмы шифрования и хеширования.
Но, для большей стойкости, можно выбрать алгоритм «посильнее», или же их сочетание (в выпадающем списке алгоритмы расположены в порядке возрастания, а также к каждому из них дается краткое пояснение). Но
помните, чем более стойкий алгоритм, тем медленнее будет работать шифрация/дешифрация. На современных многопроцессорных компьютерах с большим кол-вом ОЗУ, по идее, это будет не особенно заметно. Но зачем
усложнять себе жизнь (только при условии, что шифруемые данные не столь критичны)? Алгоритм AES сам по себе более чем стойкий. Кстати, чтобы протестировать скорость алгоритмов конкретно на вашем компьютере, существует кнопка «Тест» (также эта функция всегда доступна из меню «Сервис» – «Тест скорости…»)
Следующий этап — это указание размера тома. Размер можно указать в Кб, Мб или Гб. По потребностям.
Далее последует очень важный этап – создание пароля.
Создание пароля для тома
В TrueCrypt (как и в KeePass,
кстати) существует возможность использования не только пароля, но и ключевого файла (или даже нескольких key-файлов). Вариаций здесь всего
несколько:
  • только пароль;
  • только ключевой файл (или несколько таких файлов);
  • сочетание пароля и ключевого файла(ов)
Выбор остается за вами,
и зависит от критичности шифруемых данных. То есть, если вы просто
хотите спрятать какой-то контент, скажем от детей, то можно использовать
пароль попроще. Или выбрать вариант только с ключевым файлом.
Если же шифруемые
данные – это какая-то очень важная БД (например, незашифрованные пароли в
формате txt, как многие любят хранить), или какая-то незаконная
информация (в том числе какое-то пиратское ПО) и т.п., то целесообразно
использовать сложный пароль (хороший генератор паролей имеется, опять
же, в KeePass, в 1Password и т.д.) или же сочетание сложного пароля и ключевых файлов.
Важно!Помните
одно очень важное правило! Если вы забудете пароль от контейнера или
ключевой файл к нему будет утерян (поврежден, изменен), то вы больше
никогда не сможете смонтировать этот том! Поэтому заранее позаботьтесь о
резервных копиях и паролей, и ключевых файлов. Резервных копий должно
быть несколько!
Если вы выбрали вариант с обычным паролем, то просто введите его дважды и жмите далее. Можно воспользоваться чекбоксом «Показ пароля»,
чтобы видеть то, что вы вводите. Также TrueCrypt дает вам свои
рекомендации по выбору пароля. В случае если пароль будет очень простым,
то программа вас переспросит еще раз, действительно ли вы хотите
использовать такой пароль или нет.
Важно!Кстати, при выборе пароля можете воспользоваться моими рекомендациями из статьи «Как выбрать пароль. Ликбез по парольной защите». Очень рекомендую.
Дальше ТруКрипт
поинтересуется у вас, собираетесь ли вы хранить большие файлы в данном
томе, и, на основе вашего ответа, подберет файловую систему для него
(FAT или NTFS).
Впрочем, на следующем этапе («Форматирование тома»)
вы все равно сможете сами ее изменить. Но, помните, что FAT не
поддерживает файлы, размером больше 4 Гб. Также на этом этапе можно
указать, что вы хотите создать «Динамический том». Но этого не
рекомендует делать ни сам TrueCrypt, ни я =) Хотите узнать почему? Нет
ничего проще — отметьте галочкой этот пункт, и прочитайте
предупреждение. После чего с чистой совестью жмите «Нет».
Форматирование тома
Итак, файловую систему
для тома выбрали, кластер оставляем по умолчанию, динамический том не
используем. Осталось хаотично поперемещать некоторое время мышкой для
увеличения криптостойкости ключей шифрования, нажать «Разметить» и дождаться окончания процедуры. Время форматирования будет зависеть, в первую очередь, от размера тома и мощности компьютера.
Все, файловый
криптоконтейнер (простой том) создан. Теперь его нужно смонтировать,
чтобы поместить туда наши сокровенные файлики =) Это делается из
главного окна программы:
Монтирование тома TrueCrypt
  1. Первым делом указываем букву будущего виртуального диска. Выбираем
    любую, которая заведомо не будет использоваться в дальнейшем другими
    программами, например, локальным веб-сервером, чтобы не возникло
    конфликтов
  2. Нажимаем «Файл…», указываем созданный на предыдущем этапе файл, затем «Открыть»
  3. Жмем «Смонтировать»
В открывшемся окне
нужно будет ввести пароль для подключаемого тома. Если же для тома
назначен ключевой файл, его также нужно будет указать.
Вот и вся процедура
монтирования. Теперь, в главном окне TrueCrypt можно увидеть
смонтированный диск, двойной щелчок по которому откроет его.
Смонтированный том в главном окне программы
Попасть в этот
виртуальный диск можно и через «Мой компьютер», и через «Пуск» и т.д. То
есть абсолютно также, как и на обычный жесткий диск или его разделы.
Смонтированный виртуальный диск
Теперь можете переместить на этот диск все конфиденциальные данные, и они будут надежно защищены.
Этот криптоконтейнер можно хранить где угодно – хоть на флешке, хоть на хостинге (Гигахост, например, выделяет всем по 33 Гб), хоть в облачных сервисах (все в том же Облаке@Mail.ru, если хотите), хоть пересылать его по почте (в зависимости от размера, конечно). А также делать его бэкапы путем простого копирования файла.
Удобно, не правда ли?
Похожим образом, но с некоторыми нюансами, можно «поставить пароль на флешку» или зашифровать весь диск.

Защита флешки паролем при помощи TrueCrypt. Шифрование несистемного диска и внешних носителей

Шифрование флешки, внешнего HDD и несистемного диска осуществляется одинаково. Поэтому я
буду показывать на примере несистемного раздела. Для примера возьмем компьютер, на котором установлен один жесткий диск. Тот, в свою очередь, разбит на два раздела – системный, имеющий метку «Локальный диск» и буквенное обозначение C, и несистемный — «Новый том» (E:)
Шифрование несистемного диска
Задача – полностью зашифровать диск E.
По большому счету, вся процедура очень похожа на создание файлового криптоконтейнера, поэтому
так подробно я уже описывать все не буду. Буду лишь делать акцент на каких-то важных деталях.
В главном окне TrueCrypt нажимаем «Создать том». Только на этот раз в «Мастере» выбираем второй пункт — «Зашифровать несистемный раздел/диск». Далее указываем «Обычный том» (о скрытых томах речь пойдет во второй части статьи).
В следующем окне нужно указать шифруемое устройство. Выбираем наш раздел:
Выбор раздела диска для шифрования
Здесь важно не напутать диски и разделы. Как видно на скриншоте выше, каждое физическое
устройство (HDD или USB-флешка) имеют разделы (Partition). В моем примере жесткий диск имеет две партиции, флешка – одну. В общем, чтобы не спутать, ориентируйтесь на букву, присвоенную диску, которую вы
видите, войдя в «Мой компьютер» Выбирайте нужный раздел, диск, или съемный носитель, и жмите «ОК». TrueCrypt в очередной раз заботливо поинтересуется, уверены ли вы в своем выборе, и порекомендует вам (если вы новичок) воспользоваться файловыми контейнерами. Но ты, читатель, уже тёртый калач, и знаешь, как создавать криптоконтейнеры. Поэтому вежливо отказываешься от предложения и подтверждаешь свои намерения закриптовать весь раздел.
На следующем этапе следует определиться с выбором режима создания тома:
  • При выборе первого варианта — «Создать и отформатировать зашифрованный том» — следует знать, что все данные на нем, если они имеются, будут уничтожены (перезаписаны случайными данными). Поэтому этот режим выбирайте только тогда, когда имеющиеся данные не нужны, или раздел/диск/флешка пустой.
  • Если требуется сохранить все имеющиеся на диске данные – выбираем второй режим «Зашифровать раздел на месте». Создание тома в этом режиме будет протекать медленнее, чем в предыдущем. Но оно и понятно, ведь данные не удаляются, а шифруются.
В следующем окне нужно будет настроить шифрование. Об этом мы говорили в разделе о создании
простого тома (файлового контейнера). В абсолютном большинстве случаев достаточно будет оставить все по умолчанию.
Дальше тоже все аналогично, как и с криптоконтейнерами – выбираем пароль и/или ключевой файл(ы). В качестве файловой системы целесообразней будет выбрать NTFS, ведь это целый диск, и мало ли какие файлы по размеру вам придется на нем хранить. А FAT, как вы знаете, не поддерживает файлы > 4 Гб.
На последнем этапе вам нужно будет, как и раньше, хаотично подвигать мышкой в окне программы
(чем дольше, тем лучше), чтобы повысить криптостойкость ключей шифрования (энтропия). И создать, наконец, зашифрованный том (кнопка «Разметить»).
Эта процедура может занять достаточное количество времени, особенно, если вы выбрали режим шифрования имеющихся файлов, а не их удаление и перезапись случайными данными. Также эта процедура зависит от мощности компьютера, и, конечно же, от размера создаваемого тома. В моем примере, учитывая весьма
урезанную в ресурсах виртуалку и объем раздела в 6 Гб, ушло приблизительно 15-20 минут. На реальном современном компьютере эта процедура, конечно, прошла бы в разы шустрее.
Во время форматирования и создания тома, в принципе, вы можете использовать свой компьютер для
повседневных задач. Но я бы все-таки рекомендовал оставить его в покое, заняться другими делами, и дать ТруКрипту спокойно доделать свое дело.
После создания тома прочтите последние рекомендации TrueCrypt в появившемся окне и запомните их. Ваш диск зашифрован.
Монтируется такой том абсолютно идентично тому, как монтируется простой том, и об этом мы уже
говорили. Только при указании тома нужно выбирать не «Файл…», а «Устройство…»
Выглядеть же такой раздел/диск/флешка будет как не отформатированный диск, а при монтировании, ему будет назначена новая буква. Предыдущий «диск» так и будет висеть в системе с той же буквой, и в том же «не
отформатированном» виде.
Теперь вы с легкостью сможете создать не только зашифрованный контейнер (как говорят в народе —
«поставить пароль на папку»), но и зашифровать всю флешку или несистемный диск.
А в заключение первой части хотелось бы дать еще несколько наставлений, а где-то может и повториться.
TrueCrypt – довольно серьезное криптографическое ПО, им пользуются различные категории
пользователей, от самых обыкновенных (порнушку спрятать, например) до киберпреступников (с его помощью можно творить действительно удивительные вещи, и об этом мы поговорим во второй части). Поэтому,
несмотря на то, что описанные сегодня процедуры достаточно просты (да и ТруКрипт каждое действие сопровождает очень подробными комментариями и пояснениями), будьте предельно внимательны при создании томов. Особенно, когда речь идет о шифровании дисков с данными, которые вам нельзя
потерять.
Также очень трепетно и внимательно отнеситесь к вопросу выбора и создания паролей. Не забывайте
делать их резервные копии. Помните, потеряв пароль или ключевой файл – можете попрощаться со своими данными навсегда!

Клоны Truecrypt

Столкнувшись с закрытием проекта Truecrypt официальными разработчиками, многие разработчики задались целью создать свою программу шифрования, используя исходные коды последних версий данной программы. Таким образом, появилось большое количество свободно распространяемых продуктов шифрования. Например,  CipherShed, VeraCrypt.
Программа VeraCrypt, в отличие от TrueCrypt поддерживается и обладает рядом преимуществ:
Для генерации ключа TrueCrypt использует относительно простую трансформацию пароля: 1000 или
2000 итераций функции PBKDF2-RIPEMD160. По нынешним временам, когда злоумышленники могут арендовать для брутфорса очень большие вычислительные мощности у облачного провайдера, это недостаточная
сложность. В VeraCrypt при генерации ключа используется 327 661 итерация PBKDF2-RIPEMD160 для системного раздела, а также 655 331 итераций PBKDF2-RIPEMD160 и 500 000 итераций SHA-2 и Whirlpool для остальных контейнеров. Таким образом, устойчивость перед брутфорсом улучшилась на порядок.
Правда, форматы контейнеров VeraCrypt из-за этого стали несовместимы с TrueCrypt. Для сравнения, контейнеры CipherShed совместимы с TrueCrypt.
Кроме улучшенной защиты, автор исправил потенциальные уязвимости TrueCrypt в программных интерфейсах и драйверах. Появилась совместимость с UEFI, так что шифрование дисков можно использовать, например, на Windows 8 и 10.
Автор VeraCrypt Моунир Идрасси вполне нормально относится к тому, что анонимные авторы TrueCrypt забросили проект. «Если вы посмотрите на код, то складывается впечатление, что им было по 40+ лет ещё в 1995 году, — говорит он, имея в виду сложный и качественный код программы с первых версий. — Так что
сейчас им больше 60-ти. Они, вероятно, устали и отошли от дел».

Официальный сайт программы VeraCrypt: https://veracrypt.codeplex.com/