Я хочу использовать именованный канал для связи между сервером-скриптом PHP и сервисом, то есть процессом (скриптом Python), слушающим на другом конце канала. Эта служба намеренно работает от имени непривилегированного пользователя, а также создает канал с некоторой командой Python, эквивалентной mkfifo mypipe
. Это дает псевдо-файл mypipe
принадлежащий этому непривилегированному пользователю.
Поскольку PHP-скрипт запускается от имени другого пользователя, он не может немедленно записать в этот канал. Конечно, существуют различные способы решения проблемы. Тем не менее, я хочу избежать возможных ошибок безопасности.
Итак, мой вопрос в том, в какой каталог я должен поместить именованный канал (каталог сервера /var /www), какой владелец и разрешения он должен иметь, и, наконец, как и где я должен проверять (экранировать) контент, отправленный из PHP -скрипт к сервису.