セキュリティと.htaccess


8

約1か月前に、趣味に関連するホスト型サーバーでWordPressブログを始めました。それで、私は現在これに不慣れです。

私はセキュリティが気になるので、WP Security Scanプラグインをインストールしました。プラグインの結果によると、私のサイトは、これを赤い旗として結果に表示することを除いて、チェックアウトしています。

ファイル.htaccessはwp-admin /に存在しません(そこにsshして、存在しません)

わかりましたので、問題についてかなりの検索を行ったところ、.htaccessに関する情報が多すぎます。私はWordPress.orgサイトなどでWordPressの強化を経験してきました。また、この記事に遭遇しました:http : //digwp.com/2010/07/wordpress-security-lockdown/

とにかく、私は基本的に、入手可能な情報の多さと混乱しました。

wp-adminの.htaccessファイルには何を含める必要がありますか?この.htaccessファイルはwp-adminディレクトリをパスワードで保護する必要があることと、これが機能上の問題を引き起こす可能性があることを読みました。

これの助けは大歓迎です。

ありがとう。-wdypdx22

更新しました。ブログにログインせず、通常とは別のコンピューターを使用します。www.mysite.com/wordpress/wp-admin/というURLを入力すると、ログインへのリダイレクトがあります。それが起こった場合、htaccessファイルはwp-adminディレクトリでも必要ですか?


WP Security Scanの開発者に聞いてみましたか?
Doug

@Doug-はい、開発者にはフォーラムがあり、他の少なくとも2人がまったく同じ質問をし、応答しません。また、私はwordpress.orgに投稿しましたが、そこにも応答がありませんでした。だから、多分これは問題ではありませんか?
wdypdx22 2010

回答:


8

更新:最初に回答を投稿したとき、質問の核心を逃しました。私の答えはについてだった.htaccess、一般的にはセキュリティと今の二重線の下にリストされている(それはあなたの興味のある場合見下ろす。)残念ながら私は確保して、特定の経験がありません/wp-admin/使用して.htaccess、私は単に私がしている場合追求する2つのリソースをリストアップしますので、それが必要:

最初のものは以下をお勧めします(そしてここにそれについてのいくつかの議論があります。)

<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できます。

それ以上に、WordPressに関連するApacheセキュリティに関する(IMO)#1エキスパートリソースを知りたい場合は、AskApache.comで見つけることができます。男はハードコアです!彼のブログは「情報が多すぎる」問題を解決しませんが、少なくともそれを信頼できるリソースとして見ることができます!

以下にいくつかの例を示します(すべてがWordPressに直接関連しているわけではありませんが、すべて該当します)。

とにかく、これが役に立てば幸いです。


全体的なセキュリティのための優れた情報ですが、/ wp-admin /フォルダーについては回答しません
Ryan Gibbons

これはすべて役に立つ情報かもしれませんが、質問とは何の関係もありません。これはすべて、ルートディレクトリの.htaccessに関連しています。元の質問は、wp-adminサブディレクトリの.htaccessに関するものでした。
Doug

@ Insanity5902 @Doug:悪い。私がそれを読んでいたとき、私はそれを見なかった。
MikeSchinkel 2010

2
基本的に、全体的なセキュリティが私の目標であるため、基本的にはあなたの答えを受け入れました。私のブログは非常に新しいですが、私のトラフィックは増加しています。基本的には、実際に大量のトラフィックが発生し始めた場合に備えて、セキュリティ対策を講じたいだけです。
wdypdx22

1
@wdypdx-どうもありがとう。太字であなたの核心的な質問を逃してしまったことに気づいたとき、私は本当に恥ずかしかったです。嬉しいです。
MikeSchinkel 2010

4

その背後にある考えは、過去のアップグレードやゼロデイ攻撃のために首を絞めているファイルが滞っている場合、システムがハッキングされる可能性があるということです。また、別の方法でwp-adminを保護すると、ブルートフォース攻撃を防ぐことができます。

1つのアイデア)それだけでサイトを編集している場合は、次のような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ファイルを使用して、ディレクトリ全体を1つを除くすべてのIPアドレスから隠し、他の人々はそれを使用してディレクトリをパスワード保護します。

ただし、adminセクションを.htaccessでパスワード保護すると、wp-admin / admin-ajax.phpとやり取りするため、ajax通信が無効になります。

一般的に、非常に偏執的でない限り、admin .htaccessファイルに何かを追加する理由はあまりありません。攻撃は通常、とにかくwp-contentをターゲットにします。


1
サブディレクトリの.htaccessファイルは、ルートディレクトリのディレクティブを上書きできますが、空の.htaccessは何も無効にしません。
Doug

それから私は誤解されました。うーん...
ジョンPブロッホ

あなたがする必要があるのは、もしあれば、ルートにあるものを逆にすることです。ただし、狂気の答えは、最高とマークされたものよりも優れていますが、狂気の情報が含まれている場合が最善です。
Arlen Beiler、2013

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.