以下是一些初级和高级Web开发人员必须遵循的一般安全措施。
#15 Steps To Secure Your Website
1:防止图像盗链(IMP)
图片盗链是使用我们的网站,别人的图片网址,并使用他们的带宽的过程。为了防止这种谜团,我们可以通过在代码中添加以下行来阻止访问外部服务器。
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
2:防止CSRF(跨站请求伪造)攻击
为了防止您的GET CSRF攻击和POST请求的表单提交,您可以使用以下两种方法。
首先它为每个请求包含随机标记,这是为每个会话生成的唯一字符串。
第二种方法是为每个表单字段使用随机名称。
3:防止目录访问/禁用索引
添加下面一行到你的.htaccess文件。
Options -Indexes
4:IP限制,保护您的私人和CMS登录
IP限制是先进而有效的方法来阻止未经授权的人员访问您的网站的特定区域有点方式。 这是一个示例htaccess代码,用于IP限制对特定位置的访问。
ALLOW USER BY IP
<Limit GET POST>
order deny,allow
deny from all
allow from 1.2.3.4
</Limit>
5:保护你的。htaccess文件
你可以在你的htaccess文件中写下这段代码,它不让任何人访问你的htaccess文件。
<Files ~ “^.*.([Hh][Tt][Aa])”>
order allow,deny
deny from all
satisfy all
</Files>
6:功能访问规则
通过添加“_”作为函数名称的前缀,我们可以防止功能从网络上公开被调用。当我们只需要通过AJAX访问某些特定功能时,这是最佳实践。
7:锁定你的目录和文件权限
文件权限定义谁可以做什么到一个文件中。
“阅读”= 4:查看文件内容。
“写入”= 2:更改文件内容。
“执行”= 1:运行程序文件或脚本。
8:防止cron作业从Web浏览器
运行通过添加,下面的代码行中你的页面,可以保护您的网页从Web浏览器访问。
if(! $this->input->is_cli_request()) {
die("Only CLI Requests Allowed");
}
9:隐藏的管理页面被谷歌
你不希望你的管理页面被搜索引擎收录,所以你应该使用ROBOTS_TXT文件从列出这些阻碍搜索引擎抓取。
10:禁用右键单击页面,如果不要求
禁用“右键”,以此来查看检查元素,以确保为广大用户提供网站内容的网站源代码。
11:用于CMS
不断实践使用强密码来设置随机密码,只有特殊字符。
12:请联系目录很难猜测
它可能发生,黑客可以利用该扫描所有的目录,Web服务器上像“管理员”或赠品的名称“登录”等脚本和显著的东西可能会泄露。
13:更改数据库表前缀
添加前缀这将是很难推测有担保方(项目名称和年份的混合物)。
为了说明,
A)BPM最高=> bpm14_download
B)Glickin => gk15_admin
C)TravelWorthy => tw16_user
14:防止用户的密码,这是因为重要的,因为你的
关于密码加密算法,使用sha1算法,而不是传统算法Md5,这是一种非常古老的方式,现在每个来源都变得不太安全。
参考:http://php.net/manual/en/function.sha1.php
15:隐藏错误日志
在发展方式转变,保持错误报告“ALL”,一旦我们去为“0”没有忘记LIVE变化。在这里
参考:http://php.net/manual/en/function.error-reporting.php
非常感谢您的支持:-) 我已经设置了我的网站以将会话存储在SQL DB中。 您是否大致了解使用了多少内存以及是否应该担心? 谢谢 – Ichirichi 2010-07-28 16:12:20