Asp.net mvc 我应该把我个人网站的代码开源吗?安全问题是什么?

Asp.net mvc 我应该把我个人网站的代码开源吗?安全问题是什么?,asp.net-mvc,security,open-source,github,Asp.net Mvc,Security,Open Source,Github,我正要用ASP.NET4/MVC重写我的个人网站/博客。我通常使用我的私有Subversion服务器进行版本控制,但是对于这个项目,我打算使用Git/GitHub——我最近越来越多地使用Git,并且更喜欢它的工作方式。我还想让我的代码开源,以防其他人想用它来学习 我的问题是:如果我在GitHub上公开我个人网站的源代码,我是否会增加安全漏洞的风险? 我不关心这里的知识产权,只关心安全性,不管我写什么代码都是相当基本的 我意识到a)开源社区非常倾向于白帽,b)我的小网站绝对不是一个值得攻击的目标

我正要用ASP.NET4/MVC重写我的个人网站/博客。我通常使用我的私有Subversion服务器进行版本控制,但是对于这个项目,我打算使用Git/GitHub——我最近越来越多地使用Git,并且更喜欢它的工作方式。我还想让我的代码开源,以防其他人想用它来学习

我的问题是:如果我在GitHub上公开我个人网站的源代码,我是否会增加安全漏洞的风险?

我不关心这里的知识产权,只关心安全性,不管我写什么代码都是相当基本的

我意识到a)开源社区非常倾向于白帽,b)我的小网站绝对不是一个值得攻击的目标


话虽如此,如果我发布代码时犯了一个导致安全漏洞的错误(我肯定在某个阶段我会的,没有人是完美的),只需要一个恶意的人就可以利用它,而不是让我知道,我就完蛋了,不是吗?

如果你开放源代码,它被黑客攻击的几率更高,但是你有更高的机会被告知。如果你不这样做,如果它发生了,你可能不会被告知。

如果你打开了它的源代码,它被黑客攻击的几率更高,但被告知的几率更高。如果不这样做,如果发生这种情况,您可能不会被告知。

为什么不使用私有GitHub存储库呢?两全其美@尼尔波:这是两全其美吗?使用私有回购完全消除了“开源”世界……您仍然可以使用开源许可证发布代码,但只允许在请求时访问存储库。这是在某种程度上控制谁看到它的唯一方法。如果您将代码发布到野外,那么您必须承担这样的风险:如果您的项目很受欢迎,那么在某个时刻,有恶意意图的人可能会看到它。就我个人而言,我并不担心这件事。共享的好处通常大于任何风险,而且通常有更多的人愿意帮助您保护它。您为什么不使用私有的GitHub存储库呢?两全其美@尼尔波:这是两全其美吗?使用私有回购完全消除了“开源”世界……您仍然可以使用开源许可证发布代码,但只允许在请求时访问存储库。这是在某种程度上控制谁看到它的唯一方法。如果您将代码发布到野外,那么您必须承担这样的风险:如果您的项目很受欢迎,那么在某个时刻,有恶意意图的人可能会看到它。就我个人而言,我并不担心这件事。分享的好处通常大于任何风险,而且通常会有更多的人愿意帮助你获得它。