
Моя версия Samba — 4.10.16, и у меня возникла проблема с настройкойподписание клиентомпеременная кобязательный. Он правильно настроен в /etc/samba/smb.conf, но testparm показываетподпись клиента = требуется. У меня версия RH 7.9. Кто-нибудь знает, как это решить, если это вообще возможно...
Я дважды проверил, использует ли testparm правильную конфигурацию, и она верна. Вот что показывает man-страница:
client signing (G)
This controls whether the client is allowed or required to use SMB signing. Possible values are auto, mandatory and disabled.
When set to auto or default, SMB signing is offered, but not enforced.
When set to mandatory, SMB signing is required and if set to disabled, SMB signing is not offered either.
IPC$ connections for DCERPC e.g. in winbindd, are handled by the client ipc signing option.
Default: client signing = default
Нет никакихнеобходимыйзначение и установка этой переменной вавтопоказываетподпись клиента = if_requiredв тестпарме.
Я также обнаружил похожую проблему в Samba's Bugzilla от 2015 года со статусом NEW -связь. Я предполагаю, что эта ошибка не была устранена с тех пор...
решение1
Парсерпринимает несколько недокументированных псевдонимов, но все они имеют одинаковое значение:
/* SMB signing types. */
static const struct enum_list enum_smb_signing_vals[] = {
{SMB_SIGNING_DEFAULT, "default"},
{SMB_SIGNING_OFF, "No"},
{SMB_SIGNING_OFF, "False"},
{SMB_SIGNING_OFF, "0"},
{SMB_SIGNING_OFF, "Off"},
{SMB_SIGNING_OFF, "disabled"},
{SMB_SIGNING_IF_REQUIRED, "if_required"},
{SMB_SIGNING_IF_REQUIRED, "Yes"},
{SMB_SIGNING_IF_REQUIRED, "True"},
{SMB_SIGNING_IF_REQUIRED, "1"},
{SMB_SIGNING_IF_REQUIRED, "On"},
{SMB_SIGNING_IF_REQUIRED, "enabled"},
{SMB_SIGNING_IF_REQUIRED, "auto"},
{SMB_SIGNING_DESIRED, "desired"},
{SMB_SIGNING_REQUIRED, "required"},
{SMB_SIGNING_REQUIRED, "mandatory"},
{SMB_SIGNING_REQUIRED, "force"},
{SMB_SIGNING_REQUIRED, "forced"},
{SMB_SIGNING_REQUIRED, "enforced"},
{-1, NULL}
};
Когда значение преобразуется обратно в строку с помощью testparm
, оно использует тот псевдоним, который оказался первым в этом списке.