18
回答
【开源访谈】SEnginx 作者 杨洋 访谈实录
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

关于开源访谈

开源访谈是开源中国推出的一系列针对国内优秀开源软件作者的访谈,以文字的方式记录并传播。我们希望开源访谈能全面的展现国内开源软件、开源软件作者的现状,着实推动国内开源软件的应用与发展。   

本次访谈的是开源项目SEnginx作者杨洋,SEnginx在开源中国社区入选了2013 年度最新的 20 大热门开源软件之一,优秀的开源作品得到了社区用户的关注,通过开源访谈希望大家能对这个开源项目有更深入的认识。  

【作者简介】  

 杨洋(InfoHunter)SEnginx开源项目创始人,现就职于东软集团网络安全事业部,主要负责东软NetEye系列网络安全产品的研发工作。热衷于操作系统原理、嵌入式和网络等领域/技术的研究。热爱开源文化,坚信开源精神是推动计算机科学进步的重要因素。业余时间喜欢看书、摄影和玩音乐——尤其对古典和摇滚情有独钟,爱看足球,喜欢拜仁慕尼黑。  

【软件简介】

 SEnginxSecurity Enhanced NGINX)是著名的 HTTP 和 反向代理服务器nginx的一个变种版本,主要是在原版nginx的基础上增加了多种Web安全功能,并增强了应用交付等方面的原有功能。SEnginx提供的安全功能主要有:CC攻击缓解、SQL注入/跨站脚本攻击防护、网页防篡改等。SEnginx继承了nginx的全部原始特性,全面兼容标准nginx的配置,此外也吸收了一些源自tengine等优秀nginx变种的高级特性以及一些常用的第三方nginx模块。

【访谈实录】

1. 能否先介绍一下你自己(技术背景、工作经历、学习经历)?

 敝人杨洋,纯东北人儿,新浪微博:http://weibo.com/infohunter 08年本科毕业于白山黑水间的东北大学,之后就在东软工作至今,一直在做网络安全相关的业务。首次接触编程是在小学时,整点Basic语言啥的,后来自学C语言并在2000年左右接触到Linux,从此对Linux的热爱便一发不可收拾。上大学的时候主要是鼓捣Linux内核/嵌入式等底层的东西,毕业之后由于工作的需要开始接触计算机网络相关的内容。刚工作的时候做东软安全的核心产品NISG的内核部分的开发,10年开始整nginx,目前在部门中负责东软ADSG产品和SEnginx的开发工作。

 2. 开发 SEnginx 的背景是怎么样的?

 最早是在2010年的时候,东软的ADSG产品(Application Delivery Security Gateway,应用交付安全网关)中集成了nginx来提供产品的基础负载均衡/应用交付的功能。我们当时在原版nginx上进行了一些增强,主要是增加了一些Web安全和负载均衡方面的特性,这个修改过的nginx版本就可以认为是现在SEnginx的前身吧。近些年来互联网行业越来越火爆,Web安全的重要性也越来越高,对于国内一些中小型的互联网企业,商业安全产品/解决方案的价格比较昂贵,而又无法像大公司那样自行组建安全团队,所以开源的安全产品就成了最佳的选择。而我们发现着重Web安全的开源项目/产品却相对比较少,所以在这种背景下,在13年的时候,决定把ADSG产品中的nginx单独拿出来,做为一个独立的开源项目运营,一是要回馈社区,不能只偷摸用人家的东西赚钱却不回馈社区,那样不太好:)。二是希望能把我们的安全功能和理念通过开源的形态交付到真正有需求的用户的手中,让无法使用到我们商业产品/服务的用户也能使用到我们提供的功能。同时SEnginx在社区中获得的反馈,比如对用户对产品的评价、对功能的意见等,也能回馈到商业产品中,我认为这对于社区和东软来讲,是双赢。

3. 能否简单介绍一下 SEnginx 以及它的应用场景? 

SEnginxnginx的一个变种,主要是在Web安全方面重点加强,这里面有来自于第三方的安全组件,例如mod_securitynaxsi,也有东软自己研发的一些功能,比如网页防篡改、机器人缓解、黑白名单、Cookie防篡改等。和原版nginx类似,SEnginx的应用场景主要有两种,一种是做反向代理,可以当成一个WAF+ ADC的组合来用,可以实现多种应用交付和安全防护功能,一般用于构建Web服务器集群。另外一种就是直接做webserver,可以当成WAF + webserver的组合,即在服务器上进行安全保护。当然,如果把SEnginx放在客户端,当正向代理做一些上网行为控制,比如网址过滤啥的,也没啥问题。   

 4. 目前有用什么样的渠道去推广SEnginx 吗?在实际项目中的应用情况如何? 

没有什么特别的渠道来推广,基本都是在oschina上发布更新的消息,此外在新浪微博和哲思自由软件社区中也会偶尔发一些消息。在实际项目中,我目前了解到有一些中小型的互联网企业和IDC在用,主要是缓解CC攻击,由于安全问题都比较敏感,所以就不在这点名了:)。此外像刚才说的那样,东软的ADSG产品也在使用SEnginx做为产品组件。  

5. 目前有哪些人参与到了 SEnginx 的开发?平时花费多少时间精力在这个项目上?

 参与过SEnginx开发的人都是东软的全职员工,目前实际上目前就我一个人,所以非常欢迎更多的牛人参与SEnginx的开发。时间的话,至少每天的50%时间放在SEnginx上还是有的。

 6. 你是否有通过 SEnginx 获得收入?维护这个项目和你的全职工作如何平衡?

 收入的话,就是东软的工资了。维护这个项目就是我现在全职工作的一部分。

  7. SEnginx 将来的发展方向?

 SEnginx未来的发展依然会以提供安全功能为主,辅之以应用交付功能的增强,根据用户的实际需要来进行特性的设计,希望将来能有更多的人使用SEnginx

 8. 能否谈一下你对开源的理解,以及对国内开源技术和产品的看法?

 我认为开源是一种价值观,强调的是在一种在开放和自由的环境下的共享和奉献精神,是一种鼓励人们勇于表达、不断参与的精神。这种价值观可以使得零散的力量整合起来,拧成一股更强大的力量。要做好开源项目,首要的是人得具备开源精神,一个优秀的开源软件的成长是要靠很多具备开源精神的人共同推动的,这其中即包括辛苦耕耘的开发者们,当然也包括对软件在不成熟的时候能一直容忍和包容的用户们。国内的开源事业,在近几年互联网行业蓬勃发展的大潮下,相比早年,那是好的太多了,很多互联网公司都是国内开源界的贡献主力,为我们提供了很多优秀的软件,让越来越多的人有机会去接触开源,了解开源,最后投身开源事业,很希望这种形势能继续发展下去。

 9. 你有什么建议给程序员初学者?

实话实话,单纯做技术,一定程度上是比较枯燥的,化解这种枯燥的法宝是兴趣,有了兴趣,那就可以乐在其中。另外一个就是要脚踏实地,注意基本功的修炼,别搞大跃进,厚积薄发,肯定没错,引东北大学校歌一句,与诸君共勉:其自迩以行远,其自卑以登高

 10. 能否给开源中国提一些建议?

 开源中国应该属于综合性的开源社区了吧,办的非常成功,这也是SEnginx选择在开源中国发布的理由:)。建议的话就是希望各种线下活动,能辐射到北方多一些,比如源创会这种,啥时候上俺们沈阳这块整一场,那就太理想了。


举报
丫头潘潘
发帖于4年前 18回/5K+阅
顶部