Я настраиваю несколько новых серверов Ubuntu, и я хотел бы защитить данные на них от кражи. Модель угрозы - злоумышленники, желающие получить оборудование, или, скорее, наивные злоумышленники, желающие получить данные.
Пожалуйста, обратите внимание на этот раздел.
Модель угроз не включает умных злоумышленников, желающих получить данные; Я предполагаю, что они сделают одно или несколько из следующего:
Соедините ИБП с кабелем питания, чтобы обеспечить непрерывную работу машины.
Вставьте пару мостов Ethernet между компьютером и точкой завершения сети, которая будет соединять трафик через беспроводную сеть достаточного диапазона, чтобы хост поддерживал сетевое подключение.
Откройте коробку и используйте датчик на шине памяти, чтобы получить интересные вещи.
Используйте устройства TEMPEST, чтобы проверить, что делает хост.
Использовать законные средства (например, по решению суда), чтобы заставить меня раскрыть данные
И т. Д.
Так что я хочу, чтобы некоторые или, в идеале, все данные на диске находились в зашифрованном разделе, а материал ключа был необходим для доступа к нему на каком-либо внешнем носителе. Я могу придумать два способа хранения ключевого материала:
Сохраните его на удаленном хосте, доступном через сеть, и настройте достаточное количество сети для его извлечения во время процесса загрузки. Получение будет разрешено только для IP-адреса, назначенного защищенному хосту (таким образом, не разрешается доступ к зашифрованным данным, если они были загружены по другому сетевому соединению), и может быть отключено администраторами, если обнаружится, что машина была украдена.
Храните его на запоминающем устройстве USB, которое каким-то образом значительно сложнее украсть, чем сам хост. Расположение его удаленно от хоста, например, на конце пятиметрового USB-кабеля, идущего в другой угол комнаты или даже в другую комнату, вероятно, значительно уменьшит вероятность того, что злоумышленники его захватят. Закрепить его каким-либо образом, например, приковать его к чему-то неподвижному или даже положить в сейф, будет работать еще лучше.
Итак, каковы мои варианты настройки? Как я уже говорил ранее, я бы предпочел зашифровать все (кроме, возможно, небольшого загрузочного раздела, который не содержит / etc), чтобы мне не приходилось беспокоиться о том, куда я помещаю файлы или где они ». случайно приземлиться.
Мы запускаем Ubuntu 9.04, если это что-то меняет.
источник
Ответы:
Я знаю об одном умном варианте Варианта 1, который называется Мандос.
Он использует комбинацию пары ключей GPG, Avahi, SSL и IPv6, добавленных на исходный RAM-диск для безопасного получения пароля ключа корневого раздела. Если сервер Mandos отсутствует в локальной сети, то ваш сервер является зашифрованным кирпичом или сервер Mandos в течение определенного периода времени не видел пульса от клиентского программного обеспечения Mandos, поэтому он будет игнорировать будущие запросы на эту пару ключей и сервер это зашифрованный кирпич при следующей загрузке.
Главная страница Mandos
Мандос README
источник
ip=
иmandos=connect
параметров, см. Эту почту: mail.fukt.bsnet.se/pipermail/mandos-dev/2009-Feb февраля/…, но обратите внимание, что это несколько хрупко, так как клиенты будут пытаться подключиться к указанному серверу только один раз и безвозвратно потерпеть неудачу. Рекомендуемая конфигурация через локальную сеть. Могу также упомянуть, что Mandos доступен в Ubuntu с 9 апреля (а также в тестировании Debian)Если вы просто ищете защиту от нетехнических атак, я думаю, что вам лучше всего повысить физическую безопасность.
Мое мышление таково:
Если вы ищете ботинок, не требующий взаимодействия с человеком для ввода ключевого материала, то вы не найдете никакого решения, которое будет защищено даже от случайной кражи со стороны атакующего с какими-либо техническими навыками (или, что более уместно, возможность платить кому-то с техническими навыками).
Помещение материала ключа в нечто вроде флэш-накопителя USB не обеспечит реальной безопасности. Атакующий мог просто прочитать ключ с флешки. Флэш-накопитель не может знать, является ли компьютер, к которому он подключен, серверным компьютером или ноутбуком злоумышленника. Все, что нужно сделать злоумышленнику, это убедиться, что он либо заберет все, либо в случае, если ваш USB-ключ находится на конце USB-удлинительного кабеля длиной 15 футов, воткнутого в сейф, просто подключите удлинительный кабель к компьютеру и прочитайте ключ.
Если вы собираетесь передать ключ по сети, вы, вероятно, «зашифруете» его. Все, что нужно сделать злоумышленнику, - это прослушать процесс ввода ключа, украсть сервер, а затем выполнить обратный инжиниринг любого «шифрования», которое вы использовали при отправке ключа по сети. По определению серверный компьютер, получающий «зашифрованный» ключ из всей сети, должен иметь возможность «расшифровывать» этот ключ, чтобы использовать его. Так что, на самом деле, вы не шифруете ключ - вы просто его кодируете.
В конечном счете, вам нужен (искусственный?) Интеллект, чтобы ввести ключ на сервер. Тот, который может сказать: «Я знаю, что не разглашаю ключ кому-либо, кроме сервера, и я знаю, что он не был украден». Человек может сделать это. Флэш-накопитель USB не может. Если вы найдете другой интеллект, который сможет это сделать, то, я думаю, у вас будет что-то рыночное. > Улыбка <
Я думаю, что, скорее всего, вы потеряете ключ и уничтожите свои данные, не потеряв при этом никакой безопасности. Вместо вашей стратегии с играми с шифрованием, я думаю, вам лучше иметь более сильную физическую безопасность.
Редактировать:
Я думаю, что мы работаем с различными определениями термина «модель угрозы», возможно.
Если ваша модель угрозы - кража оборудования, то предлагаемое вами решение: шифрование диска, на мой взгляд, ничего не делает для противодействия угрозе. Ваше предлагаемое решение выглядит как противодействие краже данных, а не краже оборудования.
Если вы хотите предотвратить кражу оборудования, вам нужно закрепить его болтами, заблокировать, заложить в бетон и т. Д.
Я уже сказал то, что хотел сказать, о краже данных, поэтому я не буду снова зацикливаться на этом, кроме как сказать: если вы собираетесь вставить ключ в физическое устройство и не можете защитить серверный компьютер от кражи, тогда вы не можете защитить ключевое устройство от кражи.
Я полагаю, что ваше лучшее "дешевое" решение - это установить какой-то обмен ключами по сети. Я бы поставил одного или нескольких людей в цикл для проверки подлинности «выпуска» ключа в случае перезагрузки. Это приведет к простоям до тех пор, пока человек не «отпустит» ключ, но, по крайней мере, даст вам шанс выяснить, почему запрашивается «выпуск» ключа, и решить, стоит ли это делать.
источник