AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / computer / 问题 / 1849211
Accepted
AdderoYuu
AdderoYuu
Asked: 2024-07-16 11:29:16 +0800 CST2024-07-16 11:29:16 +0800 CST 2024-07-16 11:29:16 +0800 CST

如何将面向外部的服务器虚拟机与内部虚拟机群集隔离?

  • 772

我会尽我所能描述我在这里真正想要做的事情,但首先是设置。我有一个完整的内部网络,它与一个管理的第 2 层或第 3 层网络交换机连接在一起,并且有许多设备在该网络内进行通信,并且我想在网络内托管的 Proxmox VE 集群上运行 Ubuntu Server 22.04 的面向外部的服务器(游戏服务器,例如 minecraft 等)。我已经让这一切正常工作,一切都很好,但我看到来自未知 IP 的尝试试图进入网络。他们的防火墙已被指示拒绝除两个端口之外的所有流量 - 一个用于 SSH,一个用于服务器本身。用于服务器本身的端口是唯一转发到互联网的端口,并且它是设备特定的,因此这些尝试肯定来自游戏服务器端口。我有 Xfinity,所以这些尝试通常会被阻止 - 但我不想仅仅相信这一点。

我希望将这些虚拟机与我的主网络隔离开来 - 我在密码管理器中使用长而复杂的密码,甚至更长的密码等等,但密码的作用有限。我希望它们能够通过互联网进行通信,我希望能够加入并与朋友一起在这些服务器上玩游戏,但我不希望服务器在我的网络被攻破时访问我的网络。能够通过 SSH 访问它们对于服务器管理来说会很好,但目前我认为这是一种奢侈。到目前为止,我读到的所有内容都告诉我这是可能的,但取决于我信任的信息,它要么非常简单,要么非常复杂。

我正在查看的方法来自Reddit 帖子,其中指出我可以使用 pfSense 创建虚拟机(我可能会尝试使用 OPNsense 来执行此操作)并将其用作内部路由器,为其提供两个虚拟 NIC。第一个 vNIC 将连接到主 vSwitch(具有内部网络访问权限,连接到物理 NIC),辅助 vNIC 将连接到辅助 vSwitch(无内部网络访问权限,不连接到任何物理 NIC)。使用 pfSense,您可以将 WAN 接口设置为使用主 vSwitch,将 LAN 接口设置为使用辅助 vSwitch。您可以将其配置为阻止所有流量通过,但我只需要它来阻止服务器获得对我的其他设备的内部网络访问权限。

在Proxmox 论坛帖子中可以看到一种方法(有点像),这也是我所寻找的方法,但再次说明这不是我真正想要的。无论如何,我都尝试过这种方法,但甚至很难让它发挥作用。

我想要隔离的服务器需要将特定端口转发到互联网。这就是服务器实际通信的方式 - 而这个过程的最终步骤将是端口重定向,但这不是我准备解决的问题。端口转发使机器易受攻击,如果机器受到攻击,我希望它与我的网络完全隔离。我的 Xfinity 路由器允许将端口转发隔离到特定设备,并且它确实将这些虚拟机视为特定设备,因此我相信该端口不会对其他设备开放。

有人有可行的方法来做到这一点吗?总之,我想要...

  1. 面向互联网的游戏服务器虚拟机
  2. 与我的内部 LAN 网络隔离,但是
  3. 仍然可以访问互联网
  4. (奖励项目以某种方式/形式保留 SSH 访问权限,因此我不必手动输入 20 多个字符的随机密码)

如果需要任何其他信息,请告诉我!

networking
  • 1 1 个回答
  • 61 Views

1 个回答

  • Voted
  1. Best Answer
    grawity_u1686
    2024-07-17T19:07:31+08:002024-07-17T19:07:31+08:00

    设置路由器虚拟机,然后创建防火墙规则,允许数据包进入互联网但不允许数据包进入“主” LAN 子网。

    但我猜测 Xfinity 路由器不支持“静态路由”配置,这意味着您无法以常规方式定义从LAN 和 Internet 到服务器的路径。

    如果是这种情况,它将使到“服务器”子网的入站 HTTP 和 SSH 设置起来有些烦人 - 仍然是可能的,但这意味着您需要有两层端口转发规则; 一次从 Xfinity 路由器到 pfSense,然后第二次从 pfSense 到真实服务器。

    我看到来自未知 IP 的尝试尝试进入网络。

    这些尝试会显示在 Xfinity 移动应用程序的安全部分中。IP 本身实际上从未到达服务器本身,Xfinity 路由器阻止了

    您无法避免这种情况。防火墙只能阻止流量越过防火墙,但不能完全阻止流量到达防火墙 - 即您无法拒绝接收数据包。因此,只要您在互联网上有一个 IP 地址,您就会成为许多僵尸网络和“研究人员”的接收端,他们会攻击每个 IP 地址。

    不过,您的 Xfinity 路由器在这里并没有做任何特别的事情——几乎任何将防火墙设置为“默认阻止”的路由器都会得到相同的结果。

    他们的防火墙已被指示拒绝除两个端口之外的所有流量 - 一个用于 SSH,一个用于服务器本身。用于服务器本身的端口是唯一转发到互联网的端口,并且是设备专用的,因此这些尝试肯定来自游戏服务器端口。

    我很确定你的端口完全颠倒了——连接到 SSH 服务的初始数据包永远不会来自SSH或游戏服务器端口,而是来自SSH端口或游戏服务器端口;同样,“端口转发”通常处理入站数据包(来自互联网,而不是到互联网)——你确实需要把这部分弄直,作为配置防火墙的先决条件。

    您可以将其配置为阻止所有流量通过,但我只需要它来阻止服务器获得对我的其他设备的内部网络访问权限。

    您可以使用相同类型的配置来实现此目的,只需将防火墙规则缩小即可。也就是说,您将拥有一个阻止从 到game_server_address的数据包的数据包过滤规则lan_subnet,以及一个允许所有其他数据包的规则。即:

    1. 从 = 任意到 = [serv_subnet]/24 协议 = tcp dst-port = 22 操作 = 接受
    2. 从 = [serv_subnet]/24 到 = [lan_subnet]/24 操作 = 拒绝
    3. 从=[serv_subnet]/24 到=任何操作=接受

    (对于 Linux iptables 样式,它将完全按照这个顺序,因为第一个匹配获胜;而 pfSense/OpnSense 'pf' 样式通常是相反的。上次我使用 pfSense 时,我习惯将规则标记为“快速”,以便第一个匹配的规则获胜。)

    通常,您只需要在第一个数据包去的方向上创建规则,而“回复”数据包将被自动允许 - 例如,规则 1 对来自服务器的回复没有影响,因此您不需要单独的规则来允许 src-port = 22。

    • 0

相关问题

  • 三台电脑,没有路由器/交换机怎么组网?

  • 用户使用 FileZilla 连接到 SFTP 服务器拒绝连接

  • NAT 后面的 NAT 如何工作(路由器的 NAT 和 ISP 的 NAT)?

  • Win10 1803:如何让移动热点成为专用网络?

  • nc如何识别服务名称

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Vickel Firefox 不再允许粘贴到 WhatsApp 网页中? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve