Điểm:1

Đang kết nối phiên bản GCP VM với Google Domain

lá cờ bf

Tôi đang cố gắng kết nối một tên miền mà tôi nhận được từ Google Domains với phiên bản máy ảo Google Cloud Platform. Miền của tôi là .dev và khi tôi thử nslookup và theo dõi, chúng đã trỏ đến đúng địa chỉ IP. Truy cập trang web bằng IP này hoạt động tốt. Tôi chỉ không thể truy cập cùng một trang web thông qua tên miền.

Sau đây là cấu hình tôi đã làm:

Trong phiên bản VM của tôi (API máy tính):

  • Đã bật lưu lượng truy cập http và https
  • Có thẻ mạng http-server và https-server

Trong VPC newtorks API:

  • Làm cho IP bên ngoài của tôi tĩnh
  • Tường lửa tại tcp:443 cho phép lưu lượng truy cập (quy tắc cho phép-https mặc định)
  • Khi tôi thử chạy "netstat -tulpn | grep LISTEN", cổng 443 không được hiển thị trong danh sách. Máy chủ web có thể không nghe cổng 443

Trong API dịch vụ mạng:

  • Đã thêm bộ bản ghi cho A và CNAME khớp với DNS từ Google Domains và IP bên ngoài từ phiên bản VM

Trong Tên miền Google:

  • Đã sửa đổi các máy chủ định danh giống với các máy chủ định danh từ các giá trị Thiết lập công ty đăng ký API dịch vụ mạng (được thêm trong tab máy chủ định danh tùy chỉnh)

Ảnh chụp màn hình: Ảnh chụp màn hình tường lửa Ảnh chụp màn hình vùng mạng Thiết lập VM liên quan đến tường lửa

Hãy hiểu rằng tôi không có nền tảng về mạng. Cảm ơn bạn rất nhiều vì đã giúp đỡ!

John Hanley avatar
lá cờ cn
1) Bạn đã bật HTTPS trên máy chủ web chưa? 2) Bạn đã cài đặt chứng chỉ SSL chưa? 3) Các tên miền kết thúc bằng .dev chỉ có thể được truy cập bằng HTTPS bằng trình duyệt web.
Marky avatar
lá cờ bf
Có, https đã được bật. Tôi phải tạo chứng chỉ SSL tiếp theo, nhưng tôi không thể đăng ký tên miền của mình vì nó từ chối kết nối với IP của máy chủ của tôi.
John Hanley avatar
lá cờ cn
Mọi thứ trong ảnh chụp màn hình của bạn đều ổn. Điều đó để lại tường lửa nội bộ (UFW) hoặc máy chủ web. Chỉnh sửa câu hỏi của bạn và bao gồm các chi tiết về chúng. Ngoài ra, hãy xác minh rằng máy chủ web của bạn đang lắng nghe trên cổng 443 cho giao diện mạng: **netstat -tulpn | grep NGHE**
Marky avatar
lá cờ bf
Tôi đã kiểm tra xem máy chủ web có đang nghe trên cổng 443 hay không và chỉnh sửa câu hỏi ở trên cho phù hợp. Có vẻ như nó không. Tôi không chắc tìm tường lửa nội bộ ở đâu trong GCP. Một sự giúp đỡ nho nhỏ? Tất cả những gì tôi biết là các quy tắc tường lửa từ API mạng VPC.
John Hanley avatar
lá cờ cn
Không có trình nghe cho cổng 443 có nghĩa là máy chủ web không được định cấu hình để nghe các yêu cầu trên cổng 443.
Marky avatar
lá cờ bf
Cảm ơn. Tôi đã định cấu hình tệp conf máy chủ của mình và để nó nghe 443 thay vì 80. Ngoài ra, tôi đã thêm chứng chỉ SSL vào tệp đó. Sau những điều này, mọi thứ hoạt động tốt! Cảm ơn rất nhiều vì sự giúp đỡ của bạn @John Hanley!
John Hanley avatar
lá cờ cn
Bạn vẫn muốn máy chủ web lắng nghe trên cổng 80. Chuyển hướng kết nối cổng 80 sang cổng 443 (Chuyển hướng HTTPS).
Marky avatar
lá cờ bf
Ồ vâng, tôi quên đề cập đến. Tôi vẫn đang nghe cổng 80, tôi đặt nó trong một mệnh đề máy chủ riêng trong tệp conf.
Điểm:1
lá cờ bf

Trả lời dựa trên nhận xét của @John Hanley:

  1. Trang web có phần mở rộng tên miền .dev yêu cầu phải mở cổng 443. Kiểm tra xem máy chủ web có đang nghe cổng này không bằng cách chạy netstat -tulpn | grep NGHE.

  2. Vì (như đã nêu trong câu hỏi trên) port443 không xuất hiện trong danh sách, hãy định cấu hình máy chủ web của bạn để nghe cổng 443. Trong trường hợp của tôi, tôi đang sử dụng nginx làm máy chủ của mình nên tôi đã chỉnh sửa tệp trong /etc/nginx/nginx .conf để làm cho máy chủ của tôi lắng nghe cổng 443.

  3. Tại thời điểm này, cố gắng truy cập trang web sẽ trả về lỗi mà bạn không có chứng chỉ SSL. Vì vậy, tạo ra một. Tôi đã sử dụng certbot cho việc này để tạo khóa và chứng chỉ ssl.

  4. Quay lại tệp nginx.conf và bật ssl, thêm chứng chỉ ssl và khóa. Nó sẽ trông giống như thế này:

... người phục vụ{ server_name example.com www.example.com; nghe 443; ssl trên; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/bdcs.dev/privkey.pem; địa điểm / { ... } ... } ...
  1. Khởi động lại máy chủ (sudo systemctl khởi động lại nginx)

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.