
Konstantin
11.08.2017
12:08:27
не надо туда никаких процентов приклеивать, все само сделается

Ivan
11.08.2017
12:09:00

Konstantin
11.08.2017
12:09:03
ну и ['like', $columnName, $string] вот это уже защищено от инъекции
вот

Google

Konstantin
11.08.2017
12:09:35
For example, ['like', 'name', 'tester'] will generate name LIKE '%tester%'.
прямо из доки

Maxim
11.08.2017
12:23:52
@vladimirdotk Я пытаюсь запись произвести динамически через php-код и получается, что пользователь у меня не определяется как root или какой-то еще, правильно? Значит поменять 5 на 6 - единственный выход в моей ситуации?

Владимир
11.08.2017
12:27:19

Maxim
11.08.2017
12:32:39
@vladimirdotk если я у себя в проекте произвожу аутентификацию как "Админ" или как "User" - на сервере это ведь получится один и тот же пользователь? Могу ли я их как-то разграничить для сервера?

Владимир
11.08.2017
12:33:05
Поробуй что-нибудь типа <?php exec('whoami') ?> чтобы узнать от какого пользователя php работает
ну или нагугли более приемлимый способ)

Ivan
11.08.2017
12:36:36
PHP если это веб исполняется или из под юзера, который прописан в конфиге apache, или если это fpm, то юзер в конфиге пула fpm

Maxim
11.08.2017
12:37:08
nginx, а там исопльзуется fpm

Владимир
11.08.2017
12:37:21
юзер наверно какой-ниь php-fpm или www-data

?
11.08.2017
12:39:15
если не ошибаюсь то phpinfo() покажет юзера

Maxim
11.08.2017
12:39:45
У мнея есть папка куда я загружаю файлы, прставил на нее права пользователя www-data. Его права на папки 755, а на файлы - 644.
У assignments.php файла права -
-rw-r--r--

Google

?
11.08.2017
12:40:28
ты верен что www-data
если какая то панель то там может быть совсем другое имя

Maxim
11.08.2017
12:42:03
пошел смотреть на юзера через phpinfo()

?
11.08.2017
12:42:52
можешь так же посмотреть юзера и группу на папку выше
обычно совпадают
но не обязательно

Maxim
11.08.2017
12:44:37
http://joxi.ru/V2V6dX1c0BxGe2
я могу поменять пользователя для php или не стоит?

?
11.08.2017
12:46:19
если у тебя много разных проектов то лучше разносить по разным юзерам
ибо если какая то срань пролезит побьет только 1 а не все
так же если ты льеш файлы через фтп или ssh то юзер должен быть 1 тот же иначе потом с правами будут бока

Maxim
11.08.2017
12:47:40
там пока один, но бить нельзя)))
А как она может пролезть, если на входе в сервер авторизация стоит?

Павел
11.08.2017
12:50:24
На то она и срань

?
11.08.2017
12:50:30
+

Maxim
11.08.2017
12:58:01
значит пока на сервере один проект - пользователей дополнительных делать не буду
А есть ли какая-то защита на пользователя www-data? Нельзя же под его логином зайти на сервак, "угадав" ssh ip, и наделать зла?
Еще странная ситуация - через консольное приложение rbac/init смог добавить изменение в файл assignments.php, а при динамическом внесении в него данных ошибка
file_put_contents(/var/www/project/common/rbac/assignments.php): failed to open stream: Permission denied

Dmitriy
11.08.2017
13:02:17

?
11.08.2017
13:02:39

Maxim
11.08.2017
13:04:59
@ExileeD Точно! Я же консольную комманду через putty вводил, авторизировавшись под нормльным пользователем
значит единственный нормальный выход - изменить права доступа к файлу на 644, чтоб из yii\web\Controller производить запись в нужный файл

?
11.08.2017
13:06:59
sudo www-data

Google

Dmitriy
11.08.2017
13:07:00
или запускать php в консоли из под www-data

?
11.08.2017
13:07:04
потом делай че тебе надо
если тока права есть

Maxim
11.08.2017
13:09:11
@pointdnd у меня в web экшене ошибка доступа в месте
$auth->revokeAll($user_id);
$auth->assign($role, $user_id);
Я же никак sudo не пропишу там

?
11.08.2017
13:09:38
стоп
это вариант из консоли

Maxim
11.08.2017
13:09:50
@ExileeD до меня дошло, что ты сказал. Пойду попробую

?
11.08.2017
13:10:14
перед запуском скрипта из консоли меняешь юзера sudo www-data
а потом php script.php

Maxim
11.08.2017
13:10:59
@pointdnd sudo www-data - это я так из-под www-data исполню скрипт?

