Безопасность и.htaccess


Около месяца назад я завел блог WordPress на размещенном сервере, связанный с хобби. Итак, в настоящее время я новичок в этом деле.

Поскольку я беспокоюсь о безопасности, я сделал одну вещь - установил плагин WP Security Scan. Согласно результатам плагина, мой сайт проверяется, за исключением того, что я получаю это в результатах как красный флаг:

Файл .htaccess не существует в wp-admin/ (я вошел туда по ssh, и он не существует)

Хорошо, поэтому я сделал значительный поиск по этой проблеме и слишком много информации о .htaccess. Я прошел через укрепление WordPress на WordPress.org сайт и т.д. А также наткнулся на эту статью: http://digwp.com/2010/07/wordpress-security-lockdown/

В любом случае, я в основном запутался в изобилии доступной информации.

Что должен содержать файл .htaccess в wp-admin? Я прочитал, что этот файл .htaccess должен защищать паролем каталог wp-admin, и я также прочитайте, что это может вызвать проблемы с функциональностью.

Мы очень признательны за помощь в этом.

Спасибо. -wdypdx22

Обновление Хорошо, поэтому я не вошел в свой блог и использую другой компьютер, чем обычно. Я ввожу URL-адрес www.mysite.com/wordpress/wp-admin /и есть перенаправление для входа в систему. Если это так, то нужен ли вообще файл htaccess в каталоге wp-admin?

Author: wdypdx22, 2010-08-12

4 answers

ОБНОВЛЕНИЕ: Когда я впервые опубликовал свой ответ, я пропустил суть вопроса; мой ответ касался .htaccess безопасности в целом и теперь указан под двойной строкой (посмотрите вниз, если это вас интересует). К сожалению, у меня нет особого опыта в обеспечении /wp-admin/ с помощью .htaccess, поэтому я просто перечислю два ресурса, которые я буду использовать, когда и если мне это понадобится:

Первый рекомендует следующее (и вот некоторое обсуждение этого.)

<Files ~ "\.(php)$">
AuthUserFile /etc/httpd/htpasswd
AuthType Basic
AuthName "restricted"
Order Deny,Allow
Deny from all
Require valid-user
Satisfy any
</Files>

В последнем содержится много информации, особенно в комментариях, но, по общему признанию, предоставление вам списка для чтения - это не тот ответ, который вы искали.

Извините, я не мог быть более полезным в этом вопросе.

========================================

Обычно WordPress имеет только следующее обработана обработка постоянных ссылок и не связана с безопасностью:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Недавно я нашел плагин WP htacess Control, который управляет многими .htaccess для вас, и мне это очень нравится. После настройки настроек он добавил следующие параметры:

# WPhtC: Disable ServerSignature on generated error pages
ServerSignature Off

# WPhtC: Disable directory browsing
Options All -Indexes

# WPhtC: Protect WP-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>

# WPhtC: Protect .htaccess file
<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
</files>

Он также добавил эти параметры, которые касаются производительности, а не безопасности:

# WPhtC: Setting mod_gzip
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

# WPhtC: Setting mod_deflate
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent env=!dont-vary
</IfModule>

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

Помимо этого, если вы хотите знать эксперта (IMO) № 1 ресурс по безопасности Apache, связанный с WordPress вы можете найти его на AskApache.com ; чувак - это хардкор! Его блог не решит вашу проблему "слишком много информации", но, по крайней мере, вы можете рассматривать его как авторитетный ресурс!

Вот несколько примеров (хотя не все они напрямую связаны с WordPress, все они применимы):

В любом случае, надеюсь, это поможет.

 8
Author: MikeSchinkel, 2010-08-12 19:15:22

Идея в том, что если у вас есть файлы, зависшие после прошлых обновлений, или для атак нулевого дня, ваша система может быть взломана. Также защита wp-администратора другим методом поможет предотвратить атаки грубой силы.

Одна идея) Если вы просто редактируете сайт, вы можете ограничить доступ к папке по ip, сделав что-то вроде

<Files *>
Order deny,allow
Deny from All
Allow from 1.2.3.4
</Files>

Чтобы сделать его немного более приемлемым для динамических IP-систем; вы должны иметь возможность разрешать из подблока, поэтому, если ваш пул IP всегда начиная с 1.2.3.128-1.2.3.255, вы могли бы сделать что-то вроде 1.2.3.128/25

Еще одна идея) требовать HTTPS, давать разрешение на отказ, если они попытаются сделать это через http. Но не перенаправляйте их на https. Вы можете использовать самозаверяющий сертификат или сертификат центра сертификации, чтобы обойтись без его покупки.

 4
Author: Ryan Gibbons, 2010-08-12 18:32:56

Я всегда включаю файл .htaccess в wp-admin, даже если я никогда ничего в него не помещал, так как он отрицает файл корневого каталога. Некоторые люди используют файл wp-admin.htaccess, чтобы скрыть весь каталог от всех, кроме одного IP-адреса, другие используют его для защиты каталога паролем.

Однако защита паролем раздела администратора с помощью .htaccess отключит связь ajax, так как они взаимодействуют с wp-admin/admin-ajax.php .

В общем, я не вижу особых причин добавлять все, что угодно, в файле admin.htaccess, если только вы не очень параноик. Атаки в любом случае обычно нацелены на wp-контент.

 0
Author: John P Bloch, 2010-08-12 18:21:09

Я также использую библиотеку sseqlib для большей безопасности и различных взломов в .htacces; см. Ссылки

 0
Author: bueltge, 2010-08-13 14:14:37