База знаний по Open Source
Авторизация
Поиск по базе знаний

Возможность в WordPress обеспечения принудительного доступ к административной панели по SSL почему-то очень редко используется несмотря на явные преимущества, которые она дает.

Пересылать пароли по открытому соединению плохо. Это прописная истина. Покупать сертификат на каждый сайт – это дорого, особенно если их много. Пользоваться самоподписанными сертификатами то-же не очень хорошо – многих посетителей отпугнет страшная картинки в браузере с просьбой подтвердить исключения для недоверенного сертификата.

В WordPress существует возможность перейти на протокол HTTPS только на время логина и работы с административной панелью, что очень удобно, так как обычные пользователи работают по прежнему через HTTP.

Эта возможность обеспечивается двумя системными переменными WP:

  • FORCE_SSL_ADMIN
  • FORCE_SSL_LOGIN

Начиная с версии 4.0 разработчики настоятельно рекомендуют использовать только FORCE_SSL_ADMIN.

Для начала генерируем самоподписанный сертификат:

sudo openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/certs/example.com.pem -keyout /etc/ssl/private/example.com.key

На вопрос «Common Name (e.g. server FQDN or YOUR name) []:» необходимо ввести имя сайта, для которого создается сертификат, например www.example.com. На остальные вопросы можно ответить по умолчанию, хотя рекомендуется все-таки предоставить информацию.

Далее сообщаем о сертификате Apache или Nginx. Для Apache этот процесс хорошо описан в статье “Настройка HTTPS в Apache“,  а для Nginx в файл конфигурации виртуального сервера добавляем 3 строчки:

listen 443 ssl;
 ssl_certificate /etc/ssl/certs/example.com.pem;
 ssl_certificate_key /etc/ssl/private/example.com.key;

Далее открываем любимым редактором текста файл конфигурации WordPress wp-config.php и перед строчкой

/* Это всё, дальше не редактируем. Успехов! */

вставляем оператор define:

define(‘FORCE_SSL_ADMIN’, true);

Перестартуем сервис Apache или Nginx и все должно работать.

Кроме всех прочих преимуществ работы с админкой через SSL выявилось еще одно: практически прекратились попытки подбора паролей в wordpress – видно самоподписанный сертификат вгоняет боты в ступор.

Добавить комментарий