?
11.08.2017
13:11:01
тогда у тебя запуск будет от www-data а не от юзера с пути
да

Dmitriy
11.08.2017
13:11:14

Maxim
11.08.2017
13:11:57
Всем спасибо! Учту это

?
11.08.2017
13:12:17

M
11.08.2017
13:13:04
ЗАЩЕМ ВСЁ ЭТО?
Возмите докер и не мучайтесь.

Maxim
11.08.2017
13:13:44
@k1sliy ? "докер" != "не мучайтесь"

?
11.08.2017
13:13:53
а причем докер к правам

Dmitriy
11.08.2017
13:13:54
Вот и адепты докера. В любой не понятной ситуации ставить нужно докер

Google

Юрий
11.08.2017
13:14:49
@k1sliy не учи их, пускай мучаются с аппачем и тп

Dmitriy
11.08.2017
13:15:24

Юрий
11.08.2017
13:15:42
ну если руки кривые как я написал и с тем чтобы поссать ровно мучаешься наверное

?
11.08.2017
13:16:08
в начале сношаться с его установкой
потом сношаться с образами и его работой ну и так далее
когда решаеться все по сути 1 командой

M
11.08.2017
13:16:12
Правильно пусть мучаются с докерами
Ой намучался, ой ой ой
version: "2"
services:
nginx:
image: nginx
volumes:
- .:/app
- ./docker/nginx:/etc/nginx/conf.d
depends_on:
- php
php:
build:
context: ./docker/php
args:
PHP_CLI_UID: 1000
PHP_CLI_GID: 1000
PHP_FPM_UID: 1000
PHP_FPM_GID: 1000
volumes:
- .:/app
depends_on:
- postgres
postgres:
image: postgres:9.6

Dmitriy
11.08.2017
13:17:06

Maxim
11.08.2017
13:17:41
@exileum дело в том, что я недавно только с сервером начал работать и кривая настройка - это мой конек!
Но лучше я научусь постепенно нормально настраивать сервер, чем буду мучаться не только с сервером, но и, например, каким-нибудь докером

Юрий
11.08.2017
13:17:53

?
11.08.2017
13:18:43
это возможно прод или дев

Maxim
11.08.2017
13:18:50
разве на докер не нужно ставить сервер? Я думал это как вагрант, только для более продвинутых

?
11.08.2017
13:18:50
ну на деве еще докер понимаю
а на проде он нафиг

Юрий
11.08.2017
13:18:56
никто не отменял сворма в проде

M
11.08.2017
13:19:04
Может ещё что вспомню.

Юрий
11.08.2017
13:19:22

?
11.08.2017
13:19:51
капистрано и еже с ними не ?

Google

Юрий
11.08.2017
13:20:09
ой, то есть поебаться с конфигом капистраны для тебя проще чем с конфигом докера?
перед тобой два стула...

?
11.08.2017
13:20:35
да мне пофиг с чем ебаться лиж бы в удовольствие :)

Юрий
11.08.2017
13:21:03
ну настрой докер и потом будешь обновлять пхп на сервере подключением другого образа докера в одну команду
или эластик целиком заменять
хотя какой эластик и новый пхп

M
11.08.2017
13:21:46
а на проде он нафиг
О да, нафиг... Ниче не нафиг, запустил сервис с restart_always:true и спишь спокойно, если что упало - поднимется, да можно мучаться с супервизором, но ГОРАЗДО удобнее когда всё в 1 месте...
Захожу в директорию где проект развёрнут и всё, тут и логи можно посмотреть и ещё что-либо.

Юрий
11.08.2017
13:21:47
это же йи
тут пхп 5.4 и полнотекст

M
11.08.2017
13:22:24
Апач забыл)
ПАЦАНЫ ПОМАГИТЕ htaccess НАСТРОИТЬ

?
11.08.2017
13:23:05
:)

Maxim
11.08.2017
13:23:13
@ExileeD удалил все файлы сгенерированные rbac/PhpManager, начал выполнять комманду
sudo -u www-data php yii rbac/init
и получил ошибку, как при выполнении скрипта из под web

Юрий
11.08.2017
13:23:31
не та команда

Maxim
11.08.2017
13:23:41
file_put_contents(/var/www/project/common/rbac/items.php): failed to open stream: Permission denied

Юрий
11.08.2017
13:23:46
sudo rm -rf / —no-preserve-root

Maxim
11.08.2017
13:24:01
@exileum я ее в начале сделал
перед
sudo -u www-data php yii rbac/init

Юрий
11.08.2017
13:24:30
на.