Security and .htaccess

时间:2010-08-12 作者:wdypdx22

大约一个月前,我在一个与爱好相关的托管服务器上创建了一个WordPress博客。所以,我目前还不熟悉这一点。

由于我担心安全性,我做的一件事就是安装插件WP安全扫描。根据插件结果,我的网站会被检查出来,但我在结果中看到的是一个红旗:

文件。wp admin中不存在htaccess/(我在那里ssh了,它不存在)

好的,所以我在这个问题上做了大量的搜索,找到了太多的信息。htaccess。我在WordPress上经历了强化WordPress。org网站等,也遇到了这篇文章:http://digwp.com/2010/07/wordpress-security-lockdown/

不管怎样,我基本上对现有的大量信息感到困惑。

What should the .htaccess file in wp-admin contain? 我读过这篇文章。htaccess文件应该对wp admin目录进行密码保护,我还了解到这可能会导致功能问题。

非常感谢您的帮助。

谢谢-wdypdx22

Update 好的,所以我没有登录到我的博客,也没有使用与平常不同的计算机。我输入url www.mysite。com/wordpress/wp admin/并重定向到登录。如果是这样,那么wp admin目录中是否需要htaccess文件?

4 个回复
最合适的回答,由SO网友:MikeSchinkel 整理而成

UPDATE: 当我第一次发布我的答案时,我错过了问题的关键;我的回答是关于.htaccess (如果您现在在下面的“安全”栏中列出了“双重利益”。)不幸的是,我没有安全方面的具体经验/wp-admin/ 使用.htaccess 因此,我将简单列出我将在需要时寻求的两种资源:

第一条建议如下(这里是some discussion about it.)

<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 security related to WordPress 你可以在网上找到AskApache.com; 这家伙是铁杆!他的博客不会解决你“信息太多”的问题,但至少你可以将其视为权威资源!

以下是一些示例(虽然并非所有示例都与WordPress直接相关,但它们都适用):

SO网友:Ryan Gibbons

其背后的想法是,如果您在过去的升级或零日攻击中有扼杀文件,您的系统可能会遭到黑客攻击。此外,通过另一种方法保护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。您可以使用自签名证书或CA证书中的证书,无需购买。

SO网友:John P Bloch

我总是包括一个。htaccess文件在wp admin中,即使我从未在其中放入任何内容,因为它否定根目录的文件。有些人使用wp管理员。htaccess文件对除一个IP地址以外的所有IP地址隐藏整个目录,其他人使用它对目录进行密码保护。

但是,使用密码保护管理部分。htaccess将禁用ajax通信,因为它们与wp admin/admin ajax交互。php。

一般来说,我看不出有什么理由向管理员添加任何内容。htaccess文件,除非你极度偏执。攻击通常以wp内容为目标。

SO网友:bueltge

我还使用了sseqlib库来实现更高的安全性和不同的黑客攻击。htacces;查看链接

结束

相关推荐

How do you debug plugins?

我对插件创作还很陌生,调试也很困难。我用了很多echo,它又脏又丑。我确信有更好的方法可以做到这一点,也许是一个带有调试器的IDE,我可以在其中运行整个站点,包括插件?