什么杀毒软件,你会推荐用于Windows开发的计算机。 你会使用这些用户的防病毒吗? 这些用户经常编译,因此读写大量的文件。 如果我部署一个缓慢的performance杀毒软件,他们将不会高兴。
你需要防病毒软件
在这些回答中有几次说到,开发人员应该知道的更好,或者应该只从已知好的站点安装他们需要的软件等,所以如果你需要防病毒,你有一个社会问题,而不是技术问题。 有几点是这样的:
我的build议
在Fog Creek,我们使用ESET NOD32。
我testing了赛门铁克,卡巴斯基,诺顿,ZoneAlarm,Avast和AVG。 他们都有明显的性能问题,许多人完全无法使用我们的开发人员(阻止debugging器,挂钩到系统调用时引起的问题等)。
NOD32已经部署了将近一年了,而且我只有一个开发者遇到了麻烦(通过检查一个configuration选项来解决这个问题)。 它不会引起明显的性能下降,也不会干扰我们的任何工具,而且安装起来非常简单 – 我从办公桌的桌面中间部署到所有的工作站和服务器。
在我们的评估期间运行VMWare Workstation时,唯一遇到的问题就是性能问题。 在免除所有VMWare文件的实时扫描后,问题消失了。
我不会在这些机器上安装任何防病毒软件,假设以下几点:
在开发机器上,你想要最大的性能和防病毒软件是一个已知的性能反义词。 除了这个杀毒软件不是那么有效 。
我在这里有几个意见
反病毒的重点显然不一定是最快的,而是最有效的。 我更喜欢赛门铁克,但是对他自己来说。
你可以做的一件事是为开发文件夹(即C:\ Development)或其他东西做实时扫描排除 – 这样它不是实时扫描每个编译。 大多数病毒/恶意软件不会将任何东西放在C:\ Development文件夹中(99%的时间将进入Program Files,Windows等)。 configuration您的防病毒软件每天一次在开发文件夹上运行扫描。
另一方面,通常开发人员会相当精通电脑(我们希望)。 所以在这种情况下,我不确定在这种types的环境中是否需要防病毒软件。 这里最好的东西是专门用于开发的机器(虚拟机或其他),而不是电子邮件,网上冲浪等等。 这显然会产生最快的性能而没有扫描开销。
这里显然涉及多个variables,所以没有一个适合所有人的答案。 这些variables包括:
任何涉及安全授权的政策(例如运行公司configuration的AV的要求)都可能使这个决定成为一个无关紧要的问题。
如果这是在受控环境或有限环境中部署的应用程序,那么为您的testing平台复制该生产环境是一个好主意。
但是,如果这是一个即将发布的应用程序,那么显然没有办法testing所有可能的生产configuration。
如果有一个正式的testing/ QA团队和环境,甚至只是一个构build服务器,那么这可能是模仿生产环境的最佳地点,而不是开发者机器。
这本书本身就是一本书,但是安全问题可能会超过开发者机器的任何特定权衡。 这取决于诸如:
这里显而易见的是由于病毒扫描程序引入了CPU和I / O税,在开发过程中性能下降。 不太明显的是潜在的影响是: – 与病毒/特洛伊/恶意软件收缩相关的停机时间和随后的移除 – 如果没有AV软件存在以检测并通知用户使其继续,则病毒/恶意软件的性能影响与存在的病毒/恶意软件一起工作。
如果您正在使用虚拟机或具有开发映像或定期备份,则此宕机潜力可能不明显。 如果开发人员将不得不重新安装并重新configuration他/她的机器上的所有内容(取决于病毒的严重程度),那么停机时间可能是一个严重的惩罚。
病毒/恶意软件被开发者机器签约的概率是巨大的通配符/未知数。 但是,如果你在一个封闭的networking上工作,并且不要带入太多的外部媒体,那么风险显然比所有机器直接连接到互联网的风险要低。
如果开发环境是Mac OSX或Solaris或Linux等,那么收缩的可能性比在Windows平台上低得多。
而且,如果开发本身的性质增加了开发者机器对潜在的不安全交通的暴露,则这增加了收缩的可能性。
基于上述variables的状态(可能更多),有几个select(增加安全性,降低性能顺序):
这四个选项显然有很多变化(比如使用虚拟机),但我认为这包括了主要的选项。
值得一提的是,我个人使用的是赛门铁克公司的工作方式,以及家里的Avast免费版。 我已经启用了实时保护function,唯一的例外是我的虚拟机文件夹/ vmdk文件。 我在主机上做了一些我的开发,还有一些在客人身上。 我为Windows平台进行了C#和本地C ++开发,并find了可pipe理的性能损失。
我将部署与您的生产环境相同的AV解决scheme。 这样你就有了一个pipe理界面,你可以比较一下苹果和苹果之间的差异,特别是当新版本在每个版本中都包含越来越多的入侵防御措施的时候。 一个AV解决scheme可能不会作为结果反应相同。
ESET NOD32是我find的最轻的(根据CPU使用情况)防病毒程序。 它也被AV-Comparatives评为更好的scheme之一。 只要确保排除开发或虚拟机目录,你应该没有问题。
你一定要在这些机器上进行实时扫描。
我已经离开了游戏一段时间,但据我所知,覆盖的三个主要表面是可移动媒体,如软盘和USB存储(主要是引导扇区病毒),电子邮件(主要是特洛伊木马)和networking服务(蠕虫)。 开发机器可能会有三个。
我build议遵循routeNpingme关于实时扫描的文件系统扫描的特定例外的build议。
我们在生产中使用趋势科技,最近我在所有的testing虚拟机上安装了它(在发现病毒之后),并注意到没有明显的性能损失(在八核心主机上有20多个虚拟机),这些机器被攻破当我们的支持部门试图复制客户环境时,这是一个准系统AV,并伎俩。 它拿起了一些事情,否则会在访问可怕的地下网站后感染机器
我们在工作中使用Symantec Endpoint Protection,我build议不要使用它。 性能打击非常严重,在用户计算机遭到入侵的两起事件中都没有发现。
作为一名开发人员,我倾向于使用我没有使用防病毒软件的路线,但今年随着Microsoft Security Essentials的发布,这一切终于发生了变化。 我在我的家用机器和我的工作开发机器上都使用它。 我排除了我的解决scheme的项目文件夹,因为大多数AV在编译期间看起来很乱,看到一堆DLL和EXE正在创build,并试图在超大文件IO操作期间扫描它们。
我使用卡巴斯基 ,我的桌面的性能似乎没有受到它的影响 – 除非它正在做一个自动更新。 这是我知道和使用过的最防弹的防病毒软件。
我更喜欢不安装防病毒软件,但一般的开发者(我的意思是90%的开发者)肯定需要它,我一直在使用迈克菲(由公司政策强制),并没有重大问题,如果你有select过滤出源代码所在的文件夹,这将解决您的大部分问题
我个人不运行任何。 我有OS X,并在虚拟机中运行我的视觉工作室。 我从来没有受到感染,但我经常备份我的虚拟机,并在Windows的情况下,我总是可以抓住一个新的虚拟机(准备使用),进行SVN结帐,并在15分钟内开始工作。
它发生在我身上,打破了我的Vista机器(虚拟),而与registry,必须做到上述。 如果您的虚拟机不支持快照(VMWare),或者您的备份虚拟机不是“最新的”,这可能会很痛苦。
ClamWin似乎对资源非常轻。 我的机器上的性能没有明显的影响。
在计算机上安装防病毒软件,但给予开发人员激活和停用扫描,设置排除目录等的权限。当他们正在做的事情,病毒扫描程序不能很好地玩(例如与大型托pipe代码应用程序,如OWB或VS2005 +)他们可以把它关掉。 如果他们想要扫描,他们可以select打开它。
两全其美。
一种方法可以大大降低无法使用的风险:在虚拟机中执行所有networking内容。