📖 Один из фундаментальных принципов безопасности сайтов - техническая изоляция сайтов друг от друга.
Когда на хостинге размещается 3-10-100+ сайтов внутри одного пользовательского аккаунта, взлом одного сайта чаще всего приводит ко взлому всех на аккаунте. В прошлом году одна региональная веб-студия с ~500 клиентами закрылась только потому, что держала все сайты на своем VPS сервере внутри пользователя admin и не смогла справиться со взломом и заражением 500+ сайтов (просто раздала всем зараженные копии и попрощалась).
Вариантов технической изоляции - масса, но при любом из них важно убедиться, что скриптами одного сайта нельзя получить доступ на чтение/запись файлов другого сайта.
Причем это касается как скриптов php, так и любых других (perl/python/cgi скрипты и т.п...).
Существует несколько заблуждений про изоляцию и безопасность, о которых следует знать:
1. open_basedir - это полумера. Если вы настроите ее для каждого сайта, это не гарантирует изоляцию. Хотя, это лучше, чем ничего. Размещение в контейнере или под разными пользователями ОС - это более эффективный способ изоляции сайтов.
2. Если у каждого сайта свой FTP доступ, это не изолирует сайты друг от друга. Системный пользователь у них скорее всего будет один. А вот если к каждому сайту есть SSH доступ, то сайты изолированы (хотя есть и исключения, но ими можно пренебречь). Кстати, вы все еще пользуетесь FTP в 2018 году? Срочно переходите на SFTP.
Имеет смысл позаботиться о том, чтобы каждый сайт работал изолированно, до того, как его взломают.
Выбирайте хостинги с изоляцией, создавайте отдельных пользователей под каждый сайт на VPS сервере, используйте lxc/docker/виртуальные машины, если знакомы с их работой и настройкой.
#изоляция #совет
Когда на хостинге размещается 3-10-100+ сайтов внутри одного пользовательского аккаунта, взлом одного сайта чаще всего приводит ко взлому всех на аккаунте. В прошлом году одна региональная веб-студия с ~500 клиентами закрылась только потому, что держала все сайты на своем VPS сервере внутри пользователя admin и не смогла справиться со взломом и заражением 500+ сайтов (просто раздала всем зараженные копии и попрощалась).
Вариантов технической изоляции - масса, но при любом из них важно убедиться, что скриптами одного сайта нельзя получить доступ на чтение/запись файлов другого сайта.
Причем это касается как скриптов php, так и любых других (perl/python/cgi скрипты и т.п...).
Существует несколько заблуждений про изоляцию и безопасность, о которых следует знать:
1. open_basedir - это полумера. Если вы настроите ее для каждого сайта, это не гарантирует изоляцию. Хотя, это лучше, чем ничего. Размещение в контейнере или под разными пользователями ОС - это более эффективный способ изоляции сайтов.
2. Если у каждого сайта свой FTP доступ, это не изолирует сайты друг от друга. Системный пользователь у них скорее всего будет один. А вот если к каждому сайту есть SSH доступ, то сайты изолированы (хотя есть и исключения, но ими можно пренебречь). Кстати, вы все еще пользуетесь FTP в 2018 году? Срочно переходите на SFTP.
Имеет смысл позаботиться о том, чтобы каждый сайт работал изолированно, до того, как его взломают.
Выбирайте хостинги с изоляцией, создавайте отдельных пользователей под каждый сайт на VPS сервере, используйте lxc/docker/виртуальные машины, если знакомы с их работой и настройкой.
#изоляция #совет