Asterisk-CDR-Viewer-Mod icon indicating copy to clipboard operation
Asterisk-CDR-Viewer-Mod copied to clipboard

Не удаляются записи

Open anutator opened this issue 7 years ago • 11 comments

Прослушиваются и скачиваются без проблем. Ошибка удаления: Нет прав на папку с файлом. Кому давать права? Пользователя admin в Linux нет, он только для веб-интерфейса. Владелец всех каталогов и файлов asterisk, Его права на папки записи: rwxr-xr-x, права на файлы rw-r--r-- Может был добавлен функционал по разграничению прав на удаление? это тоже очень нужная вещь.

anutator avatar Oct 26 '18 17:10 anutator

Апачу конечно, вы же в из веба не можете попасть. Если ubuntu то www-data

mttzzz avatar Oct 26 '18 18:10 mttzzz

У меня CentOS 7. Каталог статистики /var/www/html/acdr Каталог файлов /var/spool/asterisk/monitor - к нему дать доступ апачу?

anutator avatar Oct 26 '18 19:10 anutator

Если у тебя CentOS, то там по дефолту apache / apache

mttzzz avatar Oct 26 '18 19:10 mttzzz

Проверить можно так egrep -i '^user|^group' /etc/httpd/conf/httpd.conf

mttzzz avatar Oct 26 '18 19:10 mttzzz

# egrep -i '^user|^group' /etc/httpd/conf/httpd.conf
User apache
Group apache

Да

anutator avatar Oct 26 '18 19:10 anutator

значит на папку с записями у апача должны быть права на запись, а у вас rw-r--r--, т.е. писатьудалять может только владелец, а это астериск. Нужно чтобы астериск писал файлы с правами на запись для группы т.е. rw-rw-r или 664, а у вас 644.

mttzzz avatar Oct 26 '18 19:10 mttzzz

В файле asterisk.conf найдите блок и приведите к следующему виду

[files]
astctlpermissions = 0664
astctlowner = asterisk
astctlgroup = apache
astctl = asterisk.ctl

Теперь апач будет писать с правами правильными Но еще нужно у текущих записей поменять права.

sudo chown asterisk:apache -R /var/www/html/acdr
sudo find /var/www/html/acdr -type d -exec chmod 2775 {};
sudo find /var/www/html/acdr -type f -exec chmod 664 {};

mttzzz avatar Oct 26 '18 19:10 mttzzz

У меня так было.

; Изменение настроек files может снизить безопасность!
; настроила, чтоб тем кто состоит в группе asterisk можно было заходить в Asterisk CLI без получения прав root 
[files]
astctlpermissions = 0775  ; ставим 775, чтоб у группы asterisk были права как у пользователя asterisk
astctlowner = asterisk
astctlgroup = asterisk
astctl = asterisk.ctl

наверно можно для apache прописать дополнительную группу asterisk через usermod. А почему права меняем на каталог статистики, а не на каталог файлов с записями?

exec с обратным слешем в конце find /var/www/html/acdr -type d -exec chmod 2775 {} \;

anutator avatar Oct 26 '18 19:10 anutator

chown asterisk:apache -R /var/spool/asterisk/monitor это для прошлых файлов помогло.

anutator avatar Oct 26 '18 20:10 anutator

Конечно нужно на каталог файлов, я думал он у вас там :))

mttzzz avatar Oct 26 '18 21:10 mttzzz

Как вариант ACL или usermod -aG asterisk apache Работает после перезапуска httpd. Владелец каталогов и файлов asterisk.asterisk, как и раньше.

anutator avatar Nov 06 '18 10:11 anutator