2015-01-02 15 views
5

Tôi đã tạo một phiên bản ubuntu mới trong AWS, tôi có thể kết nối ssh với nó thành công. Tuy nhiên, khi tôi cố cài đặt các gói bằng lệnh này, nó sẽ không hoạt động:Phiên bản AWS ubuntu không thể kết nối với thế giới

sudo apt-get install apache2 
... 
... 
0% [Connecting to ap-southeast-2.ec2.archive.ubuntu.com (91.189.91.23)]^[email protected]:/etc$ 

Điều này không bao giờ tiến lên!

Tôi đã thử ping google.com.au, cũng không có phản hồi.

Đây là cấu hình VPC của AWS:

Network ACL : 

Outbound: 
Rule # Type  Protocol Port Range Destination Allow/Deny 
100 ALL Traffic ALL  ALL  0.0.0.0/0 ALLOW 
* ALL Traffic ALL  ALL  0.0.0.0/0 DENY 

Inbound : 
Rule # Type  Protocol Port Range Source Allow/Deny 
10 HTTP (80) TCP (6) 80 0.0.0.0/0 ALLOW 
120 HTTPS (443) TCP (6) 443 0.0.0.0/0 ALLOW 
140 SSH (22) TCP (6) 22 0.0.0.0/0 ALLOW 
* ALL Traffic ALL ALL 0.0.0.0/0 DENY 

an ninh thiết lập Group outbound:

Type Protocol Port Range Destination 
ALL  Traffic  ALL  ALL  0.0.0.0/0 

Routing thiết lập bảng:

Destination  Target  Status Propagated 
10.1.0.0/24 local  Active No 
0.0.0.0/0 igw-cfe30caa Active No 

Điều gì có thể sai ở đây?

EDIT: nslookup & lệnh dig hoạt động tốt!

Cảm ơn!

+1

Âm thanh giống như DNS bị hỏng cho bạn. Hãy thử sử dụng 'dig google.com.au' để xem DNS có thể thực hiện tra cứu địa chỉ hay không. – maurice

+0

Bạn có khởi động phiên bản ec2 với hình ảnh AMI của riêng bạn hoặc amazon ami không? Dường như hình ảnh của bạn có vấn đề. – BMW

+0

Trên thực tế, hãy đào google.com.au hoạt động tốt! cũng nslookup lệnh hoạt động. Tôi đang sử dụng ami của AWS, chỉ cần sử dụng thuật sĩ – askanaan

Trả lời

12

Mạng trong nước của bạn ACL chỉ cho phép lưu lượng truy cập được gửi đến gửi đến Cổng TCP 22, 80 và 443. Nó không cho phép phản hồi cho yêu cầu gửi của bạn, trên các cổng tạm thời của bạn.

$ cat /proc/sys/net/ipv4/ip_local_port_range 
32768 61000 

Bạn cần một quy tắc trong ACL mạng để cho phép TCP 32768 qua 61000 ... hoặc, tốt hơn, không sử dụng ACL mạng trong nước ở tất cả - đặt nó trở lại mặc định, cho phép tất cả .

Bạn gần như chắc chắn không cần sử dụng ACL mạng trừ khi bạn có cấu hình mạng đặc biệt phức tạp. Các quy tắc gửi đến trong nhóm bảo mật thường đủ để kiểm soát quyền truy cập vào một cá thể. Các quy tắc nhóm bảo mật trong nước từ chối theo mặc định, và không giống như các ACL mạng, đó là các bộ lọc gói không trạng thái, các nhóm bảo mật là stateful, TCP session-aware.

http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Security.html#VPC_Security_Comparison

Chú ý: không thêm quy tắc cảng phù du đã thảo luận ở trên để các rule gửi đến nhóm bảo mật. Vì các nhóm bảo mật là stateful, bạn chỉ muốn "cho phép" lưu lượng theo hướng mà bạn muốn các phiên TCP được bắt đầu. Câu trả lời cho các phiên TCP được thiết lập được phép tự động theo các quy tắc nhóm bảo mật, nhưng không được quy tắc ACL mạng vì chúng được triển khai khác nhau.

http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html

+0

Rất cám ơn! Tôi đã xóa quyền truy cập từ nhóm bảo mật và tôi vẫn có thể truy cập tài nguyên internet – askanaan

1
* ALL Traffic ALL  ALL  0.0.0.0/0 DENY - Wrong 

* ALL Traffic ALL  ALL  0.0.0.0/0 Allow - Right 

Xin cho phép Outbound, nếu bạn muốn kết nối đến các máy chủ bên ngoài như google.com hoặc thậm chí muốn update- sudo apt-get update

Bạn có thể cho phép người sử dụng outbound AWS front-end goto Nhóm bảo mật -> Outbound

Đảm bảo bạn chọn nhóm phù hợp cho trường hợp AWS của bạn

Các vấn đề liên quan