Masalah # 1 - tipe jaringan VM
Ada 3 mode jaringan:
- NAT
- Tuan Rumah Saja
- Dijembatani
Detail tentang pengaturannya
Kapan harus menggunakan masing-masing?
- # 1 : Untuk pengembangan aplikasi Facebook / web yang ada di server lain
- # 2 : Jika Anda ingin membangun aplikasi Anda sendiri, dan mengujinya dari host VirtualBox (bukan hanya VM tamu)
- # 3 : Jika Anda ingin membangun aplikasi dan mengujinya dari sistem lain di LAN
Masalah # 2 - pemblokiran firewall?
Bergantung pada distro mana yang Anda gunakan, firewall mungkin memblokir browser web Anda dari mengakses instance Apache Anda. Ini masuk akal mengingat Anda dapat melakukan ping sistem, tetapi tidak mengaksesnya melalui port 80, yang merupakan port tempat Apache mendengarkan.
untuk sementara menonaktifkannya
Pada CentOS Anda menggunakan perintah ini untuk menonaktifkannya.
$ /etc/init.d/iptables stop
periksa apakah Apache mendengarkan
Anda juga dapat mengonfirmasi bahwa ia mendengarkan di port ini.
$ netstat -antp | grep :80 | head -1 | column -t
tcp 0 0 :::80 :::* LISTEN 3790/httpd
konfirmasi firewall tidak aktif
Firewall dapat dipastikan terbuka lebar.
$ iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Jika ini menyelesaikan masalah Anda, maka Anda dapat secara permanen menambahkan aturan yang memungkinkan lalu lintas masuk melalui port TCP 80.
menambahkan aturan untuk port TCP 80
$ /etc/init.d/iptables restart
$ iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
$ /etc/init.d/iptables save
CATATAN: Ini akan membuat aturan tetap ada di antara reboot.
firewall menerima port TCP 80
Sistem yang memiliki port 80 terbuka akan terlihat seperti ini:
$ iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:http
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:https
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:8834
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Masalah # 3 - Apache mendengarkan?
Dalam masalah di atas kita melihat bahwa Apache mendengarkan, tetapi kadang-kadang Apache tidak dikonfigurasi sehingga hanya mendengarkan pada 1 alamat IP, atau mendengarkan pada antarmuka jaringan yang berbeda. Perintah netstat
ini dapat digunakan untuk memeriksa ulang ini serta meninjau file konfigurasi Apache.
$ netstat -anpt | grep :80 | column -t
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1750/httpd
Ini menunjukkan bahwa Apache mendengarkan pada semua antarmuka (IP 0.0.0.0).
Saya tidak akan mengulangi apa jawaban @ Lekensteyn yang mencakup masalah khusus ini lebih detail di sini.
Referensi
:::80
, maka Apache hanya mendengarkan koneksi IPv6. Sudahkah Anda mencoba memeriksaListen
arahan Anda ?