Читаючи назву посту, ви могли подумати, а хіба директорія wp-admin не захищена спочатку? Адже спочатку потрібно авторизуватися в WordPress, щоб потрапити всередину. З одного боку це так, але ж ніхто не скасовував зломи та атаки на сайт. Та й зайвий прошарок у безпеці не завадить. Наприклад, популярні сайти типу Mashable захищають додатково свої внутрішні директорії. У цьому посібнику я покажу вам, як захистити паролем доступ до папки wp-admin у WordPress.
cPanel
Для початку я наведу інструкцію щодо встановлення пароля через cPanel. Чому саме cPanel? Тому що це одна з найпопулярніших панелей керування хостингом у світі.
Увійдіть до вашої панелі cPanel (ви можете зайти в демо-версію панелі тут), і натисніть на піктограму Password Protect Directories у секції Security.

Як тільки ви натиснете, з'явиться спливаюче вікно з вибором розміщення кореневої директорії, просто натисніть Go (вибрано за замовчуванням Web Root ).

Потім перейдіть до папки wp-admin , тисніть на зображення папки, щоб потрапити у внутрішній каталог. Після вибору папки wp-admin ви побачите:

Просто позначте галочкою поле Password protect , потім створіть нового користувача для доступу до директорії, вказавши ім'я та пароль . Ось і все! Тепер при спробі увійти до каталогу wp-admin ви побачите вікно авторизації:

ручний спосіб
Для початку створіть файл .htpasswds . Ви можете це легко зробити, скориставшись цим генератором . Потім завантажте цей файл на один рівень вище директорії /public_html/ . У вас повинен вийти приблизно такий шлях:
home/user/.htpasswds/public_html/wp-admin/passwd/
Після цього створіть файл .htaccess і завантажте його в каталог wp-admin . Додайте наступний код у файл .htaccess :
AuthName "Admins Only" AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd AuthGroupFile /dev/null AuthType basic require user putyourusernamehere
Вам потрібно буде вписати в код свій username . І не забудьте вказати правильний шлях для AuthUserFile.
Якщо ви бачите помилку 404 або інші помилки
Таке може бути залежно від того, як налаштований ваш сервер. Можна спробувати виправити це в такий спосіб. Відкрийте ваш основний файл .htaccess в WordPress і додайте туди наступний код перед початком опису WordPress правил ( WordPress rules ):
ErrorDocument 401 default
Це має допомогти. Тепер у вас подвійний захист для Консолі та всієї іншої зони wp-admin . Це непогана альтернатива іншому способу, який ми описували в уроці " Як обмежити кількість спроб входу в консоль WordPress ".
Оновлення: Як виправити непрацюючу Ajax функціональність
Якщо ви захистите паролем вашу wp-admin директорію, це може зламати Ajax функціональність у front-end (якщо використовується). Це можна легко виправити.
Відкрийте файл .
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any
</Files>




















Коментарі до запису: 2
Ще можна дозволити доступ з певного IP
Файл .htaccess має містити
___________________
замовити заперечувати, дозволяють
відмовити від усіх
allow from xxx.xxx.xxx.xxx
allow from yyy.yyy.yyy.yyy
___________________
У якій директорії лежить — на ту й поширюється
Не дуже зручно. У мене є користувачі, яким потрібний доступ до адмінки — їм доведеться двічі вводити пароль.