Mengapa IIS dapat menerima lalu lintas HTTP 80, meskipun aturan firewall dinonaktifkan?

4

Menggunakan Windows7 Home Premium. Ini mesin pengembangan, tapi itu tidak masalah.

Saya telah menginstal IIS dan dapat menjelajah ke http: // situs web localhost dari mesin lokal. Situs web default diatur untuk menggunakan port 80.

Saya menambahkan situs web lain ke IIS, mengaturnya untuk menggunakan kolam aplikasi 32-bit, dan port 81. ketika saya mencoba menjelajah ke sana, melalui localhost, saya mendapatkan "Tidak ada koneksi yang dapat dibuat karena mesin target secara aktif menolaknya 127.0.0.1 : 81 "

ok, ini cukup mudah, bukan? Cukup aktifkan HTTP over port 81 di firewall Windows, bukan? Saya pikir untuk menggunakan aturan port-80 di firewall sebagai pola.

Yang mengejutkan saya, ada aturan port 80 di Windows Firewall, tetapi tidak diaktifkan . Ini adalah snip dari Windows Firewall MMC:

masukkan deskripsi gambar di sini

Namun saya dapat terhubung ke localhost melalui port 80.
dan saya tidak dapat terhubung ke localhost port 81.

MENGAPA?

Cheeso
sumber
Itu rapi / aneh. Apakah Anda memiliki banyak nics atau sesuatu? Saya telah menemukan IIS menjadi sangat gila ketika datang untuk mengikat ke port. Tetap saja, ini kelihatan seperti perilaku aneh. Mungkin Anda memiliki beberapa malware yang membahayakan firewall Anda?
James T Snell

Jawaban:

7

Saya cukup yakin firewall tidak memblokir / memeriksa alamat localhost / loopback (127.0.0.1) karena ini adalah komputer Anda. Jadi karena target dan sumbernya sama, tidak ada firewall yang benar-benar ada.

Ketika Anda mengaktifkan port 81, atau menonaktifkan firewall sepenuhnya dapatkah Anda mengakses situs ke-2? Jika tidak, Anda mungkin memiliki masalah konfigurasi IIS, dan bukan masalah firewall.

Ƭᴇcʜιᴇ007
sumber
Saya tidak mengaktifkan port 81 - saya tidak menambahkan aturan untuk port 81 - karena saya bingung mengapa port 80 bekerja tanpa aturan diaktifkan. ?? Jika port 80 berfungsi, mengapa port 81 TIDAK bekerja? Saya tidak ingin meretas firewall melakukan hal-hal yang tidak perlu atau tidak relevan. Saya ingin terlebih dahulu memahami cara kerja port 80 sebelum mencoba membuat port 81 berfungsi.
Cheeso
2
@Cheeso - Ya apa yang saya katakan adalah port 80 (sebenarnya, port apa saja) berfungsi terlepas dari aturan firewall, karena Anda menghubunginya melalui alamat LocalHost (127.0.0.1); permintaan tidak meninggalkan komputer Anda, sehingga firewall tidak melihat / memprosesnya.
Ƭᴇcʜιᴇ007
Saya mengerti. Itu yang saya pikir awalnya juga. Kecuali bahwa port 81 tidak berfungsi untuk localhost. Jadi ..... teori Anda bahwa tidak ada port yang terkena firewall jika diakses dari localhost - tidak dapat benar. Port 80 dan 81 berperilaku berbeda. Saya ingin tahu mengapa. Itu pertanyaan awal saya. Mungkin saya kehilangan sesuatu tentang model firewall. Apakah ada perbedaan antara "aktifkan port" dan "tambahkan aturan"? Apakah port 80 "diaktifkan" untuk akses lokal melalui sesuatu selain dari aturan yang dapat saya lihat, aturan yang jelas-jelas dinonaktifkan?
Cheeso
2
Anda benar: Itu adalah masalah konfigurasi IIS - yang berkaitan dengan situs 32 bit dan 64 bit dll. Terima kasih.
Cheeso
1

Urutkan aturan masuk pada Port Lokal dan lihat apakah aturan lain mengizinkan koneksi ke port 80. Misalnya, ada beberapa aturan dalam aturan default yang ditetapkan - "Windows Remote Management - Mode Kompatibilitas (HTTP-In)", yang juga memungkinkan koneksi port 80, dan itu diaktifkan secara default.

LVlad
sumber