大多数 OpenSSH 配置指南建议禁用密码身份验证以支持基于密钥的身份验证。但在我看来,密码认证有一个显着的优势:无需密钥即可从任何地方进行连接。如果始终使用强密码,这不应该是安全风险。还是应该?
我正在阅读有关Google 新公共 DNS 服务的一些说明:
我在安全部分注意到这一段:
在普遍实施针对 DNS 漏洞的标准全系统解决方案(例如 DNSSEC2 协议)之前,开放式 DNS 解析器需要独立采取一些措施来缓解已知威胁。已经提出了许多技术;请参阅IETF RFC 4542:使 DNS 更能抵御伪造答案的措施,以了解其中大部分内容的概述。在 Google 公共 DNS 中,我们已实施并推荐以下方法:
- 过度配置机器资源以防止对解析器本身的直接 DoS 攻击。由于 IP 地址对于攻击者来说是微不足道的,因此无法阻止基于 IP 地址或子网的查询;处理此类攻击的唯一有效方法是简单地吸收负载。
这是一个令人沮丧的认识;即使在堆栈溢出/服务器故障/超级用户上,我们也经常使用 IP 地址作为各种禁止和阻止的基础。
认为一个“有才华”的攻击者可以随便使用他们想要的任何IP地址,并合成尽可能多的唯一假IP地址,真是太可怕了!
所以我的问题:
我开始为一家公司工作,该公司解雇了一名前 IT 员工,原因是泄露数据。
我只能说以下几点:
我们使用 Firebird DB 和由另一家公司 Proxmox 编写的应用程序,用于 Windows Server 2008 R2、SQL Server、云核心 Mikrotik 路由器和其他一些 Mikrotik 设备的虚拟化。
我不是 100% 确定,但是有没有一些快速的方法来检查是否还有一些后门,而不会中断内部流程并重新格式化所有内容?
以前的这个人真的很好,用 C++ 和 C# 编写了软件。我也知道他在 ollydbg 中做了一些汇编程序并破解了一些程序。
我正在安装直接连接到 Internet 的 Debian 服务器。显然,我想让它尽可能安全。我希望你们/女孩添加您的想法来保护它以及您使用的程序。
我希望这个问题的一部分涵盖您将什么用作防火墙?只是手动配置iptables还是您使用某种软件来帮助您?最好的方法是什么?阻止一切并只允许需要的东西?是否有适合这个主题的初学者的好教程?
您是否更改了 SSH 端口?您是否使用Fail2Ban 之类的软件来防止暴力攻击?
OpenSSL 'heartbleed' 漏洞 ( CVE-2014-0160 ) 影响服务 HTTPS 的网络服务器。其他服务也使用 OpenSSL。这些服务是否也容易受到类似心脏出血的数据泄漏的影响?
我特别想
至少在我的系统上,所有这些都链接到 OpenSSL 库。
最近我需要购买一个通配符 SSL 证书(因为我需要保护多个子域),当我第一次搜索在哪里购买时,我对选择的数量、营销声明和价格范围感到不知所措。我创建了一个列表,以帮助我了解大多数证书颁发机构 (CA) 和经销商在其网站上布满的营销噱头。最后,我个人的结论是,几乎唯一重要的是 CA 网站的价格和舒适度。
问题:除了价格和一个不错的网站,在决定在哪里购买通配符 SSL 证书时,还有什么值得我考虑的吗?
“我们强烈建议您永远不要授予对 S3 存储桶的任何类型的公共访问权限。”
我为我用来托管网站的一个存储桶设置了非常精细的公共策略 (s3:GetObject)。为此,Route53 明确支持为存储桶设置别名。这个警告是多余的,还是我做错了什么?
有没有办法让经验丰富的 Linux syadmin 在不给他完全的 root 访问权限的情况下提高工作效率?
这个问题来自保护知识产权 (IP) 的角度,在我的情况下,它完全是代码和/或配置文件(即易于复制的小型数字文件)。我们的秘方使我们比我们的小规模所暗示的更成功。同样,我们曾经被一些试图窃取 IP 的前任肆无忌惮的员工(不是系统管理员)咬了一口,两次害羞。高层管理人员的立场基本上是,“我们信任人们,但出于自身利益,不能承担给任何人比他们完成工作绝对需要的更多访问权限的风险。”
在开发人员方面,划分工作流和访问级别相对容易,这样人们就可以提高工作效率,但只能看到他们需要看到的内容。只有顶级人才(实际公司老板)有能力将所有原料组合起来,制作出特别的酱汁。
但是我还没有想出一个很好的方法来在 Linux 管理端维护这个 IP 保密。我们广泛使用 GPG 来处理代码和敏感文本文件……但是有什么可以阻止管理员(例如)向用户发出警告并跳转到他们的 tmux 或 GNU Screen 会话并查看他们在做什么?
(我们还在可能接触敏感信息的任何地方禁用 Internet 访问。但是,没有什么是完美的,聪明的系统管理员可能会漏洞或网络管理员方面的错误。甚至是旧的 USB。有当然还有许多其他措施,但这些超出了本问题的范围。)
我能想到的最好的方法基本上是使用带有sudo 的个性化帐户,类似于以root 身份工作的多个 Linux 系统管理员中描述的内容。具体来说:除了公司所有者之外,没有人实际上拥有直接的 root 访问权限。其他管理员将拥有个性化帐户和sudo进入 root的能力。此外,将建立远程日志记录,并将日志发送到只有公司所有者才能访问的服务器。看到日志记录关闭会引发某种警报。
一个聪明的系统管理员可能仍然会在这个方案中找到一些漏洞。除此之外,它仍然是被动的而不是主动的。我们 IP 的问题在于,竞争对手可以非常迅速地利用它,并在很短的时间内造成大量损害。
所以最好是一种限制管理员可以做什么的机制。但我承认这是一个微妙的平衡(特别是考虑到目前需要解决的故障排除和生产问题)。
我不禁想知道其他拥有非常敏感数据的组织如何管理这个问题?例如,军事系统管理员:他们如何在无法看到机密信息的情况下管理服务器和数据?
编辑:在最初的帖子中,我打算先发制人地解决开始浮出水面的“招聘实践”评论。一,这应该是一个技术问题,IMO 的招聘实践更倾向于社会问题。但是,二,我会这样说:我相信我们会尽一切合理招聘人员:面试多个公司人员;背景和参考调查;所有员工都签署了大量法律文件,其中一份声明他们已阅读并理解我们的手册,其中详细介绍了知识产权问题。现在,它超出了这个问题/网站的范围,但如果有人可以提出“完美”的招聘做法,过滤掉 100% 的坏演员,我全都在听。事实是:(1)我不相信有这么完美的招聘流程;(2) 人在变——今天的天使可能是明天的恶魔;(3) 企图窃取代码在这个行业似乎有些司空见惯。
我想允许某些用户 su 到另一个用户帐户而不必知道该帐户的密码,但不允许访问任何其他用户帐户(即 root)。
例如,我想允许 DBA Tom su 到 oracle 用户,而不是 tomcat 用户或 root。
我想这可以通过 /etc/sudoers 文件来完成 - 有可能吗?如果是这样,如何?
我们在我们的服务器上运行了一套 Windows 服务,它们彼此独立地执行一系列自动化任务,除了一个服务负责其他服务。
如果其中一项服务未能响应或挂起,该服务将尝试重新启动该服务,如果在尝试期间抛出异常,则改为向支持团队发送电子邮件,以便他们可以自行重新启动该服务。
做了一些研究后,我遇到了一些“解决方案”,从KB907460 中提到的解决方法到提供服务运行管理员权限的帐户。
我对这两种方法都不满意 - 我不明白 Microsoft 知识库文章中概述的第一种方法的后果,但我绝对不想授予管理员访问服务运行的帐户的权限.
我快速浏览了本地安全策略,除了定义帐户是否可以作为服务登录的策略之外,我看不到任何其他看起来像是指服务的内容。
我们在 Server 2003 和 Server 2008 上运行它,所以任何想法或指示都会被慷慨地接收!
澄清:我不想授予给定用户或组启动/停止/重新启动所有服务的能力 - 我希望能够仅向给定用户或组授予对特定服务执行此操作的权限。
进一步说明:我需要授予这些权限的服务器不属于一个域——它们是两个面向 Internet 的服务器,它们接收文件、处理它们并将它们发送给第三方,以及为几个网站提供服务,所以Active Directory 组策略是不可能的。抱歉,我没有说得更清楚。
security ×10
linux ×3
amazon-s3 ×1
audit ×1
debian ×1
exploit ×1
firewall ×1
group-policy ×1
heartbleed ×1
ip-address ×1
malware ×1
networking ×1
openssl ×1
permissions ×1
root ×1
spoofing ×1
ssh ×1
ssh-keys ×1
ssl ×1
sudo ×1
windows ×1