Skip to content

Commit

Permalink
update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
tomasen committed Dec 3, 2015
1 parent 468a485 commit c7e103e
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,11 +104,17 @@ BenchmarkNoHitLatency-4 1000 2205162 ns/op

`frontd` 在设计上是安全性+性能+易于接入+易于维护的折中方案。其中:

* 使用加密地址,而不是预配置地址表,是出于易于维护的角度
* 使用AES是安全性考虑,防止攻击者篡改变造后端目标地址
* 使用加密地址,首先是出于安全角度:
内网端口可以被扫描显然是绝对不能被接受的。所以我们使用最强的AES-256-CBC加密方法,攻击者就不能通过监听数据和篡改数据,篡改变造后端目标地址,来实现访问任意后端IP端口的情况。
* 使用密文地址,而不是预配置地址表,是出于易维护端角度。
这样运维人员可以不必另外维护一份地址表,也不需要每次增减后端服务器时都再去更新 `frontd` 的配置。
* 使用文本而不是二进制通讯,是方便客户端和服务器列表部分功能的接入
相信这对于繁忙研发侧,是最快接入的方式。
* 无状态,不增加业务功能
这是为了适配各种各样的后端服务。基本上无论后端架构如何,基本不需要改动关键代码来配合 `frontd` 工作。

折中意味着牺牲。因此,我们并不反对项目组在本代码基础上进行优化,但不建议弱化安全性的部分。
也欢迎提交 Issue 和 Pull Request。

### Developing

Expand Down

0 comments on commit c7e103e

Please sign in to comment.