Skip to content

Инструменты и переменные окружения

Консольные команды

Консольные команды можно выполнять с помощью команды в директории приложения:

Для ручной установки: php artisan {название команды}

Для установки в докере: docker compose exec -u www-data app sh -c "cd /var/www/bearpass && php artisan {название команды}"

Создание пользователя-администратора

Создает нового пользователя-администратора.

Запуск в интерактивном режиме: php artisan make:user

Запуск в не интерактивном режиме: php artisan make:user --name='Сергей' --last_name='Иванов' --email='admin@test.local' --password='12345678'

Очистка кеша

Очищает весь кеш приложения, ее нужно запускать после изменения настроек окружения в .env

php artisan optimize:clear

Проверка работоспособности приложения

Команда проверяет, что приложение настроено верно и работает. Найденные проблемы будут отображены с советами по их решению.

php artisan main:health-check

Проверка паролей на компрометацию

Команда проверяет все пароли на наличие в базах скомпрометированных паролей. Она запускается по крону, но можно запустить вручную.

php artisan security:check-for-compromised

Перешифровка базы данных новым ключом

Команда перешифровывает все данные в базе новым ключом. Перед запуском команды обязательно сделайте резервную копию базы данных и ключа шифрования.

php artisan security:re-encrypt-database

В команду можно передать опцией новый ключ и принудительный запуск (без подтверждения):

php artisan security:re-encrypt-database --force --newKey='base64:LlG3hgObWRLzW5P1CLsY7IdYkXnu1xEVEd3uqQyQSOY='

Удаление данных приложения

Безвозвратно удаляет выбранные данные (пользователи, пароли или группы), может быть полезна при настройке приложения. После запуска нужно будет выбрать данные для удаления:

php artisan main:clear

Переменные окружения

В файле .env в корне содержаться ключевые настройки для работы приложения.

APP_DEBUG - режим отладки. При включении позволяет увидеть ошибки приложения и подробный лог работы с LDAP. На боевом сервере всегда должен быть установлен в false.

ENCRYPTION_KEY - ключ шифрования данных в базе. Без этого ключа данные паролей из базы расшифровать невозможно. Храните его отдельно от резервных копий базы данных. Изменять вручную этот ключ на рабочем приложении нельзя.

ADDITIONAL_LOG_CHANNELS - дополнительные каналы отправки логов, например syslog. Можно использовать любой канал, определенный в config/logging.php или даже сразу несколько каналов, разделяя их запятой.

DB_CONNECTION, DB_HOST, DB_DATABASE, DB_USERNAME, DB_PASSWORD - доступы для подключения к базе данных.

DB_SSL_MODE, DB_SSL_ROOT_CERT - данные для защищенного подключения к базе данных: https://www.postgresql.org/docs/current/libpq-ssl.html#LIBPQ-SSL-SSLMODE-STATEMENTS

MAIL_MAILER, MAIL_HOST, MAIL_PORT, MAIL_USERNAME, MAIL_PASSWORD, MAIL_ENCRYPTION - настройки почтового сервера.

TIMEZONE - часовой пояс. По умолчанию Europe/Moscow.

SECURITY_FRAME_ANCESTORS - правило CSP для встраивания приложения в iframe. По умолчанию встраивание приложения запрещено, но вы можете указать список доменов, для которых оно будет разрешено, например: SECURITY_FRAME_ANCESTORS="'self' example.ru site.ru"

LDAP_PAGE_SIZE - размер страницы при получении данных из LDAP, по умолчанию 500.

FORCE_SCHEME - принудительное включение схемы, например https. Может потребоваться, если приложение находится за прокси, терминирующем ssl.

Логи приложения

Все ошибки приложения записываются в файл логов, расположенный в директории с приложением (/opt/bearpass/app или /var/www/bearpass):

bash
/storage/logs/laravel.log