如果我们开发了一个中等规模,B/S架构的软件,对数量有限的用户提供服务,管理中等规模的的业务,那么,如何给出一个技术方案,可以既便宜又省心,提供基本合格的安全保证。这里不去讨论一些实现细节,比如说密码多长合适,强制多久失效等等。
首先,我们购买云服务器,让专业的公司来保证可服务性。国内比较推荐的就是阿里云。
其次,不管B/S中用的是那种web框架,都额外用一个nginx来做反向代理服务器,监听特定端口,启用操作系统防火墙,关闭其他外网端口。
第三,在上一步的nginx中启用HTTPS,购买专业的数字证书,尽量选择名头大,有国家背景的发证机构。
最后,购买专业的数据库服务,保证业务数据的安全,这里也推荐阿里云提供的服务,这样web服务器和数据库都在相同内网中,访问效率有保障。
上面的方案好像都要花钱,但是要比自己折腾省钱,客户也容易接受,整套下来,服务器安全方面可以算有一个及格分。
客户侧除了常规的用户名+密码的策略,最好再花点钱把手机验证码加上,基本上就齐活了。