如何允许仅在一个IP地址上访问在AWS EC2的浏览器中运行的Jupyter Notebook?

时间:2019-05-09 09:08:58

标签: amazon-web-services amazon-ec2 jupyter-notebook acl amazon-acl

我试图仅允许一个IP地址访问在ec2实例上的浏览器中运行的jupyter笔记本。

我试图在ACL中设置入站规则,以仅允许来自我的IP地址的所有流量。此外,我尝试与一个安全组进行此操作。哪个更合适?

我的最终目标是基于我们较小的位置之一,根据其IP地址向有限数量的用户授予访问权限。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

真正的答案是,这取决于您其他基础结构的外观,是否通过IAM赋予其他用户控制台/资源访问权限,您对各种可用安全设置的满意程度以及您需要花费多少时间?重新考虑花费在管理访问权限上。

下表pulled from the AWS VPC Security Docs直接比较了您询问的两个选项(安全组和网络ACL)的功能。

VPC Security: Security Group vs Network ACL

使用安全组或网络ACL都可以,但是我建议使用安全组,因为这听起来像您的用例允许对每个资源进行访问控制(实例级别),而不是子网级别。

From the docs,要将安全组的IP地址列入白名单,您需要向已附加到EC2实例的安全组中添加一条规则(或创建并附加一个新规则):

  

要为通过IPv4(控制台)的入站SSH流量向安全组添加规​​则

     
      
  1. 在Amazon EC2控制台的导航窗格中,选择Instances。选择您的实例,然后查看“描述”选项卡;安全组   列出与实例关联的安全组。   选择查看入站规则以显示其中的规则列表   实例的效果。

  2.   
  3. 在导航窗格中,选择“安全组”。选择与您的实例关联的安全组之一。

  4.   
  5. 在详细信息窗格的“入站”选项卡上,选择“编辑”。在对话框中,选择“添加规则”,然后从“类型”列表中选择“ SSH”。

  6.   
  7. 在“源”字段中,选择“我的IP”以使用本地计算机的公共IPv4地址自动填充该字段。   或者,选择“自定义”并指定以下地址的公共IPv4地址:   您的计算机或网络采用CIDR表示法。例如,如果您的IPv4   地址是203.0.113.25,请指定203.0.113.25/32列出此单   CIDR表示法中的IPv4地址。如果您的公司分配地址   从一个范围中,指定整个范围,例如203.0.113.0/24。

  8.   
     

有关查找IP地址的信息,请参阅“开始之前”。

     
      
  1. 选择保存。
  2.   

最后,如果您的EC2实例的唯一目的是运行Jupyter Notebook,我建议您检出SageMaker hosted Jupyter Notebooks,因为它们可能会更方便您进行尝试(轻松访问托管的云Jupyter笔记本,但无需从终端进行SSH登录)。