标签: security

在这种情况下,我应该使用亚马逊 VPC 还是 EC2?

我的应用程序是一个利用亚马逊网络服务的 SAAS。目前,该应用程序正在结束开发,我的公司收到了第一个客户。我的应用程序用户需要上传具有合理机密数据的 Word 文档,这些数据稍后会进行分析,结果会保存到数据库中以供日后查看。

现在,我并没有打算为成千上万的客户提供服务。我们想一次只处理一个客户,然后再扩大规模。但是,我们收到的第一个客户是 CMM 5 级公司。他们向我们发送了一份安全审查问卷,询问我们从物理安全、应用程序安全、数据安全和网络安全等各个方面。

我的应用程序可以运行他们整个公司的用户负载——这意味着我不需要超过一个 tomcat 应用程序服务器和一个在任何时间点运行在单个节点上的数据库应用程序服务器来为这个客户端提供服务。所以,如果我确保以下——

  • 带有加密临时存储、EBS 存储的 EC2 实例。
  • EC2 实例,只能由该客户端的 IP 范围访问。
  • 每日加密镜像备份到 EBS 的 S3
  • 除了 HTTPS 流量的 443 端口外,所有端口都已关闭。

这听起来比

  • 具有一两个节点的 VPC,具有专用应用服务器,不同节点上的数据库。
  • 带有 IDS(入侵检测系统)的 VPC,已针对访问进行了加固。
  • 定义的安全组明确划分了谁可以访问什么。
  • VPC 中的防火墙/DMZ 配置
  • 用于 Web 服务器的 SSL
  • 用于管理 VPC 的两因素身份验证。

我们是一家试图与这家价值数十亿美元的大公司打交道的小企业。交易规模虽小,但未来业务潜力巨大。我们在配置 amazon VPC 并针对潜在威胁对其进行加固方面没有丰富的经验。此外,聘请具有创建完美 VPC 环境专业知识的人员将花费自己的宝贵时间和金钱。此外,在这一点上,可能我听起来更像是一个 ASP 而不是 SAAS。(我想,这就是我们现在开始赚钱以使公司生存下去的目的)。

我有几个问题-

从 VPC 开始有意义吗?如果我预计在不久的将来不会增加负载,如果只有一台机器可以完成甚至说两台机器,那么 VPC 是不是有点矫枉过正?如果我给客户一个专用的 EC2 实例,访问过滤到他们的公司 IP 范围,只打开 https 端口,并且客户数据一直加密,那么这不是比创建 VPC 和管理安全性更简单的方法吗?许多级别(网络、机器级别等)。

另外,如果我必须开始使用 VPC,我是否应该将 VPC 安全性外包给可以为我处理此问题的公司,而我应该只专注于应用程序开发?有做这个的好公司吗?

security amazon-ec2 amazon-web-services amazon-vpc

0
推荐指数
1
解决办法
117
查看次数

在 /etc/shadow 中使用星号作为密码但在 /etc/passwd 中使用正确的登录 shell 的用户是否可以通过某种方式通过 SSH 登录?

让我们假设以下内容。我们有一个可以通过 SSH 访问的服务器。有一个用户/etc/passwd拥有有效的登录 shell(例如/bin/bash,而不是像 那样的无效登录shell /bin/false)。

此用户*在 的第二个(密码)字段中有一个星号 ( ) /etc/shadow。如果该用户的~/.ssh/文件夹中没有 ssh 密钥,是否可以通过某种方式通过 SSH 登录?

或者,稍微改写一下这个问题:当*密码字段中有一个时,许多在线指南建议禁用登录 shell 的原因是/etc/shadow什么?

security linux ssh password user-management

0
推荐指数
1
解决办法
1868
查看次数

已配置但未应用于守护程序的限制

在我的 CentOS 7 上,我cat /proc/<pid>/limits用来查看实际限制设置。我确认这个方法在这里是完全准确的,因为我在 MySQL 上使用它,它不能转储一个包含 >8000 个表的特定数据库。如果使用prlimit我将其设置为 10000,则转储成功完成。

现在,我想避免使用 prlimit,所以我配置了 /etc/security/limits.conf 文件以满足我的需求,如果我使用相应的用户(mysql)运行 bash,我可以看到正确的限制值配置运行时ulimit -a

问题是mysql用户运行的mysqld进程仍然设置为默认值(这里是1024),导致转储数据库失败。我唯一的解决方案是在运行时运行 prlimit 但我想了解缺少的内容,以便我的进程在启动时遵守限制配置。

security centos process limits centos7

0
推荐指数
1
解决办法
250
查看次数

0
推荐指数
1
解决办法
472
查看次数

对非 root 用户隐藏 systemd 单元

我已经设置了许多自定义 systemd 服务单元,它们的环境变量中可能包含敏感数据。虽然非 root 用户无法使用systemctl cat该服务,但任何人都可以通过systemctl show. 这是不希望的,因为其他用户不应读取该数据。/etc/systemd/system 中的 *.service 文件被标记为只能由 root 读取(模式 600)。

我找不到任何有关 systemd 访问限制的信息。这可能吗?或者所有 systemd 数据都被认为是公开的并且全世界都可读吗?如果没有可用的安全性,我想我将不得不停止使用 systemd 功能并将所有内容包装在另一层无法访问的脚本文件中。

我当前的环境是Ubuntu Server 16.04和20.04。

security systemd

0
推荐指数
1
解决办法
418
查看次数

有什么安全原因不使用“root”用户进行 git 远程操作吗?

我有一些配置(docker-compose相关文件),我喜欢将它们存储git在私人存储github库上。
这些配置由 root 拥有。
是否有任何理由更改文件的所有权以通过除 之外的其他用户执行git push和?git pullroot

