Необходимо выполнить обновление, перенос и настройку Laravel-проектов на новый сервер с обеспечением стабильной работы, безопасности, защиты от эксплойтов и корректной работы всех сервисов после миграции. 1. Основные задачи Подготовить новый сервер к работе. Перенести файлы проектов, базы данных, конфигурации и cron-задачи. Обновить серверное программное обеспечение. Настроить безопасное окружение для Laravel. Проверить совместимость PHP, Laravel, Composer-пакетов и зависимостей. Обеспечить защиту от известных эксплойтов, вредоносных запросов и несанкционированного доступа. Настроить SSL-сертификаты. Проверить работоспособность сайтов после переноса. 2. Перенос Laravel-проектов Для каждого проекта необходимо: Перенести файлы проекта. Перенести базу данных. Перенести .env конфигурацию. Настроить права доступа к директориям: storage bootstrap/cache Проверить работу: главной страницы; админ-панели; авторизации; форм; API; загрузки файлов; email-отправки; cron-задач; queue workers.3. Безопасность и защита Необходимо реализовать базовый и прикладной уровень защиты: закрыть root-доступ по SSH; настроить SSH-доступ только по ключам; изменить стандартный SSH-порт, если нужно; настроить firewall; разрешить только необходимые порты; установить Fail2Ban; скрыть служебные версии Nginx/Apache/PHP; запретить доступ к .env, .git, backup-файлам, log-файлам; настроить правильные file permissions; проверить проекты на наличие вредоносных файлов; проверить Composer-пакеты на известные уязвимости; обновить зависимости, если это не ломает функционал; настроить защиту от SQL injection, XSS, CSRF и path traversal; проверить правильность Laravel APP_ENV и APP_DEBUG; установить APP_DEBUG=false на production; настроить rate limiting для критических endpoint-ов; проверить доступы к storage/uploads; настроить защиту от выполнения PHP в upload-директориях; проверить права доступа к админ-панелям. 4. SSL и домены Необходимо: Установить SSL-сертификаты. Настроить автоматическое обновление SSL. Включить редирект с HTTP на HTTPS. Проверить корректную работу сайтов через HTTPS. 5. Резервное копирование Необходимо настроить backup: файлов проектов; баз данных; .env файлов; uploaded media; cron-конфигураций; Nginx/Apache конфигураций. Backup должен выполняться автоматически по расписанию. Желательно хранить копии отдельно от основного сервера. 6. Проверка после переноса После миграции необходимо проверить: отсутствие 500/403/404 ошибок; отсутствие критических ошибок в Laravel logs. 9. Результат выполнения После завершения работ должно быть: Laravel-проекты успешно перенесены на новый сервер; сайты работают стабильно; SSL настроен; сервер защищен базовыми security-настройками; доступы к критическим файлам закрыты; backup настроен; cron и queues работают; старый сервер можно отключить после финальной проверки.
Ставки пока отсутствуют
Ставки пока отсутствуют
Ставки скрыты
-
Александр Ш. 25 июня 2019Здравствуйте.
Какое кол-во серверов?
Нужен именно кластер или высокодоступный сервер PG?
От этого как раз и зависит стек.
Предложил бы использовать DockerSwarm для этих целей.
Если можно - чуть подробнее про проект и задачу в личку.
С уважением.
-
Віталій Верещагін
25 июня 2019
Есть бизнес задача обеспечить фейловер базы данных PG, для продакшена. Как это будет сделано нужно обсуждать. Пока принципиальной позиции нет. Есть опыт поднятия такого кластера на patroni+consul+haproxy+keepalived. Все задублировано и разнесено по разным датацентрам.
Корчиство серверов DB = 2 patroni + postgresql (можно 3). master + slave + slave
Остальное: 3 шт. для консува или etcd, 2 шт. haproxy+keepalived
-
Александр Ш. 25 июня 2019patroni+consul+haproxy+keepalived - это именно кластерная архитектура.
Если использовать Docker Swarm или Кубик - оркерстрация, масштабирование и репликация ложатся на плечи Docker и отпадает необходимость в нескольких сервисах типа haproxy и keepalived.
- Какая связность между ЦОД?
- Конфиг серверов?
-
Віталій Верещагін
25 июня 2019
Конфигурация любая какая есть на Hetzner. По поводу связи между цод не понял вопроса.
Удобно будет продолжить по скайпу или терефону?
0678022700Skype: vereschagin.vitaliy
-
Михаил Штанько 25 июня 2019Настрою любой из указанный вариантов все зависит от того для чего вы использовать его будете и чем занимаетесь мой телеграмм 89290070998
Актуальные фриланс-проекты в категории DevOps
У нас есть выделенный сервер на hetzner с вебсайтом на докерах (+фреймворк laravel) Контакт с разработчиками потерян Необходимо: - восстановить и изменить серверные доступы (вероятно, ssh) - рекомендовать место хранения и настроить полный бэкап сервера с простым восстановлением, вероятно, не на hetzner для безопасности - пофиксить почему-то не отображаемый логотип (непонятно почему файл перестал быть доступным) Важно - бэкапа сайта нет, права на ошибку тоже. Рассмотрим только опытных специалистов.