Как защитить ваш WordPress паролем без регистрации пользователя. Как защитить в wordpress запись паролем
Как защитить паролем страницу или пост в WordPress?
Зачем защищать паролем?
Иногда на сайте бывает необходимо показывать некоторые записи или страницы только определенному кругу людей. Так, это может быть какой-нибудь черновик статьи для редактора или публикация для близкого человека. Для этого можно, например, установить пароль, который будет знать только тот, кому дозволено смотреть.
Возможности WordPress
В WordPress предусмотрена такая возможность, которая реализуется специальной функцией видимости контента. Чтобы посмотреть, как это работает, создадим новую запись (для страниц ситуация аналогичная). Для этого в админ-панели следует перейти Записи -> Добавить новую. В редакторе обратите внимание на блок Опубликовать.
Тут присутствует пункт Видимость. Эта настройка как раз и отвечает за видимость контента. Если нажать кнопку Изменить, то откроется список возможностей настройки.
Создавая запись или статью, по умолчанию их видимость устанавливается как Открыто. Чтобы это изменить и поставить просмотр с паролем, необходимо из списка выбрать пункт Защищено паролем, где сразу от Вас потребуют ввести этот самый пароль. После ввода необходимо нажать кнопку ОК.
Пункт Видимость сразу поменяет значение на Защищено паролем.
Для применения всех изменений необходимо нажать кнопку Опубликовать. Теперь, перейдя на созданную нам запись, будет выдано сообщение с просьбой ввести пароль.
После ввода пароля Вы сможете видеть контент записи.
Если Вам понравилась статья — поделитесь с друзьями
wpschool.ru
Всё про защиту записей паролем в WordPress
Блог / WordPress / Всё про защиту записей паролемЕсли вы администратор, редактор на блоге или автор поста, то вы можете установить на него (на пост) пароль (под постом в данном случае я буду подразумевать запись, страницу или пост произвольного типа — то есть защита паролем работает для всех них).
Так как же можно защитить пост паролем в WP?
На самом деле защитить запись паролем не сложнее, чем создать эту самую запись. Всё, что вам потребуется это:
- Как я уже писал выше — нужно быть администратором, редактором или автором (этого поста).
- Переходим на страницу редактирования поста и в блоке «Опубликовать» жмём «Видимость > Изменить».
- Выбираем Защищено паролем, устанавливаем свой пароль и жмём «Ок», затем «Обновить».
По сути всё. Если теперь мы перейдём на страницу поста, то увидим:
Та же картина будет отображаться и на других страницах блога, где присутствует эта запись, например: главная страница, рубрики, метки, архивы.
Несколько вещей про защиту паролем, про которые вам следует знать
Итак:
Как изменить форму ввода пароля на страницах сайта?
Я находил несколько очень мудрёных решений на не буду говорить каких сайтах, но на самом деле всё делается очень очень просто:
function true_new_post_pass_form() { /* * в принципе тут нужно обратить внимание на три вещи: * 1) куда ссылается форма, а также method=post * 2) значение атрибута name поля для ввода - post_password * 3) атрибуты size и maxlength поля для ввода должны быть меньше или равны 20 (про длину пароля я писал выше) * Во всём остальном у вас полная свобода действий! */ return '<form action="' . esc_url( site_url( 'wp-login.php?action=postpass', 'login_post' ) ) . '" method="post"> <input name="post_password" type="password" size="20" placeholder="Пароль к записи" maxlength="20" /> <input type="submit" name="Submit" value="Разблокировать" /> </form>'; } add_filter( 'the_password_form', 'true_new_post_pass_form' ); // вешаем функцию на фильтр the_password_form |
Ах да, если не знаете, куда вставлять код — вставляйте в functions.php (в тот, который находится в вашей активной теме WP).
А можно ли изменить стандартное сообщение для цитат?
Конечно, в этом вам поможет этот хук:
function true_protected_excerpt_text( $excerpt ) { if ( post_password_required() ) $excerpt = '<em>[Запись заблокирована. Для получения пароля обратитесь к администратору.]</em>'; return $excerpt; // если запись не защищена, будет выводиться стандартная цитата } add_filter( 'the_excerpt', 'true_protected_excerpt_text' ); |
Кроме того, используя предыдущий пример, вы даже сможете вывести форму ввода пароля.
Как полностью скрыть с сайта все записи, защищенные паролем
В этом нам поможет потрясающий хук pre_get_posts. Использование этого хука не вызовет проблем с постраничной навигацией, что важно.
/* * Небольшая модификация для SQL запроса, получающего посты */ function true_exclude_pass_posts($where) { global $wpdb; return $where .= " AND {$wpdb->posts}.post_password = '' "; } /* * При помощи этого фильтра определим, на каких именно страницах будет скрывать защищенные посты */ function true_where_to_exclude($query) { if( is_front_page() ) { // например на главной странице add_filter( 'posts_where', 'true_exclude_pass_posts' ); } } add_action('pre_get_posts', 'true_where_to_exclude'); |
Читайте подробнее про is_front_page() и другие условные теги.
misha.blog
Как защитить ваш WordPress паролем без регистрации пользователя
Существует множество статей о том, как защитить ваш контент сайта с помощью паролей. Многие из них советуют использовать сложные плагины членства(membership), которые требуют регистрации пользователей. Однако, что если вам просто нужно защитить с помощью пароля сайт без дополнительных регистраций? Представим, что у вас есть демо сайт для демонстрации работы клиенту. И только лишь ему одному позволено видеть сайт. В этой статье мы покажем вам простой способ быстрой защиты сайта на WordPress с помощью одного пароля.
Первым делом вам необходимо установить и активировать плагин Password Protected. После активации вы увидите новые настройки в меню «Настройки » Privacy». Если вы используете версию 3.5, тогда настройки будут под меню «Настройки » Чтение».
Включите статус Password Protect. Вы можете также разрешить ленту новостей, однако в большинстве случаев в этом не будет необходимости, поэтому оставляем все «как есть». Добавьте здесь нужный пароль и все готово!
Примечание: Если вы используете этот способ для клиентов, тогда вам, вероятно, стоит сбрасывать пароль и устанавливать новый после каждого клиента.
Теперь же, когда кто-либо попробует получить доступ к информации на вашем сайте, они увидят форму с паролем вроде этой:
Вы также можете изменить лого для страницы логина и установить собственное с помощью плагина Login Logo.
Можно использовать эту методику для создания приватных блогов, когда только вам будет разрешен доступ к сайту, или членам вашей семьи и друзьям без необходимости регистрироваться на сайте.
По всем вопросам и отзывам просьба писать в комментарии ниже.
Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.
VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
wpincode.com
Как защитить ваш WordPress паролем без регистрации пользователя
Существует множество статей о том, как защитить ваш контент сайта с помощью паролей. Многие из них советуют использовать сложные плагины членства(membership), которые требуют регистрации пользователей. Однако, что если вам просто нужно защитить с помощью пароля сайт без дополнительных регистраций? Представим, что у вас есть демо сайт для демонстрации работы клиенту. И только лишь ему одному позволено видеть сайт. В этой статье мы покажем вам простой способ быстрой защиты сайта на WordPress с помощью одного пароля.
Первым делом вам необходимо установить и активировать плагин Password Protected. После активации вы увидите новые настройки в меню «Настройки » Privacy». Если вы используете версию 3.5, тогда настройки будут под меню «Настройки » Чтение».
Включите статус Password Protect. Вы можете также разрешить ленту новостей, однако в большинстве случаев в этом не будет необходимости, поэтому оставляем все «как есть». Добавьте здесь нужный пароль и все готово!
Примечание: Если вы используете этот способ для клиентов, тогда вам, вероятно, стоит сбрасывать пароль и устанавливать новый после каждого клиента.
Теперь же, когда кто-либо попробует получить доступ к информации на вашем сайте, они увидят форму с паролем вроде этой:
Вы также можете изменить лого для страницы логина и установить собственное с помощью плагина Login Logo.
Можно использовать эту методику для создания приватных блогов, когда только вам будет разрешен доступ к сайту, или членам вашей семьи и друзьям без необходимости регистрироваться на сайте.
По всем вопросам и отзывам просьба писать в комментарии ниже.
Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.
Источник
Written by: AmoSeo
amoseo.com
Как защитить паролем папку wp-admin в WordPress
После прочтения заголовка, вы навернео задались вопросом, разве не защищена директория wp-admin паролем? Да, вам предлагают залогиниться. Все это верно, однако популярные сайты предпочитают навесить еще один «слой» безопасности в виде дополнительной аутентификации. Несколько дней назад появилась новость на ХабраХабре Распределённая атака на WordPress сайты об атаках на сайты на WordPress. В статье рекомендуют защитить паролем админ.папку. В этой статье мы расскажем, как пошагово усановить пароль на директорию wp-admin.
Чтобы все было легко и доступно, мы рассмотрим только хостинги с панелью управления cPanel, так как у cPanel довольно простой интерфейс для установки пароля на папки на сервере.
Залогиньтесь в вашу cPanel. Прокрутите до вкладки Безопасность (Security). Кликните на иконку “Password Protect Directories”.
После клика появится модальное окно, в котором у вас запросят расположение папки. Кликлине на корень сервера. Когда окажетесь там, перейдите в папку, где установлен ваш WordPress. Затем кликните на папку /wp-admin/. Увидите что-то вроде этого:
Отметьте соответствующую галочку «Password protect this directory». Затем создайте пользователя для папки. Вот и все. Теперь при попытке доступа к wp-admin вы будете видеть окошко запроса пароля:
Ручной способ
Перво-наперво создайте файл .htpasswds. Также это можно сделать с помощью этого генератора. Загрузите этот файл вне вашего каталога /public_html/. К примеру, это может быть:
home/user/.htpasswds/public_html/wp-admin/passwd/
home/user/.htpasswds/public_html/wp-admin/passwd/ |
Затем создайте файл .htaccess и загрузите его в папку /wp-admin/. Добавьте туда следующие строки:
AuthName "Admins Only" AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd AuthGroupFile /dev/null AuthType basic require user putyourusernamehere
AuthName "Admins Only" AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd AuthGroupFile /dev/null AuthType basic require user putyourusernamehere |
Здесь вам нужно указать имя пользователя вместо putyourusernamehere, а также обновить путь к файлу с паролем — AuthUserFile .
Если возникает ошибка 404 или Too many redirects
Такое может случиться в зависимости от того, как настроен ваш сервер. Для исправления ошибок, откройте ваш основной файл .htaccess (находящийся в корне установленного движка) и добавьте туда следующие директивы, перед директивами WordPress.Well this can happen depending on how your server is configured. To fix this issue, open your main WordPress .htaccess file and add the following code there before the WordPress rules start.
ErrorDocument 401 default
ErrorDocument 401 default |
Всё. Готово. Теперь у вас двухэтапная аутентификация в админ.панель сайта.
Примечание: Как исправить ошибку Admin Ajax
Если вы таким вот способом защитили админ.папку WordPress, он (способ) мог нарушить функциональную Ajax-часть сайта (если таковая использовалась).В таком случае необходимо в файл .htaccess, расположеный в папке /wp-admin/ (НЕ тот файл, который мы редактировали выше), добавить следующий код:
<Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files>
<Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files> |
Источник
Written by: AmoSeo
amoseo.com
Как защитить паролем папку wp-admin в WordPress
После прочтения заголовка, вы навернео задались вопросом, разве не защищена директория wp-admin паролем? Да, вам предлагают залогиниться. Все это верно, однако популярные сайты предпочитают навесить еще один «слой» безопасности в виде дополнительной аутентификации. Несколько дней назад появилась новость на ХабраХабре Распределённая атака на WordPress сайты об атаках на сайты на WordPress. В статье рекомендуют защитить паролем админ.папку. В этой статье мы расскажем, как пошагово усановить пароль на директорию wp-admin.
Чтобы все было легко и доступно, мы рассмотрим только хостинги с панелью управления cPanel, так как у cPanel довольно простой интерфейс для установки пароля на папки на сервере.
Залогиньтесь в вашу cPanel. Прокрутите до вкладки Безопасность (Security). Кликните на иконку “Password Protect Directories”.
После клика появится модальное окно, в котором у вас запросят расположение папки. Кликлине на корень сервера. Когда окажетесь там, перейдите в папку, где установлен ваш WordPress. Затем кликните на папку /wp-admin/. Увидите что-то вроде этого:
Отметьте соответствующую галочку «Password protect this directory». Затем создайте пользователя для папки. Вот и все. Теперь при попытке доступа к wp-admin вы будете видеть окошко запроса пароля:
Ручной способ
Перво-наперво создайте файл .htpasswds. Также это можно сделать с помощью этого генератора. Загрузите этот файл вне вашего каталога /public_html/. К примеру, это может быть:
home/user/.htpasswds/public_html/wp-admin/passwd/Затем создайте файл .htaccess и загрузите его в папку /wp-admin/. Добавьте туда следующие строки:
AuthName "Admins Only" AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd AuthGroupFile /dev/null AuthType basic require user putyourusernamehereЗдесь вам нужно указать имя пользователя вместо putyourusernamehere, а также обновить путь к файлу с паролем — AuthUserFile .
Если возникает ошибка 404 или Too many redirects
Такое может случиться в зависимости от того, как настроен ваш сервер. Для исправления ошибок, откройте ваш основной файл .htaccess (находящийся в корне установленного движка) и добавьте туда следующие директивы, перед директивами WordPress.Well this can happen depending on how your server is configured. To fix this issue, open your main WordPress .htaccess file and add the following code there before the WordPress rules start.
ErrorDocument 401 defaultВсё. Готово. Теперь у вас двухэтапная аутентификация в админ.панель сайта.
Примечание: Как исправить ошибку Admin Ajax
Если вы таким вот способом защитили админ.папку WordPress, он (способ) мог нарушить функциональную Ajax-часть сайта (если таковая использовалась).В таком случае необходимо в файл .htaccess, расположеный в папке /wp-admin/ (НЕ тот файл, который мы редактировали выше), добавить следующий код:
<Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files>VN:F [1.9.22_1171]
Rating: 4.5/5 (2 votes cast)
wpincode.com
Как закрыть папку паролем. Защита WordPress
Дата 08.08.2016 Автор Alex Рубрика Веб сайты, Интернет, Сервер
Дошли слухи о том, что WordPress далеко не идеал безопасности. Хоть обновления выходят достаточно часто, но в систему все равно умудряются пролезть. Но судя по тому, что официальный плагин "jetpack" от WordPress заявил, что за 2 дня с момента его установки меня пытались сломать 32 раза, то я решил обезопаситься.
Честно, не представляю как работает WordPress и в статье "Ссылки и ревизии статей в WordPress" уже упоминал о том, что обычно работаю с 1С-Битрикс. Поэтому выбрал самый надёжный метод - поставил пароль на главные файлы/папки управления, через которые можно проникнуть. Посчитал что к таким особо уязвимым относятся файл wp-login.php и папка /wp-admin/.
При закрытии паролем файла/папки необходимо выполнить два действия: создать файл с логином-паролем, указать какие папки надо закрыть. На Linux для создания файла с паролем необходимо использовать команду
htpasswd -c /etc/htpasswd/alexgur.ru/.htpasswd user_name
Объяснение по порядку:
- Ключ "-c" означает создание файла при его отсутствии. Значение всех параметров можно посмотреть в документации htpasswd
- Обратите внимание на директорию для хранения файла: "/etc/htpasswd/alexgur.ru/.htpasswd". Она находится вдалеке от сайта, поэтому достать файл и подобрать пароль будет крайне сложно. Не стоит класть файл с паролем в корневую папку сайта.
- "user_name" необходимо заменить на логин (думаю, не стоит ставить тут свой логин от входа в административную часть WordPress - лучше придумать другой).
- После ввода команды попросят задать пароль и подтвердить
Теперь осталось только указать какие папки и файлы хотим защитить этим паролем. Записываем в конец файла .htaccess (в корневой сайта) следующие строки:
<Files "wp-login.php" >AuthUserFile /etc/htpasswd/alexgur.ru/.htpasswdAuthName "Authentication Required"AuthType BasicRequire valid-user</Files>
Этот файл находится отдельно от панели администратора. Поэтому защищать его надо индивидуально, через .htaccess в корневой папке сайта. Теперь подробнее что же здесь написано:
- Внутри <Files "..." > пишем на какой файл/папку будет распространяться правило
- AuthUserFile - путь к файлу, где хранится пароль, который был создан ранее
- AuthName "..." - текст на табличке, которую увидит пользователь с просьбой авторизоваться
- AuthType Basic - тип аутентификации. Для простой аутентификации значение: Basic
- Require valid-user - разрешает доступ всем пользователям, прошедшим проверку
Попробуйте запустить браузер в режиме "инкогнито" и загрузить страницу сайта /wp-login.php. Если увидите требование к авторизации, то всё сделано верно.
Далее необходимо защитить панель администратора. Создаём файл .htaccess в папке /wp-admin/ со следующим содержанием:
AuthUserFile /etc/htpasswd/alexgur.ru/.htpasswdAuthName "Authentication Required"AuthType BasicRequire valid-user
Теперь при входе в панель администратора будет появляться запрос на ввод логина/пароля.
Метки: IT защита, WordPress, Хаккеры, Хостинг
www.alexgur.ru