网站的安全性该如何提升?服务器该怎么选?

网站的安全性该如何提升?服务器该怎么选?,第1张

您好,我来回答一下:

网站安全

早期的建站确实面临很多安全风险,像比较有名的SQL注入、XSS,用什么阿D、明小子之类的软件轻松提权,然后用灰鸽子一控制,就为所欲为了,但这只能吹牛逼了,现在开发阶段用的框架哪个不能把你防的死死的,除非很low的开发用很古老的技术,那样的站点被黑了会有什么损失

如果非要强调安全,我觉得做好以下几点:

数据安全(全量、增量备份,异地互备)服务器(安全补丁、账号安全、安全日志、防火墙配置、进程检查、系统文件篡改检查等)开发安全(了解安全知识,了解常见攻击手段,提高安全意识)其它有些开源系统某个版本后门都众所周知了,就不要用了,用新的版本或其它产品

服务器选择

选服务器要根据实际情况来:

多大的网站,是不是非得要服务器搞定,还是一个空间就可以解决问题开发人员用的语言如果ASPNET微软体系的,用Win8服务器版本合适,其它像JAVAPHP无疑用Linux更好总的来说Linux安全性稳定性都优于Windows而且开源免费,如果没有因素限制,推荐用Linux

希望对你有帮助

粗略地分析, 登录机制主要分为登录验证、登录保持、登出三个部分。登录验证是指客户端提供用户名和密码,向服务器提出登录请求,服务器判断客户端是否可以登录并向客户端确认。 登录认保持是指客户端登录后, 服务器能够分辨出已登录的客户端,并为其持续提供登录权限的服务器。登出是指客户端主动退出登录状态。容易想到的方案是,客户端登录成功后, 服务器为其分配sessionId, 客户端随后每次请求资源时都带上sessionId。
上述简易的登录验证策略存在明显的安全漏洞,需要优化。

客户端第一次发出登录请求时, 用户密码以明文的方式传输, 一旦被截获, 后果严重。因此密码需要加密,例如可采用RSA非对称加密。具体流程如下:

再仔细核对上述登录流程, 我们发现服务器判断用户是否登录, 完全依赖于sessionId, 一旦其被截获, 黑客就能够模拟出用户的请求。于是我们需要引入token的概念: 用户登录成功后, 服务器不但为其分配了sessionId, 还分配了token, token是维持登录状态的关键秘密数据。在服务器向客户端发送的token数据,也需要加密。于是一次登录的细节再次扩展。
在最原始的方案中, 登录保持仅仅靠服务器生成的sessionId: 客户端的请求中带上sessionId, 如果服务器的redis中存在这个id,就认为请求来自相应的登录客户端。 但是只要sessionId被截获, 请求就可以为伪造, 存在安全隐患。

引入token后,上述问题便可得到解决。 服务器将token和其它的一些变量, 利用散列加密算法得到签名后,连同sessionId一并发送给服务器; 服务器取出保存于服务器端的token,利用相同的法则生成校验签名, 如果客户端签名与服务器的校验签名一致, 就认为请求来自登录的客户端。
13 TOKEN失效
用户登录出系统

失效原理:
在服务器端的redis中删除相应key为session的键值对。
App因为要实现自动登陆功能,所以必然要保存一些凭据,所以比较复杂。

App登陆要实现的功能:

这里判断时间,主要是防止攻击者截取到加密串后,可以长久地利用这个加密串来登陆。

不用AES加密,用RSA公钥加密也是可以的。AES速度比RSA要快,RSA只能存储有限的数据。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/12901937.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存