Linux

安全訪問在私有子網中啟動的 Amazon EC2 上的 Web 界面

  • November 30, 2016

我已經看到如何通過 NAT 伺服器 SSH 到 VPC 私有子網中的 ec2 實例,並且能夠通過具有公共 IP 的 NAT 實例在私有子網中的 EC2 中進行 SSH。

假設我想在私有子網中的 EC2 實例中安裝帶有 Web 界面(如 Zeppelin 或 Jupyter)的應用程序,我將如何配置安全訪問並通過筆記型電腦中的瀏覽器連接到 Web 服務?我對這個領域相當陌生,那麼啟用此功能的正確方法是什麼?

您可以將 ssh 與埠轉發一起使用。

假設您的 EC2 實例的私有 IP 是 10.1.1.1 並且 Web 界面偵聽埠 80,您的 NAT 主機有一個公共 IP 198.51.100.13,您可以連結兩個連續轉發:

從您的筆記型電腦:

ssh -L 8080:127.0.0.1:8080 YOUR_USERNAME@198.51.100.13

從您的 NAT 主機中新打開的 shell:

ssh -L 8080:10.1.1.1:80 YOUR_USERNAME@10.1.1.1

現在您可以在筆記型電腦中打開瀏覽器並將其指向:

http://127.0.0.1:8080

實際上,您可以配置您的 ssh 客戶端,例如自動使用中間框。在您的筆記型電腦上,打開~/.ssh/config並告訴 ssh 在前往以下位置時通過 NAT 框10.1.1.1

Host 10.1.1.1
ProxyCommand ssh -W %h:%p YOUR_NAT_HOSTS_IP

現在您可以直接從您的筆記型電腦進行 ssh,並且 ssh 將首先透明地打開與 NAT 框的連接,然後將您傳遞給 EC2 實例。

引用自:https://serverfault.com/questions/817911