Как защитить сервер
Общие рекомендации
Часто обычные хостинги ограничены в возможностях для тонкой настройки безопасности, поэтому мы рекомендуем размещать обменник на виртуальном выделенном сервере (VPS/VDS) и выполнить его настройку, чтобы снизить риски взлома. Как правило, у хостинг-провайдеров есть платные услуги по настройке виртуальных серверов. Привлекать сторонних специалистов для настройки можно, но только тех, кому вы доверяете.
На хостинге (биллинг для управления услугой), где размещен ваш сайт, включите SMS-авторизацию в личный кабинет. Установите другие способы ограничения на вход, если такие предусмотрены вашим хостингом. Для хостинг-провайдера Reg.ru, как минимум, включите SMS-авторизацию и оповещение на e-mail при авторизации в личном кабинете;
Обновите модуль Ioncube Loader до последней версии;
Установите и настройте на сервере модуль fail2ban;
Установите на сервере антивирус и сканер портов. Настройте регулярное сканирование файлов сервера и портов;
Настройте брандмауэр. Заблокируйте порты для FTP, SSH и различных Shell-клиентов;
Заблокируйте стандартные адреса к форме авторизации сервера. Например, для Ispmanager это:
https://ip_адрес/manager,https://ip_адрес/manager/ispmngr,https://ip_адрес/ispmngr;Измените стандартный порт к форме авторизации сервера. Для ispmanager обычно используется порт 1500. Установить любое свободное значение порта;
Заблокируйте адрес доступа к phpmyadmin. Достаточно установить на сервере права 444 на папку с phpmyadmin;
Заблокируйте адрес доступа к почтовым клиентам. Например,
https://ip_адрес/webmail/,https://ip_адрес/roundcube/и т.п. Достаточно установить на сервере права 444 на папку почтового клиента;Для всех пользователей сервера, в том числе root, установите пароль длиной не менее 15-25 символов;
Не храните резервные копии файлов и базы данных на сервере, особенно в корневой папке сайта.
Настройка служб и опций
Закройте возможность работы вебшеллов через файл php.ini (отредактируйте существующую или добавьте новую директиву):
disable_functions = exec,system,passthru,shell_exec,proc_open,show_source
Если вы используете ispmanager, выполните следующие шаги:
Авторизуйтесь в ispmanager под root-пользователем.
Перейдите в раздел "Сайты", выберите ваш сайт и нажмите кнопку "Настройки PHP для сайта".

Поиском найдите директиву
disable_functions, отметьте её галочкой и нажмите кнопку с карандашом ("Изменить переменную").

Добавьте указанные функции (не удаляйте предыдущие значения — дополните строку указанными функциями):
exec,system,passthru,shell_exec,proc_open,show_sourceи сохраните изменения.
Запретите загрузку файлов через
allow_url_includeиallow_url_fopen— это снизит риск удаленного выполнения кода:
Если вы используете ispmanager, выполните следующие шаги:
Авторизуйтесь в ispmanager под root-пользователем.
Перейдите в раздел "Сайты", выберите ваш сайт и нажмите кнопку "Настройки PHP для сайта".

Поиском найдите директивы по тексту
allow_url, отметьте их галочкой и нажмите кнопку с карандашом ("Изменить переменную").

Укажите
Offдля переменных и сохраните изменения.

Отключите некоторые расширения (если они не нужны). Например:
Если вы используете ispmanager, выполните следующие шаги:
Авторизуйтесь в ispmanager под root-пользователем.
Перейдите в раздел "PHP", выберите версию PHP, которая используется на вашем сайте и нажмите кнопку "Расширения".

Поиском найдите расширения по тексту
phar(пример), отметьте их галочкой и нажмите кнопку с карандашом ("Выключить расширение").

Нажмите кнопку и подтвердите выключение расширения во всплывающем окне.
Ограничьте доступ к
php.iniиwp-config.phpчерез файл.htaccess
Если вы используете ispmanager, выполните следующие шаги:
Авторизуйтесь в ispmanager под любым пользователем.
Перейдите в раздел "Сайты", выберите ваш сайт и нажмите кнопку "Файлы сайта".

Найдите файл
.htaccessи перейдите в режим его редактирования двойным кликом.

Укажите указанный выше текст в файле и сохраните изменения.

Настройка прав на файлы

Если в админбаре отображается предупреждение об ошибках в виде анимированного красного круга, откройте раздел с ошибками.
Если в разделе отображается ошибка о некорректных правах на файлы, измените права указанных файлов на более безопасные (зачеркнутое значение — текущие права, после ➔ рекомендуемые права).
Официальная инструкция от Wordpress по настройке прав на файлы
Предупреждения также отображаются в разделе "Консоль", блок "Проверка безопасности"

При использовании ispmanager перейдите в раздел "Сайты", выберите ваш сайт и нажмите кнопку "Файлы сайта".

Выберите файл с некорректными правами и нажмите кнопку "Атрибуты".

Укажите рекомендуемые права в строке "Права доступа" и сохраните изменения.

После изменения прав предупреждение пропадёт в админ-панели.
Последнее обновление