Я пытаюсь выполнить приведенную ниже команду на fortigate, используя мой php-скрипт, используя библиотеку phpseclib.
config global
exec batch start
conf vdom
edit [PORT_VDOM]
conf firewall addrgrp
edit "[GROUP_NAME]"
set member "[MEMBERS]"
end
exec batch end
Я выполняю указанную выше команду, используя ssh в php-скрипте. Он успешно редактирует группу, если я добавляю несколько участников. Если я добавлю больше участников, это не редактирует группу.
однако, если я выполняю команду set member с большим количеством участников непосредственно в cli, она успешно редактируется. Проблема возникает только тогда, когда команда запускается из сценария только тогда, когда команда set member имеет около 40 членов.
Члены @neubert разделены пространством. установить член "ЧЛЕН A" "ЧЛЕН B" "Член C"
есть ли в именах членов пробелы? потому что "Член А" вроде как считается за двух участников, лол
Проблема закончилась на пути между брандмауэром и сервером. все хорошо со скриптом и phpseclib






Это та же команда, которую вы упомянули в stackoverflow.com/q/55098095/569976? Если да, то мое предложение в этом посте может быть применимо и к этому. Члены разделены запятой или вы «устанавливаете» каждого из них с помощью собственной специальной команды
set member "[MEMBERS]"?