Пользователь развертывания Rails Capistrano

#ruby-on-rails #unix #capistrano

#ruby-on-rails #unix #capistrano

Вопрос:

В настоящее время я развертываю свое приложение Rails 3.1 с помощью пользователя «root». Я знаю, что это плохо 🙂 но какого пользователя я должен использовать? Почему ? И какие разрешения я должен установить для файлов, чтобы Apache / Passenger и т. Д. Могли Получить к ним доступ?

Спасибо за вашу помощь, я хотел бы понять, что происходит за пределами поверхности.

Ответ №1:

Одним из способов настройки пользователя / разрешений для чего-то подобного тому, что вы описали, было бы создать нового пользователя специально для вашего приложения и изменить владельца / группу каталога развертывания вашего приложения и его содержимого на yourappuser:apache .

Идея состоит в том, чтобы запретить любые операции от всех, кроме from yourappuser , который должен уметь делать все, и apache, который должен иметь возможность читать его содержимое.

Чтобы сделать это, вы можете затем изменить разрешения для этой папки, чтобы разрешить ее владельцу чтение / запись / выполнение, а его группе — чтение ее содержимого, запретив все другим пользователям (например, 740).

Существует много других подходов, но я склонен использовать этот.

Комментарии:

1. 1, за исключением того, что я не утруждаю себя добавлением Apache в качестве пользователя в каталог моего приложения.

2. Я имел в виду как группу… Если вы отключите внешний доступ и не добавите «apache» в качестве группы каталогов, он не сможет его использовать.

3. Да, если вы установите для своих разрешений что-то вроде 755, вам не нужно добавлять группу apache. IDK, который является лучшей настройкой.

4. Это подход, который я вижу чаще всего. Однако я считаю, что тот, который я указал, немного более безопасен, поскольку «посторонние» даже не могут прочитать ваш контент.