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

8

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

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

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

Итак, я провел значительный поиск по этой проблеме и нашел слишком много информации о .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?

wdypdx22
источник
Вы пытались спросить разработчика WP Security Scan?
Дуг
@Doug - Да, у разработчика есть форум, где как минимум 2 других человека задают тот же вопрос и не получают ответа. Кроме того, я разместил на wordpress.org и никакого ответа там тоже нет. Так что, может быть, это даже не имеет значения?
wdypdx22

Ответы:

8

ОБНОВЛЕНИЕ : Когда я впервые опубликовал свой ответ, я пропустил суть вопроса; мой ответ был о.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, все они применимы):

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

MikeSchinkel
источник
Отличная информация для общей безопасности, но не отвечает о / wp-admin / folder
Райан Гиббонс
Хотя это все может быть полезной информацией, ни один из них не имеет никакого отношения к вопросу. Это все относится к .htaccess в корневом каталоге. Первоначальный вопрос был о .htaccess в подкаталоге wp-admin.
Дуг
@ Insanity5902 @Doug: Мой плохой. Я просто не видел этого, когда читал это.
MikeSchinkel
2
Я принял ваш ответ в основном потому, что моя цель - в целом безопасность. Мой блог очень новый, но мой трафик растет. По сути, я просто хочу принять меры безопасности для того, чтобы и когда я действительно начал получать много трафика. -Спасибо
wdypdx22
1
@wdypdx - Большое спасибо. Я был очень смущен, когда понял, что пропустил ваш основной вопрос жирным шрифтом. Рад, что получилось положительно.
MikeSchinkel
4

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

Одна идея) Если вы редактируете сайт, вы можете ограничить доступ к папке, выполнив 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. Вы можете использовать самоподписанный сертификат или сертификат CA Cert, чтобы обойтись без его покупки.

Райан Гиббонс
источник
0

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

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

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

Джон П Блох
источник
1
Файл .htaccess в подкаталоге может переопределять директивы в корневом каталоге, но пустой .htaccess ничего не отменяет.
Дуг
Тогда я был дезинформирован. Хммм ...
Джон П Блох
Что вам нужно сделать, это изменить то, что находится в корне, если что-нибудь. Тем не менее, ответ Insanity лучше, чем тот, который помечен как лучший, хотя было бы лучше, если бы в нем была информация Insanity.
Арлен Бейлер
0

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

bueltge
источник