Máy chủ web Apache không thể truy cập công khai


2

Tôi có một máy chủ web Apache (2.4.10) đang chạy trên máy tính để bàn có Debian (Jessie, 8).

Máy tính để bàn có một địa chỉ IP cục bộ tĩnh (192.168.x.x) và địa chỉ IP WAN (công khai) của tôi cũng đã được sửa bởi (82.x.x.x) bởi ISP của tôi. Một cổng chuyển tiếp cho cổng 80 đến máy tính để bàn này đã được thêm vào.

Tôi có thể truy cập trang web từ mạng LAN của mình mà không gặp sự cố, nhưng tôi không thể truy cập trang web bằng địa chỉ WAN, từ bên trong hoặc bên ngoài nhà của tôi: Tôi nhận được "Trang web không khả dụng - ERR_CONNECTION_REFUSED" từ Chrome. Lưu ý rằng tôi có thể mở bộ định tuyến của mình bằng địa chỉ WAN (trên một cổng khác).

Bản thân trang web không nhiều hơn "index.html" với Hello World.

Tôi đã thử bật tường lửa iptables, không hoạt động. Tôi đã thử một cổng khác hơn 80, không hoạt động. Tôi đã gọi bởi ISP và cổng 80 không bị chặn. Tôi đã googled mình điên. Có ai có bất kỳ đề xuất về làm thế nào để làm cho trang web có thể truy cập?


Bạn đã thử nmap hoặc netcat vào máy tính để bàn của bạn từ mạng WAN chưa? (có lẽ so sánh với cùng từ bên trong mạng LAN). Nghi ngờ đầu tiên của tôi là chuyển tiếp cổng không hoạt động vì một số lý do. Tôi có thể cố gắng chuyển tiếp 22 sang máy tính để bàn và ssh vào máy từ mạng WAN, chỉ để kiểm tra xem chuyển tiếp cổng có hoạt động không.
jhaagsma

Tôi cũng không thể SSH vào Desktop. Hóa ra tôi đã sử dụng một cài đặt sai trong cổng chuyển tiếp.
Roberto

Câu trả lời:


1

Tôi đã giải quyết nó!

Nhờ Moonpoint tôi nhận ra vấn đề nằm ở Chuyển tiếp cảng. Vì vậy, tôi đã xem xét lại và nhận thấy rằng đối với quy tắc cổng 80, "Giao diện WAN" được đặt thành "ADSL" (mặc định). Tôi không biết ý nghĩa của nó, vì vậy tôi không bao giờ thay đổi nó. Tôi đã thử các tùy chọn khác nhau và đặt nó thành "ETHWAN" đã giải quyết được vấn đề. Bây giờ tôi có thể truy cập trang web công khai và tôi đã thêm một DDNS không có ip cũng hoạt động.

EDIT: Bây giờ tôi đã học được giao diện ETHWAN WAN đơn giản là giao diện được thêm vào bộ định tuyến bởi ISP của tôi và là giao diện cho kết nối sợi glas.


0

Khi bạn nói rằng bạn đã cố gắng tắt tường lửa iptables nhưng không thành công, bạn có nghĩa là bạn đã tắt tường lửa iptables, nhưng vẫn không thể kết nối với máy chủ web từ địa chỉ IP bên ngoài hoặc bạn có nghĩa là bạn không thể tắt máy chủ dựa trên tường lửa iptables? Kiểm tra truy cập Apache và nhật ký lỗi cho trang web của bạn để xem liệu có bất kỳ nỗ lực truy cập hệ thống nào từ địa chỉ IP bên ngoài được ghi vào một trong các tệp đó không. Kiểm tra Apache của bạn /etc/httpd/conf/httpd.conf tập tin. Bạn có phần nào trong đó tương tự như bất cứ nơi nào trong tệp không:

<Directory /home/www/example>
      Order Deny,Allow
      Deny from all
      Allow from 192.168 127.0.0.1
 </Directory>

Trong ví dụ trên, truy cập từ tất cả trừ localhost địa chỉ, 127.0.0.1 và các hệ thống trên cùng một mạng LAN, tức là, 192.168.xxx.xxx, không được phép. Nếu bạn muốn làm cho máy chủ có thể truy cập được trên toàn thế giới, "Từ chối tất cả" sẽ không phù hợp.

Bạn có thể cách ly sự cố với hệ thống Debian mà bạn đang chạy máy chủ web Apache hoặc bộ định tuyến nơi bạn thiết lập chuyển tiếp cổng, miễn là không có các thiết bị mạng can thiệp, bằng cách sử dụng tcpdump lệnh trên hệ thống Debian Linux. Ra lệnh tcpdump -i any port 80 làm gốc. Điều đó sẽ khiến tcpdump chỉ tìm kiếm các kết nối đến cổng 80 trên bất kỳ giao diện nào, bỏ qua lưu lượng khác. Sau đó thử kết nối với máy chủ web từ một địa chỉ bên ngoài. Nếu tcpdump hiển thị lưu lượng truy cập đến cổng 80 đến hệ thống Linux thì chuyển tiếp cổng đang hoạt động chính xác. Nếu không có khả năng bạn gặp sự cố với chuyển tiếp cổng, vì vậy hãy kiểm tra kỹ xem bạn có chuyển tiếp cổng 80 đến địa chỉ IP chính xác cho máy chủ web không.


Cảm ơn bạn đã trả lời của bạn. Tôi có nghĩa là tôi nghĩ rằng tôi đã quản lý để tắt tường lửa (theo một tut) nhưng nó không giải quyết được vấn đề. httpd.conf Tôi không còn sử dụng trong Apache nữa. Mặc dù tôi có thể tìm thấy <Directory> bit trong Apache2.conf. Không có tuyên bố giống như "Từ chối tất cả": <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> Tôi đã thử dcpdump và thực sự, các cuộc gọi IP bên ngoài không được đăng ký. Tôi nhận được một bản cập nhật khi tôi mở máy chủ bình thường. Tuy nhiên, tôi chắc chắn tôi đang chuyển tiếp cổng 80.
Roberto
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.