Apakah aman untuk melayani HTTP / HTTPS melalui port 8080/8443

9

Karena keterbatasan infrastruktur, salah satu solusi yang diusulkan untuk melayani layanan HTTP kepada dunia adalah menawarkannya melalui port 8080 dan 8443.

Kekhawatiran saya adalah bahwa beberapa pengguna mungkin tidak dapat mengakses layanan ini karena mereka tidak berjalan pada port standar, dan konten mungkin disaring oleh (misalnya) sebagai bagian dari kebijakan jaringan perusahaan.

Jadi ... seberapa besar kemungkinan pengguna dari internet pada umumnya tidak dapat mengakses layanan ini?

pemboros
sumber
tidak bisakah Anda mem-proxy alamat untuk port 80 & 443?
Froggiz
1
Kami menggunakan peran Web dan Pekerja dalam layanan Azure Cloud. Sejauh yang saya tahu, tidak mungkin untuk menunjuk VIP kedua di mesin yang berbeda kecuali kita beralih ke Azure VMs. Pilihan lain termasuk mengganti seluruh server web front-end dengan proxy, tetapi jelas menggunakan port yang berbeda akan menyelesaikan masalah ini dengan biaya lebih sedikit.
pemboros
maksud saya seperti itu: azure.microsoft.com/en-us/documentation/articles/…
Froggiz
2
Saya ingin membahas masalah yang sepertinya tidak ada di sini. Fakta bahwa Anda tidak dapat menggunakan port 80atau 443mungkin menyarankan Anda menjalankan pada server bersama. Jika demikian, ada kemungkinan bahwa pengguna lain dapat mengikat ke port tersebut jika Anda pernah berhenti bekerja . Pengguna itu kemudian dapat menyamar sebagai situs web Anda (meskipun SSL dapat membantu mengurangi ini).
Nathan Osman
@NathanOsman, saya pikir dia khawatir tentang akses pengguna dan firewall pengguna.
Pacerier

Jawaban:

7

Jaringan perusahaan biasanya akan default ke aturan seperti ini:

deny all; allow 80; allow 443; allow 21; allow 22; etc...

Jauh lebih mudah untuk mengkonfigurasi cara ini daripada secara eksplisit menolak 99% dari 65.535 port yang tersedia.

Dengan itu, saya mengambil alih portal yang menghadap klien yang menggunakan port non-standar karena keterbatasan jaringan; Saya tidak tahu detail NAT. Bagaimanapun, ini membuat tidak mungkin bagi sekitar 50% pengguna / pengunjung kami untuk mengakses situs dan kapan pun mereka akan memanggil kami untuk melaporkan masalah ini, kami harus berkoordinasi dengan TI mereka yang tidak ada untuk mencoba dan menerapkan aturan perbolehkan.


Saya tidak tahu detail keterbatasan infrastruktur Anda, tetapi saya membayangkan sesuatu yang lain berjalan pada 80/443

Jika ini masalahnya maka satu-satunya kesempatan Anda mungkin menggunakan proxy internal atau memutakhirkan peralihan ke sesuatu dengan kemampuan NAT yang lebih maju yang dapat merutekan permintaan dengan tepat.


TL; DR

Jangan gunakan port non-standar untuk layanan publik yang sudah memiliki port standar.

MonkeyZeus
sumber
1
"Jauh lebih mudah untuk mengkonfigurasi cara ini daripada secara eksplisit menolak 99% dari 65.535 port yang tersedia." - bahkan jika mereka secara eksplisit menolak 99% dari port itu akan memiliki efek yang sama.
user253751
Kami akhirnya menggunakan server web utama untuk meminta proksi ke layanan yang ditawarkan pada port lain. Karena layanan lain perlu meningkatkan kekuatan pemrosesan tambahan daripada karena mereka mencapai batas jaringan, dan ukuran permintaan dan respons relatif rendah, pengaturan ini berfungsi dengan sangat baik dengan situs web beban-utama yang seimbang dengan mudah menyerap biaya proxy.
pemboros
@Spender Saya senang mendengar kalian bisa menyelesaikannya tanpa menggunakan port non-standar yang menghadap klien :)
MonkeyZeus
6

Sangat mungkin mereka akan diblokir, terutama di jaringan perusahaan atau di wifi publik. Lebih kecil kemungkinannya pada koneksi internet rumah biasa.

Itu pasti akan diblokir di jaringan kerja saya.

Selain itu, orang harus ingat untuk mengetik nomor port untuk sampai ke situs Anda, yang merupakan sakit kepala tambahan yang tidak ingin Anda tangani. Untuk situs internal atau pribadi, ini bukan masalah besar, tetapi jika ini untuk masyarakat umum, Anda akan lebih sukses menggunakan port standar.

Hibah
sumber
Layanan yang dipermasalahkan tidak pernah diketikkan ke dalam peramban ... melainkan diarahkan dari sumber daya yang dilayani melalui port normal. Namun, tampaknya kekhawatiran saya tentang keandalan pendekatan saya dibenarkan dengan baik.
pemboros
dapatkah Anda menjelaskan mengapa itu akan diblokir? saya menggunakan port 800 untuk waktu yang lama tanpa masalah bahkan dengan google SEO tools dan referensi ..
Froggiz
1
Salah satu pekerjaan saya adalah menjalankan situs web yang mengindeks aliran streamingcast, dan merupakan keluhan umum bahwa beberapa pengguna di balik jaringan perusahaan tidak dapat mendengarkan streaming yang berjalan di port yang tidak standar. Namun, 8080 dan 8443 tampaknya agak istimewa, tetapi mungkin tidak cukup istimewa. Saya akan mengatakan bahwa menjalankan layanan pada 800 sangat berisiko karena jatuh di bawah port "terkenal" yang jauh lebih mungkin diblokir.
pemboros
Solusi mudah adalah membiarkan server Anda berjalan di port 8080/8443, dan di firewall, NAT / forward ports 80/443 ke 8080/8443.
SnakeDoc
1
@SnakeDoc Setuju, saya membahas opsi proxy dalam jawaban saya :-)
MonkeyZeus
2

Tidak sulit untuk membuat peramban Anda menjadi hit, katakanlah http://example.com:8080/index.html , tetapi ketika Anda berbicara tentang kebijakan perusahaan yang memblokir porta non standar yang tampaknya sangat sulit.

Jika Anda memiliki semacam pengaturan penyetelan beban, Anda masih dapat mengatur aplikasi Anda untuk berjalan pada port standar dan meminta port penyeimbang muatan maju ke port aneh secara internal. Bahkan jika Anda tidak memiliki load balancing, saya yakin Anda dapat menemukan cara untuk memajukan ke port internal yang tidak standar.

Secara internal, pengguna dapat mengakses pada port aneh (jika bukan bagian dari kebijakan perusahaan Anda untuk diblokir), secara eksternal mereka melihat http://example.com .

Ada banyak cara untuk melakukan ini, Anda harus sedikit kreatif tergantung pada jenis hambatan yang Anda temui. Itu selalu merupakan tantangan!

Brett Salmiery
sumber