security linux git

0
推荐指数
1
解决办法
415
查看次数

如果我的 linux 机器受到威胁,我有哪些选择?

可能重复:
我的服务器被黑了 紧急情况

我已经把所有的安全措施和日志监控工具。现在,但如果发现我的系统上有一些 rootkit,我不知道该怎么办。

如果我的系统上运行着实时站点,并且我也无法关闭服务器。我怎样才能消除感染

关于备份,我应该备份整个 linux 系统还是只是 public_html 目录和数据库。因为我目前只备份那些文件夹。

我有 VPS 并且我的托管公司正在拍摄每日快照,但还有什么其他方法可以确保安全,以便如果我感染了 rootkit,那么我可以恢复它。

security remove centos5

-1
推荐指数
1
解决办法
196
查看次数

超安全的小型企业/游戏开发设置

我想为游戏开发建立一个安全的小型企业,并且正在考虑保护内容但仍然允许人们开发的最佳方法。当然,因为开发需要几年时间,到时候什么都可能发生,我想尽量偏执一些。因此,我们希望能够防止入侵和挤压,但仍允许我们开发 UE3 游戏。以下是我们的挑战和要求:

有 5 个人,他们都在不同的位置,并且只有大约 35mbps 的速度可以用于我们计划放置网络基础设施的位置。

需要确保传输中的数据安全、服务器安全以及客户端安全。

服务器端至少需要一个 SVN 存储库、内部网络服务器、内部邮件服务器和 VPN 服务器。

我们的预算是 1000 美元 - 1500 美元,只有在绝对必要时才 2000 美元

我考虑过的所有选项包括:

具有 AV 和 DPI 许可证的瞻博网络 SSG-5 网络安全设备。瞻博网络可能支持任何类型的加密 VPN 设置。一个有 5 个客户端的服务器。虚拟化(ESX/ESXi、CentOS + Xen 等)服务器和客户端的全盘加密。

第一种情况:

虚拟化一切。让每个人都登录到我们所在地服务器上托管的虚拟机。拥有第二台物理机来镜像所有虚拟机/充当冗余故障转移。

优点:所有数据都以这种方式存储在服务器上,因此不会从客户端计算机上窃取数据,除非他们拥有服务器的登录信息,可以将其停用以防止丢失。

缺点:虽然 Maya 可能会运行并且渲染可能会被推送到一个农场,但我不认为(如果我错了,请纠正我)因为据我所知对 3D 密集型应用程序的支持很差,像 UE3 这样的东西会在那里运行。

场景二:

让每个人使用 SVN 上传/下载资产或代码到自己的计算机。

优点:最方便的开发方式。

缺点:在客户端之后,无法控制数据的去向(互联网上的任何地方?到闪存驱动器或 DVD 上以传递给竞争对手?)。

这些选项的问题在于,第一个似乎不足以开发游戏,而第二个则非常不安全。你们对安全设置有什么建议,为什么?

security small-business

-1
推荐指数
1
解决办法
165
查看次数

Linux Debian 安全漏洞 - 现在怎么办?

可能重复:
我的服务器被黑了 紧急情况

我在我的家庭网络中安装了 Debian (Squeeze) 来托管一些个人网站(感谢上帝)。

在安装过程中,它提示我输入 root 以外的用户 - 所以我匆忙使用我的名字作为用户并通过(alex/alex 的价值)。

我知道这是可怕的做法,但在设置此服务器期间,我总是以 root 身份登录以执行配置等。

几天或一周过去了,我忘记更改密码。然后我终于完成了我的网站,并在我的路由器和 DynDNS 上打开端口转发以指向我家中的服务器。过去我已经做过很多次了,从来没有出现过问题,但我使用了一个神秘的 root 密码,我猜禁用了常规帐户。

今天我重新格式化了我的 Windows 7,在花了一整天的时间调整和更新 SP1 之后,我寻找克隆应用程序并找到了 clonezilla 并看到它支持 SSH 克隆,所以我经历了这个过程只是为了发现我需要一个用户,所以我登录到我的网站-server 并看到我已经有用户 'alex' 并意识到我不知道密码。所以我把密码改成一些神秘的东西,然后访问目录'home'才发现它们是passfile,bengos等内容。我的心一沉,我被黑了!!!当然有各种各样的脚本和密码文件。

我运行了一个“last”命令,似乎他们最后一次登录是在 4 月 3 日。

题:

  1. 我能做些什么来看看他们是否做了破坏性的事情?我应该重新格式化并重新安装吗?
  2. Debian/Squeeze 在开箱即用的用户权限方面有多严格——我所有的个人网站内容都是使用“root”创建的,因此似乎没有发生更改文件的情况。
  3. 他们如何确定机器上有用户“alex”?你能查询任何机器并弄清楚吗?用户是什么?看起来他们试图运行 IP 扫描......网络上的其他节点正在运行 Windows 7。其中一个最近似乎有点不稳定 - 他们是否有可能破坏了该系统?

我可以采取哪些纠正措施来避免这种情况再次发生?并找出可能发生了什么变化或被黑客入侵的地方?我希望 debian 开箱即用是相当安全的,充其量他设法阅读了我的一些源代码。:p

问候,亚历克斯

security linux debian

-1
推荐指数
1
解决办法
791
查看次数

保护多台服务器之间通信的最佳解决方案是什么?

我正在使用云服务器,他们正在交换数据。我想确保这些交流。

我正在使用 RackSpace,我担心有人可能会在我的两台服务器之间获取信息。

我正在使用 HTTP 并且服务器在 Linux (Ubuntu) 上运行。

什么是最好的方法?

security cloud-hosting rackspace-cloud

-1
推荐指数
1
解决办法
351
查看次数