В этой главе на первый план выдвигаются некоторые вопросы, по поводу которых вы должны предпринять меры предосторожности в вашем окружении сервера и клиентов Firebird. Не имеет никакого смысла выполнять проектирование для решения всех относящихся к безопасности окружения вопросов, которые могут воздействовать на ваш сервер и вашу сеть. Короче говоря, если безопасность имеет серьезное значение для установки вашей системы, то и отнеситесь к ней серьезно. Исследуйте ее, определите потенциальные зоны рисков и будьте готовы консультироваться со специалистами.
В главах 34 и 35 рассматриваются средства Firebird по управлению доступом на уровнях сервера Firebird и баз данных, соответственно. Глава 36 содержит подробности конфигурирования серверов Firebird для уменьшения незащищенности данных при некоторых рисках для безопасности, связанных с окружающей средой.
Физическая безопасность
Содержите серверы и чувствительные или критичные клиентские машины в помещениях с хорошо закрываемыми дверями. Если у вас на серверах или рабочих станциях установлена система FAT32, любой пользователь, локально подключившийся к одной такой машине, может получить доступ и ко всем другим. Если возможно, заблокируйте такие ресурсы, как CD-ROM, накопители на гибких магнитных дисках и драйверы Zip, отключите порты, через которые можно получить доступ к устройствам первоначальной загрузки или установите такие режимы в BIOS, которые предотвратят загрузку со съемных устройств. Установите в BIOS защиту по паролю, чтобы предотвратить неавторизованные изменения режимов первоначальной загрузки. Установите защиту по паролю на все серверы и рабочие станции.
Основным фактором физической безопасности является защита чувствительных к безопасности машин от физических контактов неавторизованных лиц. Все остальное не даст никаких результатов, если посторонние могут получить доступ к машине и осуществить кражу, или если кто-то может открыть дверь в эту комнату и украсть накопитель на жестком диске, подключенный к серверу.
Использование защищенных файловых систем
Пользователям удаленных баз данных (клиентским приложениям) не нужны полномочия файловой системы по доступу к базам данных. Им не нужны и соответствующие полномочия по использованию внешних приложений для записи и чтения внешних файлов данных, которые связаны с таблицами. Вы можете объединить полномочия операционной системы и средства конфигурирования на сервере параметра ExternaiFiieAccess (firebird.conf) для уменьшения риска постороннего воздействия.
Пользователям встроенных приложений, включая локальное (Классическое) соединение в POSIX, требуются права по доступу к файлу базы данных и другим файлам, таким как файлы блокировок, протоколов, внешних таблиц и т.д. Это же относится и к любой учетной записи того пользователя, который запускает сервер Firebird как приложение.
Защитите каталоги Firebird и другие каталоги, к которым обращается Firebird, используя максимально возможные ограничения, поддерживаемые вашей операционной системой и выбранной вами файловой системой.
Не храните программные файлы Firebird, базы данных, скрипты, оперативные копии или файлы данных внешнего доступа в разделах FAT32. В Windows не позволяйте использовать эти разделы обычным пользователям. Полномочия по использованию разделов NTFS, хранящих связанные с Firebird файлы и программы, должны быть максимально ограничены, насколько это возможно.
Использование групповых учетных записей предпочтительнее индивидуальных учетных записей. Где только возможно, исключите членство во множестве групп.
Защита оперативных копий
Регулярно выполняйте резервное копирование, упаковывайте копии, копируйте на переносимые носители и сохраняйте в защищенном месте.
Не оставляйте резервные копии и архивы базы данных в сетевом окружении, где гуляющие по сети могут их найти. Сворованная копия файла gbak может быть восстановлена с полной прозрачностью всех данных на любом другом сервере Firebird. Это означает, что если вы позволите мне украсть копию вашей базы данных или позволите получить файл gbak, я смогу восстановить это на моем сервере. Как пользователь SYSDBA, я смогу открыть и просмотреть все, что угодно.
Пара ложных предположений используется бестолковыми администраторами базы данных, мало беспокоящимися о защите базы данных и файлов резервных копий.
* Файл копии разрушен, следовательно, он не может быть использован злоумышленником. Не думайте, что файл копии выполняющейся базы данных будет разрушен и недоступен для использования. Незаконная копия прекрасно может быть использована, особенно если деятельность по изменению данных базы данных выполняется относительно редко, или если атакующий попытается выполнить повторные копирования[130].
* Файлы gbak не являются базами данных, следовательно, не могут быть использованы злоумышленником. Любой может восстановить базу данных из копии вашего файла gbak.