Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


firebird:changing-default-password-for-sysdba-user-in-firebird-2-5

Смена пароля пользователя SYSDBA в СУБД Firebird 2.5

Одним из первых мероприятий по защите вновь развёрнутого экземпляра Firebird является обязательная смена пароля, используемого по умолчанию для учётной записи администратора экземпляра.

В каждом вновь развёрнутом экземпляре Firebird присутствует пользователь с именем SYSDBA, который имеет полные привилегии в рамках этого экземпляра. Пароль по умолчанию для данного пользователя masterkey (на самом деле masterke, так как для пароля символы после восьмого игнорируются). В целях безопасности сразу после запуска нового экземпляра Firebird мы должны сменить пароль этого пользователя.

Перейдём в каталог с исполняемыми файлами экземпляра Firebird и с помощью утилиты gsec подключимся к базе данных пользователей (файл security2.fdb в каталоге с экземпляром) командой следующего вида:

cd /d D:\FBInst1\Bin\bin
gsec -user sysdba -password masterke -database "localhost/3051:D:\FBInst1\Bin\security2.fdb"

Войдя в интерактивный режим работы с утилитой gsec, выполняем команду смены пароля:

modify sysdba -pw newP@s$w

При указании пароля помните про то, что Firebird 2.5 игнорирует в пароле символы больше восьмого, поэтому задавать пароль длинной больше 8 символов нет смысла.

Обратите внимание на то, какой мы используем путь к файлу БД security2.fdb. Это важный момент для конфигураций, когда на одном сервере выполняется несколько экземпляров Firebird. Если мы попытаемся использовать простое указание локального пути на файловой системе вида D:\FBInst1\Bin\security2.fdb, то можем столкнуться со странной ситуацией, при которой оба запущенных экземпляра Firebird будут пытаться использовать один и тот же файл security2.fdb. Это может вызвать серьёзную путаницу при работе с утилитой gsec для настройки двух разных экземпляров. Именно поэтому лучше использовать подключение к экземпляру через протокол TCP, явно указывая адрес хоста и порт экземпляра Firebird, а также относящийся к нему файл security2.fdb.

После того, как пароль задан, завершим сессию работы с утилитой gsec с помощью команды quit и вновь попробуем воспользоваться этой утилитой, но уже при подключении укажем новый пароль, убедившись тем самым в том, что старый пароль по умолчанию больше не работает, а используется новый установленный нами пароль.

Описанным способом меняем пароль, используемый по умолчанию, для пользователя SYSDBA на всех отдельный экземплярах Firebird. Разумеется, для разных экземпляров при этом в целях безопасности лучше использовать разные пароли.

Кстати входить в интерактивный режим работы с утилитой gsec для смены пароля SYSDBA не обязательно. Можно выполнить смену пароля одной командой, указав в ней и действующий в экземпляре пароль и новый пароль, который необходимо установить. Посмотрим, как это делается на примере нашего второго экземпляра:

cd /d E:\FBInst2\Bin\bin
gsec -user sysdba -password masterke -database "localhost/3052:E:\FBInst2\Bin\security2.fdb" -modify sysdba -pw newPAz$w

И опять же. Для проверки, после смены пароля, попытаемся подключиться к базе данных security2.fdb, относящейся к нашему второму экземпляру Firebird, сначала со старым паролем, который ранее был установлен по умолчанию, а затем с тем паролем, который мы задали.

Результат должен быть предсказуемым.

Таким образом, мы заменили пароль пользователя SYSDBA на всех экземплярах Firebird, улучшив тем самым уровень их безопасности.


Проверено на следующих конфигурациях:

Версия ОС Версия Firebird
Windows Server 2012 R2 Standard EN (6.3.9600) 2.5.8 32-bit

Автор первичной редакции:
Алексей Максимов
Время публикации: 06.11.2018 23:01

Обсуждение

Ваш комментарий:
 

firebird/changing-default-password-for-sysdba-user-in-firebird-2-5.txt · Последние изменения: 07.11.2018 11:54 — Алексей Максимов