Tôi đã thực hiện các bước sau:

  1. Đã tạo VPC (với một mạng con công cộng)
  2. Đã thêm một phiên bản EC2 vào VPC
  3. Được cấp phát một IP đàn hồi
  4. Đã liên kết IP đàn hồi với phiên bản
  5. Đã tạo một nhóm bảo mật và gán nó cho phiên bản
  6. Đã sửa đổi các quy tắc bảo mật để cho phép ICMP echo và TCP gửi đến trên cổng 22

Tôi đã làm tất cả những điều này và tôi vẫn không thể ping hoặc ssh vào phiên bản. Nếu tôi làm theo các bước tương tự trừ đi các bit VPC, tôi có thể thiết lập điều này mà không gặp vấn đề gì. Tôi đang thiếu bước nào?

answer

Để giao tiếp bên ngoài VPC, mỗi mạng con không mặc định cần một bảng định tuyến và một cổng internet được liên kết với nó (các mạng con mặc định có một cổng ngoài và một bảng định tuyến theo mặc định).

Tùy thuộc vào cách bạn đã tạo mạng con công cộng trong VPC, bạn có thể cần phải thêm chúng một cách rõ ràng. Thiết lập VPC của bạn có vẻ phù hợp với Kịch bản 1 - một đám mây riêng (VPC) với một mạng con công cộng duy nhất và một cổng Internet để cho phép giao tiếp qua Internet từ tài liệu AWS VPC.

Bạn sẽ cần thêm cổng internet vào VPC của mình và bên trong bảng định tuyến của mạng con Công cộng được gán0.0.0.0/0 (tuyến đường mặc định) để đi đến cổng internet được chỉ định. Có một minh họa đẹp về cấu trúc liên kết mạng chính xác bên trong tài liệu.

Ngoài ra, để biết thêm thông tin, bạn có thể kiểm tra tài liệu VPC Internet Gateway AWS. Thật không may, nó hơi lộn xộn và không rõ ràng.

Để biết thêm chi tiết về các sự cố kết nối, hãy xem thêm: Khắc phục sự cố khi kết nối với phiên bản của bạn .

Không chắc liệu đây có chính xác là trường hợp này hay không nhưng tôi vừa tạo VPC với Mạng con Công cộng và Riêng tư và nhận thấy rằng có một nhóm bảo mật mặc định có địa chỉ nguồn giống như tên nhóm bảo mật. Hiệu quả nó không có quyền truy cập. Phải thay đổi nguồn này thành Anywhere và nó bắt đầu hoạt động.

Tôi nhận thấy rằng (tôi nghĩ) bạn cần phải cẩn thận về vùng khả dụng mà phiên bản của bạn được tạo trong. Mạng con, Giao diện mạng và Phiên bản cần phải ở trong cùng một vùng khả dụng nếu không sẽ không có cách nào để kết nối với IP công cộng cho ví dụ đó.

Tôi có thể sai - nhưng tôi không nghĩ vậy, điều này đã khiến tôi mất 12 giờ làm việc để tìm ra.

Hy vọng điều này sẽ giúp người khác.

Bạn nên phân bổ một ENI và chỉ định IP đàn hồi cho ENI này. Ngoài ra, bạn nên chỉ định ENI này cho VPC của mình. Bảng tuyến đường cũng phải chính xác để chuyển tiếp các gói bên ngoài đến VPC của bạn một cách chính xác.

Vì SSH là giao thức đầy đủ trạng thái, bạn cần đảm bảo rằng bạn có quy tắc OUTBOUND sau trong ACL mạng của mình:

Rule #  Type            Protocol        Port Range      Destination     Allow / Deny
100     Custom TCP Rule TCP (6)         49152-65535     0.0.0.0/0       ALLOW